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)
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)
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')
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')
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, '')
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, '')
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, '')
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, '')
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'))
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, '')
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, '')
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, '')
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, '')
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, '')
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, '')
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)
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, '')
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, '')
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)
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, '')
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)
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)
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, '')
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=""$(OutDir)""\r\n' b'\t\t\t/>\r\n') self.assertEqual(output_data, expected_output_data)
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, '')
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)
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, '')
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, '')
def testInitialize(self): """Tests the __init__ function.""" project_configuration = resources.VSProjectConfiguration() self.assertIsNotNone(project_configuration)
def testCopyToX64(self): """Tests the CopyToX64 function.""" project_configuration = resources.VSProjectConfiguration() copy_project_configuration = project_configuration.CopyToX64() self.assertIsNotNone(copy_project_configuration)