Ejemplo n.º 1
0
  def testWriteItemDefinitionGroup(self):
    """Tests the _WriteItemDefinitionGroup function."""
    project_configuration = resources.VSProjectConfiguration()

    file_writer = writers.VS2012ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteItemDefinitionGroup(project_configuration)

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    expected_output_data = (
        b'  <ItemDefinitionGroup '
        b'Condition="\'$(Configuration)|$(Platform)\'==\'|\'">\r\n'
        b'    <ClCompile>\r\n'
        b'      <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)'
        b'</AdditionalIncludeDirectories>\r\n'
        b'      <PreprocessorDefinitions>%(PreprocessorDefinitions)'
        b'</PreprocessorDefinitions>\r\n'
        b'      <RuntimeLibrary></RuntimeLibrary>\r\n'
        b'      <WarningLevel></WarningLevel>\r\n'
        b'    </ClCompile>\r\n'
        b'  </ItemDefinitionGroup>\r\n')
    self.assertEqual(output_data, expected_output_data)
Ejemplo n.º 2
0
  def testWriteConfigurationTool(self):
    """Tests the _WriteConfigurationTool function."""
    project_configuration = resources.VSProjectConfiguration()

    file_writer = writers.VS2008ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteConfigurationTool(
        project_configuration, 'VCCLCompilerTool',
        file_writer._TOOL_COMPILER_CONFIGURATION_OPTIONS)

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    expected_output_data = (
        b'\t\t\t<Tool\r\n'
        b'\t\t\t\tName="VCCLCompilerTool"\r\n'
        b'\t\t\t\tAdditionalIncludeDirectories=""\r\n'
        b'\t\t\t\tPreprocessorDefinitions=""\r\n'
        b'\t\t\t\tRuntimeLibrary=""\r\n'
        b'\t\t\t\tWarningLevel=""\r\n'
        b'\t\t\t\tCompileAs=""\r\n'
        b'\t\t\t/>\r\n')
    self.assertEqual(output_data, expected_output_data)
Ejemplo n.º 3
0
  def testParseConfigurationOption(self):
    """Tests the _ParseConfigurationOption function."""
    project_configuration = resources.VSProjectConfiguration()

    file_reader = readers.VS2008ProjectFileReader()

    line = 'Optimization="0"'
    file_reader._ParseConfigurationOption(
        project_configuration, 'Optimization', 'optimization', line)
    self.assertEqual(project_configuration.optimization, '0')
Ejemplo n.º 4
0
    def testGetPlatformToolset(self):
        """Tests the GetPlatformToolset function."""
        project_configuration = resources.VSProjectConfiguration()
        project_configuration.platform = 'x64'

        platform_toolset = project_configuration.GetPlatformToolset(2010)
        self.assertEqual(platform_toolset, 'Windows7.1SDK')

        platform_toolset = project_configuration.GetPlatformToolset(2012)
        self.assertEqual(platform_toolset, 'v110')
Ejemplo n.º 5
0
    def testPrecompiledHeaderString(self):
        """Tests the precompiled_header_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.precompiled_header = ''
        self.assertEqual(project_configuration.precompiled_header_string, '')

        # TODO: do something with precompiled_header.

        project_configuration.precompiled_header = '-1'
        self.assertEqual(project_configuration.precompiled_header_string, '')
Ejemplo n.º 6
0
    def testCharacterSetString(self):
        """Tests the character_set_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.character_set = ''
        self.assertEqual(project_configuration.character_set_string, '')

        project_configuration.character_set = '1'
        self.assertEqual(project_configuration.character_set_string, 'Unicode')

        project_configuration.character_set = '-1'
        self.assertEqual(project_configuration.character_set_string, '')
