sbsv2/raptor/test/unit_suite/raptor_meta_unit.py
changeset 630 31ef8a13d4f4
parent 625 a1925fb7753a
child 674 37ee82a83d43
equal deleted inserted replaced
629:541af5ee3ed9 630:31ef8a13d4f4
   136 							     'PLATMACROS' : self.__platmacros_winscw,
   136 							     'PLATMACROS' : self.__platmacros_winscw,
   137 								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
   137 								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
   138 								 'METADEPS' : [] 
   138 								 'METADEPS' : [] 
   139 							   }
   139 							   }
   140 
   140 
   141 		self.X86GCC          = { 'PLATFORM': 'X86GCC',
   141 		self.X86GCC          = { 'PLATFORM': 'X86',
   142 							     'EPOCROOT': self.__epocroot,
   142 							     'EPOCROOT': self.__epocroot,
   143 							     'VARIANT_HRH': self.variant_hrh,
   143 							     'VARIANT_HRH': self.variant_hrh,
   144 							     'SYSTEMINCLUDE' : '',
   144 							     'SYSTEMINCLUDE' : '',
   145 							     'id': 2,
   145 							     'id': 2,
   146 							     'key': '2222222222222222',
   146 							     'key': '2222222222222222',
   219 		
   219 		
   220 		bp = bldInfObject.getBuildPlatforms(self.defaultPlatform)
   220 		bp = bldInfObject.getBuildPlatforms(self.defaultPlatform)
   221 		self.assertEquals(bp, aExpectedBldInfPlatforms)
   221 		self.assertEquals(bp, aExpectedBldInfPlatforms)
   222 
   222 
   223 		buildableBldInfBuildPlatforms = raptor_meta.getBuildableBldInfBuildPlatforms(bp,
   223 		buildableBldInfBuildPlatforms = raptor_meta.getBuildableBldInfBuildPlatforms(bp,
   224 				'ARMV5 ARMV7 WINSCW',
   224 				'ARMV5 ARMV7 WINSCW X86',
   225 				'ARMV5 ARMV5SMP ARMV7 WINSCW',
   225 				'ARMV5 ARMV5SMP ARMV7 WINSCW X86',
   226 				'ARMV5 ARMV7 WINSCW')
   226 				'ARMV5 ARMV7 WINSCW X86')
   227 		
   227 		
   228 		for expectedBuildablePlatform in aExpectedBuildablePlatforms:
   228 		for expectedBuildablePlatform in aExpectedBuildablePlatforms:
   229 			self.assertTrue(expectedBuildablePlatform in buildableBldInfBuildPlatforms)
   229 			self.assertTrue(expectedBuildablePlatform in buildableBldInfBuildPlatforms)
   230 			
   230 			
   231 		self.assertEqual(len(aExpectedBuildablePlatforms),
   231 		self.assertEqual(len(aExpectedBuildablePlatforms),
   234 	
   234 	
   235 	def testBldInfPlatformDeduction(self):
   235 	def testBldInfPlatformDeduction(self):
   236 		bldInfTestRoot = self.__testRoot.Append('metadata/project/bld.infs')
   236 		bldInfTestRoot = self.__testRoot.Append('metadata/project/bld.infs')
   237 				
   237 				
   238 		self.__testBuildPlatforms(bldInfTestRoot, 'no_prj_platforms.inf', 
   238 		self.__testBuildPlatforms(bldInfTestRoot, 'no_prj_platforms.inf', 
   239 								  [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86GCC'])
   239 								  [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86'])
   240 		self.__testBuildPlatforms(bldInfTestRoot, 'no_plats.inf', 
   240 		self.__testBuildPlatforms(bldInfTestRoot, 'no_plats.inf', 
   241 								  [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86GCC'])
   241 								  [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86'])
   242 		self.__testBuildPlatforms(bldInfTestRoot, 'default_plats.inf', 
   242 		self.__testBuildPlatforms(bldInfTestRoot, 'default_plats.inf', 
   243 								  ['DEFAULT'], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86GCC'])
   243 								  ['DEFAULT'], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86'])
   244 		self.__testBuildPlatforms(bldInfTestRoot, 'default_plats_minus_plat.inf', 
   244 		self.__testBuildPlatforms(bldInfTestRoot, 'default_plats_minus_plat.inf', 
   245 								  ['DEFAULT', '-WINSCW'], ['ARMV7', 'ARMV5', 'GCCXML', 'X86GCC'])
   245 								  ['DEFAULT', '-WINSCW'], ['ARMV7', 'ARMV5', 'GCCXML', 'X86'])
   246 		self.__testBuildPlatforms(bldInfTestRoot, 'single_plat.inf', 
   246 		self.__testBuildPlatforms(bldInfTestRoot, 'single_plat.inf', 
   247 								  ['ARMV5'], ['ARMV5', 'GCCXML', 'X86GCC'])
   247 								  ['ARMV5'], ['ARMV5', 'GCCXML'])
   248 		self.__testBuildPlatforms(bldInfTestRoot, 'multiple_plats.inf', 
   248 		self.__testBuildPlatforms(bldInfTestRoot, 'multiple_plats.inf', 
   249 								  ['ARMV5', 'WINSCW', 'TOOLS'], ['ARMV5', 'WINSCW', 'TOOLS', 'GCCXML', 'X86GCC'])
   249 								  ['ARMV5', 'WINSCW', 'TOOLS', 'X86'], ['ARMV5', 'WINSCW', 'TOOLS', 'GCCXML', 'X86'])
   250 		return
   250 		return
   251 	
   251 	
   252 	def __testBldInfTestCode(self, aTestRoot, aBldInf, aActual, aExpected):
   252 	def __testBldInfTestCode(self, aTestRoot, aBldInf, aActual, aExpected):
   253 		loop_number = 0
   253 		loop_number = 0
   254 		for actual in aActual:
   254 		for actual in aActual:
   728 			releaseDir = testPlat['PLATFORM'].lower()
   728 			releaseDir = testPlat['PLATFORM'].lower()
   729 			
   729 			
   730 			# Some configurations support both a primary location and a secondary location for .def files
   730 			# Some configurations support both a primary location and a secondary location for .def files
   731 			# In these cases, if the primary location .def file doesn't exist the secondary is used.
   731 			# In these cases, if the primary location .def file doesn't exist the secondary is used.
   732 			primaryDefFileDir = "eabi"
   732 			primaryDefFileDir = "eabi"
   733 			secondaryDefFileLoc = ""
   733 			secondaryDefFileDir = ""
   734 			if testPlat['PLATFORM'] == "WINSCW":
   734 			if testPlat['PLATFORM'] == "WINSCW":
   735 				primaryDefFileDir = "bwins"
   735 				primaryDefFileDir = "bwins"
   736 			elif testPlat['PLATFORM'] == "X86GCC":
   736 			elif testPlat['PLATFORM'] == "X86":
   737 				primaryDefFileDir = "bx86gcc"
   737 				primaryDefFileDir = "bx86gcc"
   738 				secondaryDefFileLoc = self.__OSRoot+'/test/eabi'
   738 				secondaryDefFileDir = "eabi"
   739 											
   739 											
   740 			defFileTests.extend([
   740 			defFileTests.extend([
   741 				DefFileTest(
   741 				DefFileTest(
   742 					self.__OSRoot+'/test/'+primaryDefFileDir+'/targetu.def',
   742 					self.__OSRoot+'/test/'+primaryDefFileDir+'/targetu.def',
   743 					secondaryDefFileLoc+'/targetu.def',
   743 					self.__OSRoot+'/test/'+secondaryDefFileDir+'/targetu.def',
   744 					'/test/component/mmpfile.mmp',
   744 					'/test/component/mmpfile.mmp',
   745 					'',
   745 					'',
   746 					'target.exe',
   746 					'target.exe',
   747 					False,
   747 					False,
   748 					testPlat),
   748 					testPlat),
   749 				DefFileTest(
   749 				DefFileTest(
   750 					self.__OSRoot+'/test/'+primaryDefFileDir+'/target.def',
   750 					self.__OSRoot+'/test/'+primaryDefFileDir+'/target.def',
   751 					secondaryDefFileLoc+'/target.def',
   751 					self.__OSRoot+'/test/'+secondaryDefFileDir+'/target.def',
   752 					'/test/component/mmpfile.mmp',
   752 					'/test/component/mmpfile.mmp',
   753 					'',
   753 					'',
   754 					'target.exe',
   754 					'target.exe',
   755 					True,
   755 					True,
   756 					testPlat),
   756 					testPlat),
   757 				DefFileTest(
   757 				DefFileTest(
   758 					self.__OSRoot+'/test/'+primaryDefFileDir+'/targetu.DEF',
   758 					self.__OSRoot+'/test/'+primaryDefFileDir+'/targetu.DEF',
   759 					secondaryDefFileLoc+'/targetu.DEF',
   759 					self.__OSRoot+'/test/'+secondaryDefFileDir+'/targetu.DEF',
   760 					'/test/component/mmpfile.mmp',
   760 					'/test/component/mmpfile.mmp',
   761 					'target.DEF',
   761 					'target.DEF',
   762 					'target.exe',
   762 					'target.exe',
   763 					False,
   763 					False,
   764 					testPlat),
   764 					testPlat),
   765 				DefFileTest(
   765 				DefFileTest(
   766 					self.__OSRoot+'/test/'+primaryDefFileDir+'/target2.DEF',
   766 					self.__OSRoot+'/test/'+primaryDefFileDir+'/target2.DEF',
   767 					secondaryDefFileLoc+'/target2.DEF',
   767 					self.__OSRoot+'/test/'+secondaryDefFileDir+'/target2.DEF',
   768 					'/test/component/mmpfile.mmp',
   768 					'/test/component/mmpfile.mmp',
   769 					'target2.DEF',
   769 					'target2.DEF',
   770 					'target.exe',
   770 					'target.exe',
   771 					True,
   771 					True,
   772 					testPlat),
   772 					testPlat),
   773 				DefFileTest(
   773 				DefFileTest(
   774 					self.__OSRoot+'/test/component/target2u.DEF',
   774 					self.__OSRoot+'/test/component/target2u.DEF',
   775 					secondaryDefFileLoc+'/target2u.DEF',
   775 					self.__OSRoot+'/test/'+secondaryDefFileDir+'/target2u.DEF',
   776 					'/test/component/mmpfile.mmp',
   776 					'/test/component/mmpfile.mmp',
   777 					'./target2.DEF',
   777 					'./target2.DEF',
   778 					'target.exe',
   778 					'target.exe',
   779 					False,
   779 					False,
   780 					testPlat),
   780 					testPlat),
   781 				DefFileTest(
   781 				DefFileTest(
   782 					self.__OSRoot+'/test/component/target2.DEF',
   782 					self.__OSRoot+'/test/component/target2.DEF',
   783 					secondaryDefFileLoc+'/target2.DEF',
   783 					self.__OSRoot+'/test/'+secondaryDefFileDir+'/target2.DEF',
   784 					'/test/component/mmpfile.mmp',
   784 					'/test/component/mmpfile.mmp',
   785 					'./target2.DEF',
   785 					'./target2.DEF',
   786 					'target.exe',
   786 					'target.exe',
   787 					True,
   787 					True,
   788 					testPlat),
   788 					testPlat),
   789 				DefFileTest(
   789 				DefFileTest(
   790 					self.__OSRoot+'/test/component/'+primaryDefFileDir+'/target3u.DEF',
   790 					self.__OSRoot+'/test/component/'+primaryDefFileDir+'/target3u.DEF',
   791 					secondaryDefFileLoc+'/target3u.DEF',
   791 					self.__OSRoot+'/test/component/'+secondaryDefFileDir+'/target3u.DEF',
   792 					'/test/component/mmpfile.mmp',
   792 					'/test/component/mmpfile.mmp',
   793 					'./~/target3.DEF',
   793 					'./~/target3.DEF',
   794 					'target.exe',
   794 					'target.exe',
   795 					False,
   795 					False,
   796 					testPlat),
   796 					testPlat),
   797 				DefFileTest(
   797 				DefFileTest(
   798 					epocroot+'/epoc32/include/def/'+primaryDefFileDir+'/targetu.def',
   798 					epocroot+'/epoc32/include/def/'+primaryDefFileDir+'/targetu.def',
   799 					secondaryDefFileLoc+'/targetu.def',
   799 					epocroot+'/epoc32/include/def/'+secondaryDefFileDir+'/targetu.def',
   800 					'/test/component/mmpfile.mmp',
   800 					'/test/component/mmpfile.mmp',
   801 					'/epoc32/include/def/~/target.def',
   801 					'/epoc32/include/def/~/target.def',
   802 					'target.exe',
   802 					'target.exe',
   803 					False,
   803 					False,
   804 					testPlat),
   804 					testPlat),
   805 				DefFileTest(
   805 				DefFileTest(
   806 					epocroot+'/epoc32/release/'+releaseDir+'/target.def',
   806 					epocroot+'/epoc32/release/'+releaseDir+'/target.def',
   807 					secondaryDefFileLoc+'/target.def',
   807 					epocroot+'/epoc32/release/'+secondaryDefFileDir+'/target.def',
   808 					'/test/component/mmpfile.mmp',
   808 					'/test/component/mmpfile.mmp',
   809 					'/epoc32/release/'+releaseDir+'/target.def',
   809 					'/epoc32/release/'+releaseDir+'/target.def',
   810 					'target.exe',
   810 					'target.exe',
   811 					True,
   811 					True,
   812 					testPlat),
   812 					testPlat),
   813 				DefFileTest(
   813 				DefFileTest(
   814 					self.__OSRoot+'/deffiles/targetu.def',
   814 					self.__OSRoot+'/deffiles/targetu.def',
   815 					secondaryDefFileLoc+'/targetu.def',
   815 					self.__OSRoot+'/'+secondaryDefFileDir+'/targetu.def',
   816 					'/test/component/mmpfile.mmp',
   816 					'/test/component/mmpfile.mmp',
   817 					'/deffiles/target.def',
   817 					'/deffiles/target.def',
   818 					'target.exe',
   818 					'target.exe',
   819 					False,
   819 					False,
   820 					testPlat)
   820 					testPlat)