sbsv2/raptor/test/unit_suite/mmpparser_unit.py
author Richard Taylor <richard.i.taylor@nokia.com>
Thu, 12 Aug 2010 09:00:16 +0100
changeset 625 a1925fb7753a
parent 591 22486c9c7b15
permissions -rw-r--r--
sbs version 2.15.0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
591
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     1
#
625
a1925fb7753a sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents: 591
diff changeset
     2
# Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
591
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     3
# All rights reserved.
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     4
# This component and the accompanying materials are made available
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     5
# under the terms of the License "Eclipse Public License v1.0"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     6
# which accompanies this distribution, and is available
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     7
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     8
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     9
# Initial Contributors:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    10
# Nokia Corporation - initial contribution.
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    11
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    12
# Contributors:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    13
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    14
# Description: 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    15
# This module tests the MMPParser Class()
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    16
# It runs on data from the standard input
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    17
#
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    18
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    19
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    20
from mmpparser import *
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    21
import unittest
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    22
import os
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    23
import re
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    24
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    25
class MMPTester(MMPBackend):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    26
	"""A parser testing "backend" for the MMP language
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    27
	This is used to test MMP parsing independently of the build system. """
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    28
	def __init__(self):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    29
		super(MMPTester,self).__init__()
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    30
		self.sourcepath="."
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    31
		self.platformblock = None
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    32
		self.output=""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    33
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    34
	def log(self,text):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    35
		self.output += text + "\n"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    36
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    37
	def doStartResource(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    38
		self.log("Create resource "+toks[0]+" of " + str(toks))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    39
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    40
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    41
	def doResourceAssignment(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    42
		self.log("Set "+toks[0]+" to " + toks[1])
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    43
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    44
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    45
	def doEndResource(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    46
		self.log("Finalise resource "+toks[0]+" of " + str(toks))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    47
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    48
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    49
	def doStartPlatform(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    50
		self.log("Start Platform block "+toks[0])
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    51
		self.platformblock = toks[0]
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    52
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    53
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    54
	def doEndPlatform(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    55
		self.log("Finalise platform " + self.platformblock)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    56
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    57
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    58
	def doSetSwitch(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    59
		self.log("Set switch "+toks[0]+" ON")
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    60
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    61
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    62
	def doAssignment(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    63
		self.log("Set "+toks[0]+" to " + str(toks[1]))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    64
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    65
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    66
	def doAppend(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    67
		self.log("Append to "+toks[0]+" the values: " + str(toks[1]))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    68
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    69
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    70
	def doUIDAssignment(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    71
		self.log("Set UID2 to " + toks[1][0])
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    72
		if len(toks[1]) > 1:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    73
			self.log("Set UID3 to " + toks[1][1])
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    74
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    75
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    76
	def doSourcePathAssignment(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    77
		self.log("Remembering self.sourcepath state:  "+str(toks[0])+" is now " + str(toks[1]))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    78
		self.sourcepath=toks[1]
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    79
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    80
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    81
	def doSourceAssignment(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    82
		self.log("Setting "+toks[0]+" to " + str(toks[1]))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    83
		for i in toks[1]:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    84
			self.log(self.sourcepath + "\\" + i)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    85
		return "OK"
625
a1925fb7753a sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents: 591
diff changeset
    86
	
a1925fb7753a sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents: 591
diff changeset
    87
	def doDocumentAssignment(self,s,loc,toks):
a1925fb7753a sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents: 591
diff changeset
    88
		self.log("Setting "+toks[0]+" to " + str(toks[1]))
a1925fb7753a sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents: 591
diff changeset
    89
		for i in toks[1]:
a1925fb7753a sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents: 591
diff changeset
    90
			self.log(self.sourcepath + "\\" + i)
a1925fb7753a sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents: 591
diff changeset
    91
		return "OK"
a1925fb7753a sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents: 591
diff changeset
    92
	
591
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    93
	def doStartBitmap(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    94
		self.log("BITMAP Create "+toks[0]+" to " + str(toks[1]))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    95
		return "OK" 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    96
		
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    97
	def doBitmapAssignment(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    98
		self.log("BITMAP Setting "+toks[0]+" to " + str(toks[1]))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    99
		self.log("		must set a value within a bitmap FLM call")
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   100
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   101
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   102
	def doEndBitmap(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   103
		self.log("Finish bitmap "+toks[0]+" to " + str(toks[1]))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   104
		return "OK" 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   105
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   106
	def doStartStringTable(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   107
		self.log("Start STRINGTABLE "+toks[1])
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   108
		return "OK" 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   109
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   110
	def doStringTableAssignment(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   111
		self.log("Set"+toks[0]+" to " + toks[1])
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   112
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   113
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   114
	def doEndStringTable(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   115
		self.log("End STRINGTABLE "+toks[1])
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   116
		return "OK" 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   117
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   118
	def doUnknownStatement(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   119
		self.log("Ignoring unknown statement at " + str(loc))
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   120
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   121
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   122
	def doUnknownBlock(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   123
		self.output += "Ignoring unknown block at " + str(loc)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   124
		return "OK"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   125
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   126
	def doMMP(self,s,loc,toks):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   127
		return "MMP"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   128
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   129
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   130
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   131
class TestMMPParser(unittest.TestCase):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   132
	def setUp(self):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   133
		pass
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   134
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   135
	def testAll(self):
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   136
		tests = [{'name' : "TestFeatures", 'text' :  
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   137
"""ASSPLIBRARY 123 456 789
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   138
LIBRARY  eexe euser
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   139
ALWAYS_BUILD_AS_ARM
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   140
NOEXPORTLIBRARY
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   141
TARGET FRED
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   142
TARGETTYPE EXE
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   143
SOURCEPATH \usr
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   144
SOURCE alice.cia fred.cpp bob.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   145
SOURCEPATH \someotherplace\ 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   146
SOURCE custard.cpp the.cpp dragon.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   147
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   148
START ARMCC
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   149
ARMLIBS somelib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   150
ARMRT
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   151
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   152
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   153
START WINC
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   154
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   155
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   156
START RESOURCE fred.rss
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   157
TARGET fred
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   158
TARGETPATH /usr/local
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   159
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   160
UID 0x12354 123455
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   161
""", 'mustmatch': r"Set UID3 to 123455"}, \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   162
				{'name':"TestUnknownStatements", 'text': \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   163
"""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   164
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   165
TARGET FRED12345
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   166
SOURCEPATH \usr
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   167
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   168
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   169
""", 'mustmatch': r"Remembering self.sourcepath state:"}, \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   170
				{'name':"PreceedingBlankLines", 'text': \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   171
"""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   172
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   173
ASSPLIBRARY 123 456 789
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   174
LIBRARY  eexe euser
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   175
ALWAYS_BUILD_AS_ARM
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   176
NOEXPORTLIBRARY
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   177
TARGET FRED
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   178
SOURCEPATH \usr
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   179
START ARMCC
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   180
ARMLIBS somepath
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   181
ARMRT
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   182
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   183
START RESOURCE fred.rss
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   184
TARGET fred
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   185
TARGETPATH /usr/local
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   186
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   187
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   188
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   189
""", 'mustmatch': r"Set TARGETPATH to /usr/local"}, \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   190
				{ 'name': "Testvfprvct", 'text': \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   191
"""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   192
targettype dll
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   193
sourcepath .
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   194
source dfprvct2_2.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   195
library euser.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   196
library scppnwdl.lib drtrvct2_2.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   197
option armcc --no_exceptions --no_exceptions_unwind
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   198
start armcc
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   199
armrt
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   200
armlibs c_t__un.l
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   201
end
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   202
capability all
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   203
vendorid 0x70000001
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   204
target dfprvct2_2.dll
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   205
start armcc
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   206
armlibs f_t_p.l g_t_p.l
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   207
end
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   208
unpaged
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   209
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   210
""", 'mustmatch': r"Set switch UNPAGED ON"}, \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   211
				{ 'name': "TestUSRT", 'text': \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   212
"""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   213
TARGET fred
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   214
START ARMCC
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   215
ARMINC 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   216
ARMRT
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   217
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   218
VENDORID 0x70000001
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   219
""", 'mustmatch': r"Set VENDORID to 0x70000001"}, \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   220
				{ 'name': "TestRESOURCE", 'text': \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   221
"""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   222
TARGET reccaf.dll
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   223
CAPABILITY TrustedUI ProtServ DRM
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   224
TARGETTYPE PLUGIN
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   225
UID 0x10009D8D 0x101ff761
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   226
VENDORID 0x70000001
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   227
SOURCEPATH ../source/reccaf
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   228
SOURCE CafApaRecognizer.cpp mimetypemapping.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   229
START RESOURCE 101ff761.rss
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   230
TARGET reccaf.rsc
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   231
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   232
USERINCLUDE ../source/caf
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   233
USERINCLUDE ../source/reccaf
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   234
SYSTEMINCLUDE /epoc32/include
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   235
SYSTEMINCLUDE /epoc32/include/caf
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   236
SYSTEMINCLUDE /epoc32/include/ecom
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   237
LIBRARY euser.lib apmime.lib estor.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   238
LIBRARY caf.lib efsrv.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   239
""", 'mustmatch': r"Create resource .* of"}, \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   240
				{ 'name': "TestRESOURCE", 'text': \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   241
"""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   242
TARGET cafutils.dll
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   243
CAPABILITY All -Tcb
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   244
TARGETTYPE DLL
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   245
UID 0x101FD9B8
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   246
VENDORID 0x70000001
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   247
UNPAGED
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   248
SOURCEPATH ../source/cafutils
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   249
SOURCE Cafutils.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   250
SOURCE attributeset.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   251
SOURCE stringattribute.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   252
SOURCE stringattributeset.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   253
SOURCE virtualpath.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   254
SOURCE Metadata.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   255
SOURCE Metadataarray.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   256
SOURCE embeddedobject.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   257
SOURCE rightsinfo.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   258
SOURCE Virtualpathptr.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   259
SOURCE dirstreamable.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   260
SOURCE bitset.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   261
SOURCE cafmimeheader.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   262
SOURCE mimefieldanddata.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   263
USERINCLUDE ../inc
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   264
USERINCLUDE ../source/cafutils
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   265
SYSTEMINCLUDE /epoc32/include
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   266
SYSTEMINCLUDE /epoc32/include/caf
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   267
SYSTEMINCLUDE /epoc32/include/libc
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   268
LIBRARY euser.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   269
LIBRARY estor.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   270
LIBRARY charconv.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   271
LIBRARY efsrv.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   272
LIBRARY apgrfx.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   273
LIBRARY ecom.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   274
LIBRARY apmime.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   275
""", 'mustmatch': r"LIBRARY"},
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   276
				{ 'name': "TestEmptyStringTable", 'text': \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   277
"""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   278
OPTION CW   -w off
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   279
TARGET          testwebbrowser.exe
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   280
TARGETTYPE      EXE
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   281
CAPABILITY ALL -TCB
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   282
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   283
SYSTEMINCLUDE   /epoc32/include /epoc32/include/ecom
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   284
USERINCLUDE     ../inc
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   285
USERINCLUDE     ../../httpexampleclient
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   286
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   287
START STRINGTABLE ../data/htmltagstable.st
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   288
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   289
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   290
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   291
SOURCEPATH      ../../httpexampleclient
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   292
SOURCE httpexampleutils.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   293
""", 'mustmatch': r"End STRINGTABLE OK"},
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   294
				{ 'name': "TestARMINC", 'text': \
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   295
"""
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   296
# 1 "<built-in>"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   297
# 1 "<command line>"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   298
# 10 "<command line>"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   299
# 1 "/var/local/net/smb/tmurphy/cluster_epocroot_1/epoc32/include/variant/Symbian_OS_vFuture.hrh" 1
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   300
# 11 "<command line>" 2
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   301
# 1 "/localhome/tmurphy/pf/mcloverlay/cedar/generic/base/e32/compsupp/rvct2_2/drtrvct2_2_vfpv2.mmp"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   302
# 1 "/localhome/tmurphy/pf/mcloverlay/cedar/generic/base/e32/compsupp/rvct2_2/drtrvct2_2_common.mmh" 1
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   303
TARGETTYPE dll
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   304
OPTION ARMCC--no_exceptions --no_exceptions_unwind
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   305
SOURCEPATH .
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   306
SOURCE rtabort.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   307
SOURCE rtdiv0.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   308
SOURCE rtexit.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   309
SOURCE rtlib.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   310
SOURCE rtraise.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   311
SOURCE drtrvct2_2.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   312
SOURCE rtopnew.cpp rtopdel.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   313
SOURCE sftfpini.cpp
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   314
LIBRARY scppnwdl.lib euser.lib
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   315
SYSTEMINCLUDE ../../include
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   316
START ARMCC
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   317
ARMRT
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   318
ARMINC
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   319
ARMLIBS c_t__un.l
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   320
ARMLIBS h_t__un.l
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   321
# 46 "/localhome/tmurphy/pf/mcloverlay/cedar/generic/base/e32/compsupp/rvct2_2/drtrvct2_2_common.mmh"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   322
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   323
capability all
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   324
VENDORID 0x70000001
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   325
# 7 "/localhome/tmurphy/pf/mcloverlay/cedar/generic/base/e32/compsupp/rvct2_2/drtrvct2_2_vfpv2.mmp" 2
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   326
TARGET drtrvct2_2_vfpv2.dll
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   327
LINKAS drtrvct2_2.dll
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   328
NOEXPORTLIBRARY
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   329
START ARMCC
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   330
ARMLIBS f_tvp.l
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   331
END
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   332
unpaged
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   333
""", 'mustmatch': r"Set.*ARMINC"}]
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   334
		for i in tests:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   335
			tester = MMPTester()
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   336
			mp = MMPParser(tester)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   337
			try:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   338
				result = mp.mmp.parseString(i['text'])
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   339
			except ParseException,e:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   340
				pass
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   341
			self.assertEquals(result[0],'MMP')
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   342
			self.assertNotEquals(re.search(i['mustmatch'],tester.output,re.M),None)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   343
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   344
# run all the tests
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   345
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   346
from raptor_tests import SmokeTest
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   347
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   348
def run():
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   349
	t = SmokeTest()
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   350
	t.id = "999"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   351
	t.name = "mmpparser_unit"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   352
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   353
	tests = unittest.makeSuite(TestMMPParser)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   354
	result = unittest.TextTestRunner(verbosity=2).run(tests)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   355
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   356
	if result.wasSuccessful():
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   357
		t.result = SmokeTest.PASS
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   358
	else:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   359
		t.result = SmokeTest.FAIL
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   360
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
   361
	return t