Ejemplo n.º 7
0
    def testLinkIncrementalString(self):
        """Tests the link_incremental_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.link_incremental = ''
        self.assertEqual(project_configuration.link_incremental_string, '')

        project_configuration.link_incremental = '1'
        self.assertEqual(project_configuration.link_incremental_string,
                         'false')

        project_configuration.link_incremental = '-1'
        self.assertEqual(project_configuration.link_incremental_string, '')
Ejemplo n.º 8
0
    def testOptimizeReferencesString(self):
        """Tests the optimize_references_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.optimize_references = ''
        self.assertEqual(project_configuration.optimize_references_string, '')

        project_configuration.optimize_references = '2'
        self.assertEqual(project_configuration.optimize_references_string,
                         'true')

        project_configuration.optimize_references = '-1'
        self.assertEqual(project_configuration.optimize_references_string, '')
Ejemplo n.º 9
0
  def testWriteConfiguration(self):
    """Tests the _WriteConfiguration function."""
    project_configuration = resources.VSProjectConfiguration()

    file_writer = writers.VS2008ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteConfiguration(project_configuration)

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    self.assertTrue(output_data.startswith(b'\t\t<Configuration\r\n'))
    self.assertTrue(output_data.endswith(b'\t\t</Configuration>\r\n'))
Ejemplo n.º 10
0
    def testOptimizationString(self):
        """Tests the optimization_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.optimization = ''
        self.assertEqual(project_configuration.optimization_string, '')

        project_configuration.optimization = '0'
        self.assertEqual(project_configuration.optimization_string, 'Disabled')

        project_configuration.optimization = '2'
        self.assertEqual(project_configuration.optimization_string, 'MaxSpeed')

        project_configuration.optimization = '-1'
        self.assertEqual(project_configuration.optimization_string, '')
Ejemplo n.º 11
0
    def testWarningLevelString(self):
        """Tests the warning_level_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.warning_level = ''
        self.assertEqual(project_configuration.warning_level_string, '')

        project_configuration.warning_level = '3'
        self.assertEqual(project_configuration.warning_level_string, 'Level3')

        project_configuration.warning_level = '4'
        self.assertEqual(project_configuration.warning_level_string, 'Level4')

        project_configuration.warning_level = '-1'
        self.assertEqual(project_configuration.warning_level_string, '')
Ejemplo n.º 12
0
    def testSubSystemString(self):
        """Tests the sub_system_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.sub_system = ''
        self.assertEqual(project_configuration.sub_system_string, '')

        project_configuration.sub_system = '0'
        self.assertEqual(project_configuration.sub_system_string, 'NotSet')

        project_configuration.sub_system = '1'
        self.assertEqual(project_configuration.sub_system_string, 'Console')

        project_configuration.sub_system = '-1'
        self.assertEqual(project_configuration.sub_system_string, '')
Ejemplo n.º 13
0
    def testEnableComdatFoldingString(self):
        """Tests the enable_comdat_folding_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.enable_comdat_folding = ''
        self.assertEqual(project_configuration.enable_comdat_folding_string,
                         '')

        project_configuration.enable_comdat_folding = '2'
        self.assertEqual(project_configuration.enable_comdat_folding_string,
                         'true')

        project_configuration.enable_comdat_folding = '-1'
        self.assertEqual(project_configuration.enable_comdat_folding_string,
                         '')
Ejemplo n.º 14
0
    def testDebugInformationFormatString(self):
        """Tests the debug_information_format_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.debug_information_format = ''
        self.assertEqual(project_configuration.debug_information_format_string,
                         '')

        project_configuration.debug_information_format = '3'
        self.assertEqual(project_configuration.debug_information_format_string,
                         'ProgramDatabase')

        project_configuration.debug_information_format = '-1'
        self.assertEqual(project_configuration.debug_information_format_string,
                         '')
Ejemplo n.º 15
0
    def testCompilerAsString(self):
        """Tests the compile_as_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.compile_as = ''
        self.assertEqual(project_configuration.compile_as_string, '')

        project_configuration.compile_as = '1'
        self.assertEqual(project_configuration.compile_as_string, 'CompileAsC')

        project_configuration.compile_as = '2'
        self.assertEqual(project_configuration.compile_as_string,
                         'CompileAsCpp')

        project_configuration.compile_as = '-1'
        self.assertEqual(project_configuration.compile_as_string, '')
