sbsv2/raptor/test/unit_suite/raptor_meta_unit.py
author mikek
Mon, 17 May 2010 20:20:32 +0100
changeset 13 c327db0664bb
child 18 de5b887c98f7
permissions -rw-r--r--
Upgrading Raptor from 2.10 to 2.13
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     1
#
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     2
# Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     3
# All rights reserved.
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     4
# This component and the accompanying materials are made available
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     5
# under the terms of the License "Eclipse Public License v1.0"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     6
# which accompanies this distribution, and is available
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     7
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     8
#
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
     9
# Initial Contributors:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    10
# Nokia Corporation - initial contribution.
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    11
#
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    12
# Contributors:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    13
#
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    14
# Description: 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    15
# raptor_meta_unit module
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    16
# This module tests the classes forming the Raptor bld.inf and .mmp parsing support
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    17
#
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    18
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    19
import raptor
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    20
import raptor_meta
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    21
import raptor_utilities
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    22
import raptor_data
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    23
import mmpparser
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    24
import unittest
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    25
import generic_path
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    26
import os
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    27
import sys
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    28
import re
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    29
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    30
class TestRaptorMeta(unittest.TestCase):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    31
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    32
	def setUp(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    33
		self.raptor = raptor.Raptor()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    34
		self.__testRoot = generic_path.Path(os.environ[raptor.env], "test").Absolute()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    35
		self.__makefilePathTestRoot = self.__testRoot
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    36
		self.__epocroot = self.__testRoot
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    37
		self.__variant_cfg_root = self.__testRoot.Append('metadata/config')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    38
		self.__variant_cfg = self.__variant_cfg_root.Append('test_cfg.cfg')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    39
		self.__platmacros_armv5 = "ARMCC EPOC32 MARM EABI ARMCC_2 ARMCC_2_2 GENERIC_MARM MARM_ARMV5"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    40
		self.__platmacros_armv6 = "ARMCC EPOC32 MARM EABI ARMCC_2 ARMCC_2_2 GENERIC_MARM MARM_ARMV5 ARMV6"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    41
		self.__platmacros_armv7 = "ARMCC EPOC32 MARM EABI ARMCC_2 ARMCC_2_2 GENERIC_MARM MARM_ARMV5 ARMV7"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    42
		self.__platmacros_winscw = "CW32 WINS WINSCW"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    43
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    44
		self.variant_hrh = self.__testRoot.Append('metadata/include/test_hrh.hrh')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    45
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    46
		self.__OSRoot = ""
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    47
		if raptor_utilities.getOSFileSystem() == "cygwin":
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    48
			self.__OSRoot = str(self.__makefilePathTestRoot)[:2]
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    49
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    50
		# we need some sort of generic platform for preprocessing
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    51
		self.defaultPlatform = { 'PLATFORM': 'generic',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    52
							     'EPOCROOT': self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    53
							     'VARIANT_HRH': self.variant_hrh,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    54
							     'SYSTEMINCLUDE' : '',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    55
							     'id': 0,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    56
							     'key': '0000000000000000',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    57
							     'key_md5': '0000000000000000',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    58
							     'ISFEATUREVARIANT' : False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    59
							     'PLATMACROS' : self.__platmacros_armv5,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    60
								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    61
								 'METADEPS' : [] 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    62
							   }
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    63
		# For testing purposes, the ARMV5 platform is flagged here as feature variant.
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    64
		# In metadata processing terms, this means that the location of the HRH file
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    65
		# is not automatically added to the SYSTEMINCLUDE path, and so is specified
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    66
		# directly.
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    67
		self.ARMV5           = { 'PLATFORM': 'ARMV5',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    68
							     'EPOCROOT': self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    69
							     'VARIANT_HRH': self.variant_hrh,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    70
							     'SYSTEMINCLUDE' : str(self.variant_hrh.Dir()),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    71
							     'id': 1,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    72
							     'key': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    73
							     'key_md5': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    74
							     'ISFEATUREVARIANT' : True,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    75
							     'PLATMACROS' : self.__platmacros_armv5,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    76
								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    77
								 'METADEPS' : [] 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    78
							   }
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    79
		self.ARMV5SMP        = { 'PLATFORM': 'ARMV5SMP',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    80
							     'EPOCROOT': self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    81
							     'VARIANT_HRH': self.variant_hrh,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    82
							     'SYSTEMINCLUDE' : str(self.variant_hrh.Dir()),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    83
							     'id': 1,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    84
							     'key': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    85
							     'key_md5': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    86
							     'ISFEATUREVARIANT' : False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    87
							     'PLATMACROS' : self.__platmacros_armv5,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    88
								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    89
								 'METADEPS' : [] 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    90
							   }
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    91
		self.ARMV6           = { 'PLATFORM': 'ARMV6',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    92
							     'EPOCROOT': self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    93
							     'VARIANT_HRH': self.variant_hrh,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    94
							     'SYSTEMINCLUDE' : str(self.variant_hrh.Dir()),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    95
							     'id': 1,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    96
							     'key': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    97
							     'key_md5': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    98
							     'ISFEATUREVARIANT' : False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
    99
							     'PLATMACROS' : self.__platmacros_armv6,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   100
								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   101
								 'METADEPS' : [] 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   102
							   }
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   103
		self.ARMV7           = { 'PLATFORM': 'ARMV7',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   104
							     'EPOCROOT': self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   105
							     'VARIANT_HRH': self.variant_hrh,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   106
							     'SYSTEMINCLUDE' : str(self.variant_hrh.Dir()),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   107
							     'id': 1,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   108
							     'key': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   109
							     'key_md5': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   110
							     'ISFEATUREVARIANT' : False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   111
							     'PLATMACROS' : self.__platmacros_armv7,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   112
								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   113
								 'METADEPS' : [] 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   114
							   }
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   115
		self.ARMV7SMP         = { 'PLATFORM': 'ARMV7SMP',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   116
							     'EPOCROOT': self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   117
							     'VARIANT_HRH': self.variant_hrh,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   118
							     'SYSTEMINCLUDE' : str(self.variant_hrh.Dir()),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   119
							     'id': 1,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   120
							     'key': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   121
							     'key_md5': '1111111111111111',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   122
							     'ISFEATUREVARIANT' : False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   123
							     'PLATMACROS' : self.__platmacros_armv7,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   124
								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   125
								 'METADEPS' : [] 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   126
							   }
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   127
		self.WINSCW          = { 'PLATFORM': 'WINSCW',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   128
							     'EPOCROOT': self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   129
							     'VARIANT_HRH': self.variant_hrh,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   130
							     'SYSTEMINCLUDE' : '',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   131
							     'id': 2,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   132
							     'key': '2222222222222222',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   133
							     'key_md5': '2222222222222222',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   134
							     'ISFEATUREVARIANT' : False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   135
							     'PLATMACROS' : self.__platmacros_winscw,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   136
								 'SBS_BUILD_DIR' : str(self.__epocroot) + "/epoc32/build",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   137
								 'METADEPS' : [] 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   138
							   }
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   139
				
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   140
		self.testPlats = [self.ARMV5, self.ARMV5SMP, self.ARMV6, self.ARMV7, self.ARMV7SMP, self.WINSCW]
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   141
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   142
		# Get the version of CPP that we are using and hope it's correct
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   143
		# since there is no tool check.
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   144
		if os.environ.has_key('SBS_GNUCPP'):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   145
			self.__gnucpp = os.environ['SBS_GNUCPP']
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   146
		else: 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   147
			self.__gnucpp = "cpp" 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   148
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   149
	def testPreProcessor(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   150
		# Just test for correct behaviour on failure, other tests excercise correct behaviour on success
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   151
		preProcessor = raptor_meta.PreProcessor('cpp_that_does_not_exist', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   152
											    '-undef -nostdinc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   153
											    '-I', '-D', '-include',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   154
											    self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   155
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   156
		try:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   157
			 preProcessor.preprocess()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   158
		except Exception, e:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   159
			self.assertTrue(isinstance(e, raptor_meta.MetaDataError))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   160
			self.assertTrue(re.match('^Preprocessor exception', e.Text))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   161
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   162
	def testConfigParsing(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   163
		# .cfg file specified, but does not exist		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   164
		try:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   165
			configDetails = raptor_meta.getVariantCfgDetail(self.__epocroot, 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   166
														    self.__variant_cfg_root.Append("missing"))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   167
		except Exception, e:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   168
			self.assertTrue(isinstance(e, raptor_meta.MetaDataError))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   169
			self.assertTrue(re.match('^Could not read variant configuration file.*$', e.Text))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   170
			
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   171
		# No .hrh file specified
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   172
		try:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   173
			configDetails = raptor_meta.getVariantCfgDetail(self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   174
														    self.__variant_cfg_root.Append("empty_cfg.cfg"))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   175
		except Exception, e:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   176
			self.assertTrue(isinstance(e, raptor_meta.MetaDataError))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   177
			self.assertTrue(re.match('No variant file specified in .*', e.Text))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   178
					
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   179
		# .hrh file does not exist
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   180
		try:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   181
			configDetails = raptor_meta.getVariantCfgDetail(self.__epocroot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   182
														    self.__variant_cfg_root.Append("invalid_cfg.cfg"))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   183
		except Exception, e:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   184
			self.assertTrue(isinstance(e, raptor_meta.MetaDataError))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   185
			self.assertTrue(re.match('Variant file .* does not exist', e.Text))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   186
				
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   187
		# Valid .cfg file
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   188
		configDetails = raptor_meta.getVariantCfgDetail(self.__epocroot, 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   189
													    self.__variant_cfg)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   190
		self.failUnless(configDetails)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   191
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   192
		found_variant_hrh = str(configDetails.get('VARIANT_HRH'))	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   193
		expected_variant_hrh = str(self.variant_hrh)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   194
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   195
		self.assertEqual(found_variant_hrh, expected_variant_hrh)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   196
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   197
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   198
	def __testBuildPlatforms(self, aRootBldInfLocation, aBldInfFile, 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   199
							 aExpectedBldInfPlatforms, aExpectedBuildablePlatforms):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   200
		bldInfFile = aRootBldInfLocation.Append(aBldInfFile)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   201
		self.failUnless(bldInfFile)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   202
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   203
		depfiles=[]
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   204
		bldInfObject = raptor_meta.BldInfFile(bldInfFile, self.__gnucpp, depfiles=depfiles, log=self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   205
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   206
		bp = bldInfObject.getBuildPlatforms(self.defaultPlatform)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   207
		self.assertEquals(bp, aExpectedBldInfPlatforms)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   208
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   209
		buildableBldInfBuildPlatforms = raptor_meta.getBuildableBldInfBuildPlatforms(bp,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   210
				'ARMV5 ARMV7 WINSCW',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   211
				'ARMV5 ARMV5SMP ARMV7 WINSCW',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   212
				'ARMV5 ARMV7 WINSCW')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   213
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   214
		for expectedBuildablePlatform in aExpectedBuildablePlatforms:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   215
			self.assertTrue(expectedBuildablePlatform in buildableBldInfBuildPlatforms)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   216
			
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   217
		self.assertEqual(len(aExpectedBuildablePlatforms),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   218
						 len(buildableBldInfBuildPlatforms))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   219
		return
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   220
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   221
	def testBldInfPlatformDeduction(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   222
		bldInfTestRoot = self.__testRoot.Append('metadata/project/bld.infs')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   223
				
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   224
		self.__testBuildPlatforms(bldInfTestRoot, 'no_prj_platforms.inf', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   225
								  [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   226
		self.__testBuildPlatforms(bldInfTestRoot, 'no_plats.inf', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   227
								  [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   228
		self.__testBuildPlatforms(bldInfTestRoot, 'default_plats.inf', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   229
								  ['DEFAULT'], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   230
		self.__testBuildPlatforms(bldInfTestRoot, 'default_plats_minus_plat.inf', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   231
								  ['DEFAULT', '-WINSCW'], ['ARMV7', 'ARMV5', 'GCCXML'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   232
		self.__testBuildPlatforms(bldInfTestRoot, 'single_plat.inf', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   233
								  ['ARMV5'], ['ARMV5', 'GCCXML'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   234
		self.__testBuildPlatforms(bldInfTestRoot, 'multiple_plats.inf', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   235
								  ['ARMV5', 'WINSCW', 'TOOLS'], ['ARMV5', 'WINSCW', 'TOOLS', 'GCCXML'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   236
		return
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   237
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   238
	def __testBldInfTestCode(self, aTestRoot, aBldInf, aActual, aExpected):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   239
		loop_number = 0
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   240
		for actual in aActual:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   241
			self.assertEquals(actual, aExpected[loop_number])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   242
			loop_number += 1
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   243
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   244
	def testBldInfTestType(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   245
		bldInfTestRoot = self.__testRoot.Append('metadata/project/mmps/test_mmps')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   246
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   247
		bldInfFile = bldInfTestRoot.Append('test_mmps.inf')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   248
		depfiles = []
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   249
		bldInfObject = raptor_meta.BldInfFile(bldInfFile, self.__gnucpp, depfiles=depfiles, log=self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   250
		testArmv5Platform = self.ARMV5
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   251
		testArmv5Platform["TESTCODE"] = True
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   252
		bldInfObject.getRomTestType(testArmv5Platform)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   253
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   254
		self.__testBldInfTestCode(bldInfTestRoot, 'test_mmps.inf',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   255
				[bldInfObject.testManual, bldInfObject.testAuto], [1, 1])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   256
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   257
	def __testExport(self, aExportObject, aSource, aDestination, aAction):			
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   258
		self.assertEquals(aExportObject.getSource(), aSource)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   259
		self.assertEqualsOrContainsPath(aExportObject.getDestination(), aDestination)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   260
		self.assertEquals(aExportObject.getAction(), aAction)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   261
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   262
	def assertEqualsOrContainsPath(self, aRequirement, aCandidate):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   263
		# If aRequirement is a list, which it might well be, we should
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   264
		# assert that aPathString is contained in it
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   265
		# If aRequirement not a list, it will be a string, and 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   266
		# we should assert equality of the strings
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   267
		# On windows we shouldn't care about the case of the drive letter.
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   268
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   269
		if isinstance(aRequirement, list):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   270
			pathsequal = False
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   271
			for r in aRequirement:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   272
				pathsequal = path_compare_notdrivelettercase(r,aCandidate) or pathsequal
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   273
			self.assertTrue(pathsequal)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   274
		else:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   275
			self.assertTrue(path_compare_notdrivelettercase(aRequirement,aCandidate))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   276
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   277
	def testBldInfExports(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   278
		bldInfTestRoot = self.__testRoot.Append('metadata/project/bld.infs')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   279
		bldInfMakefilePathTestRoot = str(self.__makefilePathTestRoot) + '/metadata/project/'
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   280
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   281
		depfiles = []
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   282
		bldInfObject = raptor_meta.BldInfFile(bldInfTestRoot.Append('exports.inf'), 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   283
											  self.__gnucpp, depfiles=depfiles, log=self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   284
					
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   285
		exports = bldInfObject.getExports(self.defaultPlatform)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   286
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   287
		# export1.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   288
		self.__testExport(exports[0], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   289
						  bldInfMakefilePathTestRoot+'bld.infs/export1.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   290
						  '$(EPOCROOT)/epoc32/include/export1.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   291
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   292
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   293
		# export2.h				export_test\export2.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   294
		self.__testExport(exports[1], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   295
						  bldInfMakefilePathTestRoot+'bld.infs/export2.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   296
						  '$(EPOCROOT)/epoc32/include/export_test/export2.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   297
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   298
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   299
		# export3.h				..\export_test\export3.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   300
		self.__testExport(exports[2], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   301
						  bldInfMakefilePathTestRoot+'bld.infs/export3.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   302
						  '$(EPOCROOT)/epoc32/export_test/export3.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   303
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   304
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   305
		# export4.h				\export_test_abs\export4.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   306
		self.__testExport(exports[3], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   307
						  bldInfMakefilePathTestRoot+'bld.infs/export4.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   308
						  self.__OSRoot+'/export_test_abs/export4.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   309
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   310
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   311
		# export5.h				\epoc32\export_test_abs\export5.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   312
		self.__testExport(exports[4], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   313
						  bldInfMakefilePathTestRoot+'bld.infs/export5.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   314
						  '$(EPOCROOT)/epoc32/export_test_abs/export5.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   315
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   316
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   317
		# export6.h				|..\export_test_rel\export6.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   318
		self.__testExport(exports[5], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   319
						  bldInfMakefilePathTestRoot+'bld.infs/export6.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   320
						  bldInfMakefilePathTestRoot+'export_test_rel/export6.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   321
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   322
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   323
		# export6.h				|\export_test_rel\export7.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   324
		self.__testExport(exports[6], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   325
						  bldInfMakefilePathTestRoot+'bld.infs/export7.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   326
						  bldInfMakefilePathTestRoot+'bld.infs/export_test_rel/export7.h',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   327
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   328
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   329
		# export7.h				|export_test_rel\export8.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   330
		self.__testExport(exports[7], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   331
						  bldInfMakefilePathTestRoot+'bld.infs/export8.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   332
						  bldInfMakefilePathTestRoot+'bld.infs/export_test_rel/export8.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   333
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   334
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   335
		# :zip export9.zip
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   336
		self.__testExport(exports[8], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   337
						  bldInfMakefilePathTestRoot+'bld.infs/export9.zip', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   338
						  '$(EPOCROOT)', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   339
						  'unzip')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   340
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   341
		# :zip export10.zip		export_test
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   342
		self.__testExport(exports[9], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   343
						  bldInfMakefilePathTestRoot+'bld.infs/export10.zip', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   344
						  '$(EPOCROOT)/export_test', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   345
						  'unzip')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   346
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   347
		# :zip export11.zip		/export_test
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   348
		self.__testExport(exports[10], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   349
						  bldInfMakefilePathTestRoot+'bld.infs/export11.zip', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   350
						  self.__OSRoot+'/export_test', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   351
						  'unzip')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   352
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   353
		# :zip export12.zip		/epoc32/export_test
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   354
		self.__testExport(exports[11], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   355
						  bldInfMakefilePathTestRoot+'bld.infs/export12.zip', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   356
						  '$(EPOCROOT)/epoc32/export_test', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   357
						  'unzip')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   358
 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   359
		# export13.rsc			z:/resource/app/export13.rsc
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   360
		# Once for each of the three locations for emulated drives
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   361
		# epoc32/data/z/resource/app/export13.rsc *and* in
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   362
		# epoc32/release/winscw/udeb/z/resource/app/export13.rsc *and* in
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   363
		# epoc32/release/winscw/urel/z/resource/app/export13.rsc
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   364
		self.__testExport(exports[12], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   365
						  bldInfMakefilePathTestRoot+'bld.infs/export13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   366
						  '$(EPOCROOT)/epoc32/data/z/resource/app/export13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   367
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   368
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   369
		self.__testExport(exports[12], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   370
						  bldInfMakefilePathTestRoot+'bld.infs/export13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   371
						  '$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/app/export13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   372
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   373
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   374
		self.__testExport(exports[12], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   375
						  bldInfMakefilePathTestRoot+'bld.infs/export13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   376
						  '$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/app/export13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   377
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   378
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   379
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   380
		testExports = bldInfObject.getTestExports(self.defaultPlatform)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   381
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   382
		# testexport1.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   383
		self.__testExport(testExports[0], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   384
						  bldInfMakefilePathTestRoot+'bld.infs/testexport1.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   385
						  bldInfMakefilePathTestRoot+'bld.infs/testexport1.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   386
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   387
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   388
		# testexport2.h				export_test_rel\testexport2.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   389
		self.__testExport(testExports[1], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   390
						  bldInfMakefilePathTestRoot+'bld.infs/testexport2.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   391
						  bldInfMakefilePathTestRoot+'bld.infs/export_test_rel/testexport2.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   392
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   393
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   394
		# testexport3.h				..\export_test_rel\testexport3.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   395
		self.__testExport(testExports[2], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   396
						  bldInfMakefilePathTestRoot+'bld.infs/testexport3.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   397
						  bldInfMakefilePathTestRoot+'export_test_rel/testexport3.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   398
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   399
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   400
		# testexport4.h				\export_test_abs\testexport4.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   401
		self.__testExport(testExports[3], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   402
						  bldInfMakefilePathTestRoot+'bld.infs/testexport4.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   403
						  self.__OSRoot+'/export_test_abs/testexport4.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   404
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   405
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   406
		# testexport5.h				\epoc32\export_test_abs\testexport5.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   407
		self.__testExport(testExports[4], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   408
						  bldInfMakefilePathTestRoot+'bld.infs/testexport5.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   409
						  '$(EPOCROOT)/epoc32/export_test_abs/testexport5.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   410
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   411
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   412
		# testexport6.h				|..\export_test_rel\testexport6.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   413
		self.__testExport(testExports[5], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   414
						  bldInfMakefilePathTestRoot+'bld.infs/testexport6.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   415
						  bldInfMakefilePathTestRoot+'export_test_rel/testexport6.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   416
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   417
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   418
		# testexport7.h				|\export_test_rel\testexport7.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   419
		self.__testExport(testExports[6], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   420
						  bldInfMakefilePathTestRoot+'bld.infs/testexport7.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   421
						  bldInfMakefilePathTestRoot+'bld.infs/export_test_rel/testexport7.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   422
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   423
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   424
		# testexport8.h				|export_test_rel\testexport8.h
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   425
		self.__testExport(testExports[7], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   426
						  bldInfMakefilePathTestRoot+'bld.infs/testexport8.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   427
						  bldInfMakefilePathTestRoot+'bld.infs/export_test_rel/testexport8.h', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   428
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   429
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   430
		# :zip testexport9.zip
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   431
		self.__testExport(testExports[8], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   432
						  bldInfMakefilePathTestRoot+'bld.infs/testexport9.zip', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   433
						  '$(EPOCROOT)', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   434
						  'unzip')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   435
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   436
		# :zip testexport10.zip		export_test
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   437
		self.__testExport(testExports[9], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   438
						  bldInfMakefilePathTestRoot+'bld.infs/testexport10.zip', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   439
						  '$(EPOCROOT)/export_test', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   440
						  'unzip')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   441
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   442
		# :zip testexport11.zip		/export_test
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   443
		self.__testExport(testExports[10], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   444
						  bldInfMakefilePathTestRoot+'bld.infs/testexport11.zip', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   445
						  self.__OSRoot+'/export_test', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   446
						  'unzip')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   447
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   448
		# :zip testexport12.zip		/epoc32/export_test
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   449
		self.__testExport(testExports[11], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   450
						  bldInfMakefilePathTestRoot+'bld.infs/testexport12.zip', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   451
						  '$(EPOCROOT)/epoc32/export_test', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   452
						  'unzip')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   453
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   454
		# testexport13.rsc		z:/resource/app/testexport13.rsc
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   455
		# Once for each of the three locations for emulated drives
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   456
		# epoc32/data/z/resource/app/testexport13.rsc *and* in
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   457
		# epoc32/release/winscw/udeb/z/resource/app/testexport13.rsc *and* in
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   458
		# epoc32/release/winscw/urel/z/resource/app/testexport13.rsc
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   459
		self.__testExport(testExports[12], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   460
						  bldInfMakefilePathTestRoot+'bld.infs/testexport13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   461
						  '$(EPOCROOT)/epoc32/data/z/resource/app/testexport13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   462
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   463
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   464
		self.__testExport(testExports[12], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   465
						  bldInfMakefilePathTestRoot+'bld.infs/testexport13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   466
						  '$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/app/testexport13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   467
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   468
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   469
		self.__testExport(testExports[12], 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   470
						  bldInfMakefilePathTestRoot+'bld.infs/testexport13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   471
						  '$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/app/testexport13.rsc', 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   472
						  'copy')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   473
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   474
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   475
	def __testExtension(self, aExtensionObject, aMakefile, aTestParameters):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   476
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   477
		templateExtensionRoot = ""
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   478
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   479
		if not aMakefile.startswith("$("):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   480
			templateExtensionRoot = '$(MAKEFILE_TEMPLATES)/'
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   481
			
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   482
		self.assertEquals(aExtensionObject.getMakefile(), templateExtensionRoot+aMakefile)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   483
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   484
		testOptions = aExtensionObject.getOptions()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   485
		testVariables = aExtensionObject.getStandardVariables()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   486
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   487
		for testParameter in aTestParameters.keys():
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   488
			if (testParameter.startswith("STDVAR_")):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   489
				stdvar = testParameter.replace("STDVAR_", "")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   490
				stdvalue = aTestParameters.get(testParameter)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   491
				self.assertTrue(testVariables.has_key(stdvar))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   492
				self.assertEquals(testVariables.get(stdvar), aTestParameters.get(testParameter))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   493
			else:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   494
				self.assertTrue(testOptions.has_key(testParameter))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   495
				self.assertEquals(testOptions.get(testParameter), aTestParameters.get(testParameter))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   496
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   497
	def testBldInfExtensions(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   498
		bldInfTestRoot = self.__testRoot.Append('metadata/project/bld.infs')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   499
		bldInfMakefilePathTestRoot = str(self.__makefilePathTestRoot)+'/metadata/project/bld.infs'			
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   500
		depfiles = []
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   501
		bldInfObject = raptor_meta.BldInfFile(bldInfTestRoot.Append('extensions.inf'),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   502
											  self.__gnucpp, depfiles=depfiles, log=self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   503
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   504
		extensions = bldInfObject.getExtensions(self.ARMV5)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   505
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   506
		self.__testExtension(extensions[0],
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   507
							'test/dummyextension1.mk',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   508
							{'TARGET':'dummyoutput1.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   509
							'SOURCES':'dummysource11.cpp dummysource12.cpp dummysource13.cpp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   510
							'DEPENDENCIES':'dummylib11.lib dummylib12.lib',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   511
							'TOOL':'dummytool1.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   512
							'OPTION11':'option11value',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   513
							'OPTION12':'$(MAKE_VAR)',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   514
							'STDVAR_TO_ROOT':"",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   515
							'STDVAR_TO_BLDINF':bldInfMakefilePathTestRoot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   516
							'STDVAR_EXTENSION_ROOT':bldInfMakefilePathTestRoot}		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   517
							)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   518
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   519
		self.__testExtension(extensions[1],
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   520
							'test/dummyextension2.mk',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   521
							{'TARGET':'dummyoutput2.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   522
							'SOURCES':'dummysource21.cpp dummysource22.cpp dummysource23.cpp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   523
							'DEPENDENCIES':'dummylib21.lib dummylib22.lib',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   524
							'TOOL':'dummytool2.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   525
							'OPTION21':'option21value',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   526
							'OPTION22':'$(MAKE_VAR)',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   527
							'STDVAR_TO_ROOT':"",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   528
							'STDVAR_TO_BLDINF':bldInfMakefilePathTestRoot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   529
							'STDVAR_EXTENSION_ROOT':bldInfMakefilePathTestRoot}
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   530
							)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   531
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   532
		self.__testExtension(extensions[2],
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   533
							'$(' + raptor.env + ')/test/dummyextension3.mk',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   534
							{'TARGET':'dummyoutput3.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   535
							'SOURCES':'dummysource31.cpp dummysource32.cpp dummysource33.cpp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   536
							'DEPENDENCIES':'dummylib31.lib dummylib32.lib',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   537
							'TOOL':'dummytool3.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   538
							'OPTION31':'option31value',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   539
							'OPTION32':'$(MAKE_VAR)',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   540
							'STDVAR_TO_ROOT':"",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   541
							'STDVAR_TO_BLDINF':bldInfMakefilePathTestRoot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   542
							'STDVAR_EXTENSION_ROOT':bldInfMakefilePathTestRoot}
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   543
							)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   544
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   545
		testExtensions = bldInfObject.getTestExtensions(self.ARMV5)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   546
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   547
		self.__testExtension(testExtensions[0],
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   548
							'test/dummytestextension1.mk',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   549
							{'TARGET':'dummytestoutput1.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   550
							'SOURCES':'dummytestsource11.cpp dummytestsource12.cpp dummytestsource13.cpp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   551
							'DEPENDENCIES':'dummytestlib11.lib dummytestlib12.lib',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   552
							'TOOL':'dummytesttool1.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   553
							'OPTIONTEST11':'optiontest11value',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   554
							'OPTIONTEST12':'$(MAKE_VAR)',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   555
							'STDVAR_TO_ROOT':"",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   556
							'STDVAR_TO_BLDINF':bldInfMakefilePathTestRoot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   557
							'STDVAR_EXTENSION_ROOT':bldInfMakefilePathTestRoot}		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   558
							)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   559
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   560
		self.__testExtension(testExtensions[1],
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   561
							'test/dummytestextension2.mk',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   562
							{'TARGET':'dummytestoutput2.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   563
							'SOURCES':'dummytestsource21.cpp dummytestsource22.cpp dummytestsource23.cpp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   564
							'DEPENDENCIES':'dummytestlib21.lib dummytestlib22.lib',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   565
							'TOOL':'dummytesttool2.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   566
							'OPTIONTEST21':'optiontest21value',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   567
							'OPTIONTEST22':'$(MAKE_VAR)',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   568
							'STDVAR_TO_ROOT':"",
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   569
							'STDVAR_TO_BLDINF':bldInfMakefilePathTestRoot,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   570
							'STDVAR_EXTENSION_ROOT':bldInfMakefilePathTestRoot}		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   571
							)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   572
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   573
	def testBldInfIncludes(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   574
		bldInfTestRoot = self.__testRoot.Append('metadata/project/bld.infs/includes')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   575
		depfiles=[]
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   576
		bldInfObject = raptor_meta.BldInfFile(bldInfTestRoot.Append('top_level.inf'),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   577
											  self.__gnucpp, depfiles=depfiles, log=self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   578
		Root = str(bldInfTestRoot)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   579
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   580
		mmpFiles = bldInfObject.getMMPList(self.ARMV5)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   581
		self.assertEquals(len(mmpFiles['mmpFileList']), 3)	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   582
		self.assertEquals(str(mmpFiles['mmpFileList'][0].filename), Root + "/dir3/down_dir.mmp")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   583
		self.assertEquals(str(mmpFiles['mmpFileList'][1].filename), Root + "/dir1/dir2/up_dir.mmp")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   584
		self.assertEquals(str(mmpFiles['mmpFileList'][2].filename), Root + "/top_level.mmp")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   585
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   586
		exports = bldInfObject.getExports(self.ARMV5)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   587
		self.assertEquals(exports[0].getSource(), Root + "/dir3/down_dir_export_source.h")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   588
		self.assertEquals(exports[1].getSource(), Root + "/dir1/dir2/up_dir_export_source.h")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   589
		self.assertEquals(exports[2].getSource(), Root + "/top_level_export_source.h")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   590
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   591
	def testMmpIncludes(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   592
		mmpTestRoot = self.__testRoot.Append('metadata/project/mmps/includes')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   593
		mmpMakefilePathTestRoot = str(self.__makefilePathTestRoot)+'/metadata/project/mmps/includes'
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   594
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   595
		depfiles=[]
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   596
		bldInfObject = raptor_meta.BldInfFile(mmpTestRoot.Append('top_level.inf'),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   597
										 self.__gnucpp, depfiles=depfiles, log=self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   598
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   599
		mmpFiles = bldInfObject.getMMPList(self.ARMV5)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   600
		mmpdeps = []
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   601
		mmpFile = raptor_meta.MMPFile(mmpFiles['mmpFileList'][0].filename, 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   602
										   self.__gnucpp,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   603
										   bldInfObject,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   604
									           depfiles=mmpdeps,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   605
										   log=self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   606
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   607
		self.assertEquals(str(mmpFile.filename), 
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   608
						  str(mmpTestRoot.Append("top_level.mmp")))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   609
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   610
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   611
		mmpContent = mmpFile.getContent(self.ARMV5)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   612
		mmpBackend = raptor_meta.MMPRaptorBackend(None, str(mmpFile.filename), str(bldInfObject.filename))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   613
		mmpParser = mmpparser.MMPParser(mmpBackend)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   614
		parseresult = None
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   615
		try:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   616
			parseresult = mmpParser.mmp.parseString(mmpContent)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   617
		except Exception,e:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   618
			pass
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   619
			
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   620
		self.assertTrue(parseresult)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   621
		self.assertEquals(parseresult[0],'MMP')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   622
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   623
		mmpBackend.finalise(self.ARMV5)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   624
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   625
		var = mmpBackend.BuildVariant
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   626
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   627
		sources = []
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   628
		for i in var.ops:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   629
			if i.name == "SOURCE":
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   630
				sources.extend(i.value.split(" "))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   631
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   632
		self.assertTrue((mmpMakefilePathTestRoot+'/top_level.cpp') in sources)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   633
		self.assertTrue((mmpMakefilePathTestRoot+'/dir1/dir2/up_dir.cpp') in sources)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   634
		self.assertTrue((mmpMakefilePathTestRoot+'/dir3/down_dir.cpp') in sources)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   635
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   636
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   637
	def testDefFileResolution(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   638
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   639
		class DefFileTest(object):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   640
			""" Test resolveDefFile for a particular set of mmp options """
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   641
			def __init__(self, resolveddeffile, mmpfilename, deffilekeyword, target, nostrictdef, platform):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   642
				self.resolveddeffile = resolveddeffile
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   643
				self.mmpfilename=mmpfilename
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   644
				self.deffilekeyword=deffilekeyword
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   645
				self.target=target
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   646
				self.nostrictdef = nostrictdef
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   647
				self.platform = platform
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   648
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   649
			def test(self, raptor):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   650
				m = raptor_meta.MMPRaptorBackend(raptor, self.mmpfilename, "")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   651
				m.deffile = self.deffilekeyword
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   652
				m.nostrictdef = self.nostrictdef
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   653
				f = m.resolveDefFile(self.target, self.platform)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   654
				
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   655
				return path_compare_notdrivelettercase(self.resolveddeffile,f)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   656
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   657
		defFileTests = []
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   658
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   659
		for testPlat in self.testPlats:			
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   660
			epocroot = str(testPlat['EPOCROOT'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   661
			releaseDir = testPlat['PLATFORM'].lower()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   662
			defFileDir = "eabi"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   663
			if testPlat['PLATFORM'] == "WINSCW":
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   664
				defFileDir = "bwins"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   665
							
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   666
			defFileTests.extend([
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   667
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   668
					self.__OSRoot+'/test/'+defFileDir+'/targetu.def',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   669
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   670
					'',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   671
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   672
					False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   673
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   674
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   675
					self.__OSRoot+'/test/'+defFileDir+'/target.def',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   676
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   677
					'',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   678
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   679
					True,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   680
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   681
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   682
					self.__OSRoot+'/test/'+defFileDir+'/targetu.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   683
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   684
					'target.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   685
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   686
					False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   687
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   688
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   689
					self.__OSRoot+'/test/'+defFileDir+'/target2.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   690
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   691
					'target2.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   692
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   693
					True,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   694
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   695
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   696
					self.__OSRoot+'/test/component/target2u.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   697
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   698
					'./target2.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   699
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   700
					False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   701
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   702
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   703
					self.__OSRoot+'/test/component/target2.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   704
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   705
					'./target2.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   706
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   707
					True,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   708
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   709
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   710
					self.__OSRoot+'/test/component/'+defFileDir+'/target3u.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   711
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   712
					'./~/target3.DEF',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   713
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   714
					False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   715
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   716
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   717
					epocroot+'/epoc32/include/def/'+defFileDir+'/targetu.def',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   718
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   719
					'/epoc32/include/def/~/target.def',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   720
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   721
					False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   722
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   723
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   724
					epocroot+'/epoc32/release/'+releaseDir+'/target.def',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   725
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   726
					'/epoc32/release/'+releaseDir+'/target.def',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   727
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   728
					True,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   729
					testPlat),
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   730
				DefFileTest(
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   731
					self.__OSRoot+'/deffiles/targetu.def',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   732
					'/test/component/mmpfile.mmp',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   733
					'/deffiles/target.def',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   734
					'target.exe',
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   735
					False,
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   736
					testPlat)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   737
				])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   738
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   739
		for t in defFileTests:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   740
			result = t.test(self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   741
			self.assertEquals(result, True)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   742
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   743
	def dummyMetaReader(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   744
		"make raptor_meta.MetaReader.__init__ into a none operation"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   745
		self.savedInit = raptor_meta.MetaReader.__init__
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   746
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   747
		def DummyMetaReaderInit(self, aRaptor):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   748
			self._MetaReader__Raptor = aRaptor
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   749
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   750
		raptor_meta.MetaReader.__init__ = DummyMetaReaderInit
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   751
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   752
	def restoreMetaReader(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   753
		"make raptor_meta.MetaReader.__init__ operational again"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   754
		raptor_meta.MetaReader.__init__ = self.savedInit
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   755
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   756
	def testApplyOsVariant(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   757
		self.dummyMetaReader()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   758
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   759
		# Mock output class
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   760
		class OutputMock(object):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   761
			def write(self, text):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   762
				pass
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   763
				
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   764
		bu = raptor_data.BuildUnit("os_variant", [])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   765
					
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   766
		self.raptor.keepGoing = False
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   767
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   768
		metaReader = raptor_meta.MetaReader(self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   769
		metaReader.ApplyOSVariant(bu, ".")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   770
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   771
		self.raptor.keepGoing = True
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   772
		self.raptor.out = OutputMock()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   773
		metaReader = raptor_meta.MetaReader(self.raptor)	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   774
		metaReader.ApplyOSVariant(bu, ".")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   775
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   776
		self.restoreMetaReader()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   777
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   778
	def __assertEqualStringList(self, aListOne, aListTwo):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   779
		self.assertEquals(len(aListOne), len(aListTwo))
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   780
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   781
		i = 0
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   782
		while i < len(aListOne) :
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   783
			self.assertEquals(aListOne[i], aListTwo[i])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   784
			i = i + 1
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   785
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   786
	def testOptionReplace(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   787
		# Test how we resolve known permutations of values given to the .mmp file OPTION_REPLACE keyword
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   788
		mockBackend = raptor_meta.MMPRaptorBackend(self.raptor, "somefile.mmp", "")
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   789
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   790
		results = mockBackend.resolveOptionReplace('--argA')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   791
		self.__assertEqualStringList(results, ['--argA<->'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   792
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   793
		results = mockBackend.resolveOptionReplace('--argB value')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   794
		self.__assertEqualStringList(results, ['--argB%20<->@@', '@@%<->--argB%20value'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   795
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   796
		results = mockBackend.resolveOptionReplace('--argD value1 --argE')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   797
		self.__assertEqualStringList(results, ['--argD%20<->@@', '@@%<->--argD%20value1', '--argE<->'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   798
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   799
		results = mockBackend.resolveOptionReplace('--argF --argG')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   800
		self.__assertEqualStringList(results, ['--argF<->--argG'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   801
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   802
		results = mockBackend.resolveOptionReplace('--argH --argI value')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   803
		self.__assertEqualStringList(results, ['--argH<->--argI%20value'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   804
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   805
		results = mockBackend.resolveOptionReplace('--argJ value1 --argK value2')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   806
		self.__assertEqualStringList(results, ['--argJ%20<->@@', '@@%<->--argJ%20value1', '--argK%20<->@@', '@@%<->--argK%20value2'])		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   807
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   808
		results = mockBackend.resolveOptionReplace('--argL value1 --argM value2 --argN --argO')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   809
		self.__assertEqualStringList(results, ['--argL%20<->@@', '@@%<->--argL%20value1', '--argM%20<->@@', '@@%<->--argM%20value2', '--argN<->--argO'])		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   810
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   811
		results = mockBackend.resolveOptionReplace('--argP value1 value2 --argQ value3 value4')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   812
		self.__assertEqualStringList(results, ['--argP%20<->@@', '@@%<->--argP%20value1', '--argQ%20<->@@', '@@%<->--argQ%20value3'])		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   813
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   814
		results = mockBackend.resolveOptionReplace('value1 value2')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   815
		self.__assertEqualStringList(results, [])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   816
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   817
		results = mockBackend.resolveOptionReplace('value1 --argR')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   818
		self.__assertEqualStringList(results, ['--argR<->'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   819
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   820
		results = mockBackend.resolveOptionReplace('-singleHyphenargS value1 -singleHyphenargT value2')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   821
		self.__assertEqualStringList(results, ['-singleHyphenargS%20<->@@', '@@%<->-singleHyphenargS%20value1', '-singleHyphenargT%20<->@@', '@@%<->-singleHyphenargT%20value2'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   822
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   823
		results = mockBackend.resolveOptionReplace('--assignmentArgU=value1 --assignmentArgV=value2')
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   824
		self.__assertEqualStringList(results, ['--assignmentArgU=value1<->--assignmentArgV=value2'])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   825
	
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   826
	def testModuleName(self):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   827
		self.dummyMetaReader()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   828
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   829
		# Test how we resolve known permutations of values given to the .mmp file OPTION_REPLACE keyword
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   830
		mockBackend = raptor_meta.MetaReader(self.raptor)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   831
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   832
		resultsDictList = [ {"bldinf":"Z:/src/romfile/group/tb92/GROUP/bld.inf", "result":"romfile"},
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   833
				    {"bldinf":"/src/romfile/group/tb92/GROUP/bld.inf", "result":"romfile"},
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   834
				    {"bldinf":"Z:/src/romFile/group/tb92/GROUP/another.inf", "result":"romFile"},
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   835
				    {"bldinf":"X:/src/RoMfile/group/bld.inf", "result":"RoMfile"},
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   836
				    {"bldinf":"w:/contacts/group/ONgoing/group/bld.inf", "result":"contacts"},
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   837
				    {"bldinf":"p:/group/bld.inf", "result":"module"},
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   838
				    {"bldinf":"/group/bld.inf", "result":"module"},
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   839
				    {"bldinf":"p:/ONGOING/bld.inf", "result":"module"},
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   840
				    {"bldinf":"/ONGOING/bld.inf", "result":"module"}
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   841
				    ]
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   842
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   843
		for result in resultsDictList:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   844
			moduleName = mockBackend.ModuleName(result["bldinf"])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   845
			self.assertEquals(moduleName, result["result"])
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   846
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   847
		self.restoreMetaReader()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   848
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   849
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   850
def path_compare_notdrivelettercase(aRequirement, aCandidate):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   851
	if sys.platform.startswith("win"):
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   852
		if aRequirement[1] == ":":
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   853
			aRequirement = aRequirement[0].lower() + aRequirement[1:]
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   854
			aCandidate = aCandidate[0].lower() + aCandidate[1:]
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   855
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   856
	return aRequirement == aCandidate
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   857
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   858
		
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   859
# run all the tests
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   860
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   861
from raptor_tests import SmokeTest
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   862
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   863
def run():
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   864
	t = SmokeTest()
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   865
	t.id = "999"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   866
	t.name = "raptor_meta_unit"
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   867
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   868
	tests = unittest.makeSuite(TestRaptorMeta)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   869
	result = unittest.TextTestRunner(verbosity=2).run(tests)
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   870
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   871
	if result.wasSuccessful():
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   872
		t.result = SmokeTest.PASS
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   873
	else:
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   874
		t.result = SmokeTest.FAIL
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   875
c327db0664bb Upgrading Raptor from 2.10 to 2.13
mikek
parents:
diff changeset
   876
	return t