Ejemplo n.º 16
0
  def testWriteConfigurationToolFooter(self):
    """Tests the _WriteConfigurationToolFooter function."""
    project_configuration = resources.VSProjectConfiguration()
    project_configuration.compile_as = '1'

    file_writer = writers.VS2008ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteConfigurationToolFooter()

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    expected_output_data = b'\t\t\t/>\r\n'
    self.assertEqual(output_data, expected_output_data)
Ejemplo n.º 17
0
    def testTargetMachineString(self):
        """Tests the target_machine_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.target_machine = ''
        self.assertEqual(project_configuration.target_machine_string, '')

        project_configuration.target_machine = '1'
        self.assertEqual(project_configuration.target_machine_string,
                         'MachineX86')

        project_configuration.target_machine = '2'
        self.assertEqual(project_configuration.target_machine_string,
                         'MachineX64')

        project_configuration.target_machine = '-1'
        self.assertEqual(project_configuration.target_machine_string, '')
Ejemplo n.º 18
0
    def testRuntimeLibrarianString(self):
        """Tests the runtime_librarian_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.runtime_library = ''
        self.assertEqual(project_configuration.runtime_librarian_string, '')

        project_configuration.runtime_library = '2'
        self.assertEqual(project_configuration.runtime_librarian_string,
                         'MultiThreadedDLL')

        project_configuration.runtime_library = '3'
        self.assertEqual(project_configuration.runtime_librarian_string,
                         'MultiThreadedDebugDLL')

        project_configuration.runtime_library = '-1'
        self.assertEqual(project_configuration.runtime_librarian_string, '')
Ejemplo n.º 19
0
  def testWriteLinkerSection(self):
    """Tests the _WriteLinkerSection function."""
    project_configuration = resources.VSProjectConfiguration()

    file_writer = writers.VS2012ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteLinkerSection(project_configuration)

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    expected_output_data = (
        b'    <Link>\r\n'
        b'    </Link>\r\n')
    self.assertEqual(output_data, expected_output_data)
Ejemplo n.º 20
0
    def testBasicRuntimeChecksString(self):
        """Tests the basic_runtime_checks_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.basic_runtime_checks = ''
        self.assertEqual(project_configuration.basic_runtime_checks_string, '')

        project_configuration.basic_runtime_checks = '0'
        self.assertEqual(project_configuration.basic_runtime_checks_string,
                         'Default')

        project_configuration.basic_runtime_checks = '3'
        self.assertEqual(project_configuration.basic_runtime_checks_string,
                         'EnableFastChecks')

        project_configuration.basic_runtime_checks = '-1'
        self.assertEqual(project_configuration.basic_runtime_checks_string, '')
Ejemplo n.º 21
0
  def testWriteItemDefinitionGroupHeader(self):
    """Tests the _WriteItemDefinitionGroupHeader function."""
    project_configuration = resources.VSProjectConfiguration()

    file_writer = writers.VS2010ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteItemDefinitionGroupHeader(project_configuration)

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    expected_output_data = (
        b'  <ItemDefinitionGroup'
        b' Condition="\'$(Configuration)|$(Platform)\'==\'|\'">\r\n')
    self.assertEqual(output_data, expected_output_data)
Ejemplo n.º 22
0
  def testWriteConfigurationToolHeader(self):
    """Tests the _WriteConfigurationToolHeader function."""
    project_configuration = resources.VSProjectConfiguration()
    project_configuration.compile_as = '1'

    file_writer = writers.VS2008ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteConfigurationToolHeader('VCLinkerTool')

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    expected_output_data = (
        b'\t\t\t<Tool\r\n'
        b'\t\t\t\tName="VCLinkerTool"\r\n')
    self.assertEqual(output_data, expected_output_data)
Ejemplo n.º 23
0
    def testWholeProgramOptimizationString(self):
        """Tests the whole_program_optimization_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.whole_program_optimization = ''
        self.assertEqual(
            project_configuration.whole_program_optimization_string, '')

        project_configuration.whole_program_optimization = '0'
        self.assertEqual(
            project_configuration.whole_program_optimization_string, 'false')

        project_configuration.whole_program_optimization = '1'
        self.assertEqual(
            project_configuration.whole_program_optimization_string, 'true')

        project_configuration.whole_program_optimization = '-1'
        self.assertEqual(
            project_configuration.whole_program_optimization_string, '')
Ejemplo n.º 24
0
  def testWriteConfigurationLinkerTool(self):
    """Tests the _WriteConfigurationLinkerTool function."""
    project_configuration = resources.VSProjectConfiguration()

    file_writer = writers.VS2008ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteConfigurationLinkerTool(project_configuration)

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    expected_output_data = (
        b'\t\t\t<Tool\r\n'
        b'\t\t\t\tName="VCLinkerTool"\r\n'
        b'\t\t\t\tAdditionalLibraryDirectories="&quot;$(OutDir)&quot;"\r\n'
        b'\t\t\t/>\r\n')
    self.assertEqual(output_data, expected_output_data)
Ejemplo n.º 25
0
    def testDataExecutionPreventionString(self):
        """Tests the data_execution_prevention_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.data_execution_prevention = ''
        self.assertEqual(
            project_configuration.data_execution_prevention_string, '')

        project_configuration.data_execution_prevention = '1'
        self.assertEqual(
            project_configuration.data_execution_prevention_string, 'false')

        project_configuration.data_execution_prevention = '2'
        self.assertEqual(
            project_configuration.data_execution_prevention_string, 'true')

        project_configuration.data_execution_prevention = '-1'
        self.assertEqual(
            project_configuration.data_execution_prevention_string, '')
Ejemplo n.º 26
0
  def testWriteConfigurationPropertyGroup(self):
    """Tests the _WriteConfigurationPropertyGroup function."""
    project_configuration = resources.VSProjectConfiguration()

    file_writer = writers.VS2010ProjectFileWriter()

    file_writer._file = io.BytesIO()

    file_writer._WriteConfigurationPropertyGroup(project_configuration)

    file_writer._file.seek(0, os.SEEK_SET)
    output_data = file_writer._file.read()

    expected_output_data = (
        b'  <PropertyGroup Condition="\'$(Configuration)|$(Platform)\'==\'|\'"'
        b' Label="Configuration">\r\n'
        b'    <ConfigurationType></ConfigurationType>\r\n'
        b'  </PropertyGroup>\r\n')
    self.assertEqual(output_data, expected_output_data)
Ejemplo n.º 27
0
    def testRandomizedBaseAddressString(self):
        """Tests the randomized_base_address_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.randomized_base_address = ''
        self.assertEqual(project_configuration.randomized_base_address_string,
                         '')

        project_configuration.randomized_base_address = '1'
        self.assertEqual(project_configuration.randomized_base_address_string,
                         'false')

        project_configuration.randomized_base_address = '2'
        self.assertEqual(project_configuration.randomized_base_address_string,
                         'true')

        project_configuration.randomized_base_address = '-1'
        self.assertEqual(project_configuration.randomized_base_address_string,
                         '')
Ejemplo n.º 28
0
    def testOutputTypeString(self):
        """Tests the output_type_string property."""
        project_configuration = resources.VSProjectConfiguration()

        project_configuration.output_type = ''
        self.assertEqual(project_configuration.output_type_string, '')

        project_configuration.output_type = '1'
        self.assertEqual(project_configuration.output_type_string,
                         'Application')

        project_configuration.output_type = '2'
        self.assertEqual(project_configuration.output_type_string,
                         'DynamicLibrary')

        project_configuration.output_type = '4'
        self.assertEqual(project_configuration.output_type_string,
                         'StaticLibrary')

        project_configuration.output_type = '-1'
        self.assertEqual(project_configuration.output_type_string, '')
Ejemplo n.º 29
0
 def testInitialize(self):
     """Tests the __init__ function."""
     project_configuration = resources.VSProjectConfiguration()
     self.assertIsNotNone(project_configuration)
Ejemplo n.º 30
0
    def testCopyToX64(self):
        """Tests the CopyToX64 function."""
        project_configuration = resources.VSProjectConfiguration()

        copy_project_configuration = project_configuration.CopyToX64()
        self.assertIsNotNone(copy_project_configuration)