author | Ross Qin <ross.qin@nokia.com> |
Tue, 30 Nov 2010 14:05:41 +0800 | |
changeset 713 | 7b7f0409fc00 |
parent 674 | 37ee82a83d43 |
permissions | -rw-r--r-- |
591 | 1 |
# |
2 |
# Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies). |
|
3 |
# All rights reserved. |
|
4 |
# This component and the accompanying materials are made available |
|
5 |
# under the terms of the License "Eclipse Public License v1.0" |
|
6 |
# which accompanies this distribution, and is available |
|
7 |
# at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 |
# |
|
9 |
# Initial Contributors: |
|
10 |
# Nokia Corporation - initial contribution. |
|
11 |
# |
|
12 |
# Contributors: |
|
13 |
# |
|
14 |
# Description: |
|
15 |
# |
|
16 |
||
17 |
from raptor_tests import SmokeTest |
|
18 |
from raptor_tests import ReplaceEnvs |
|
19 |
from raptor_meta import BldInfFile |
|
20 |
||
21 |
def run(): |
|
22 |
t = SmokeTest() |
|
23 |
t.id = "30" |
|
24 |
t.name = "resource" |
|
25 |
t.command = "sbs -b smoke_suite/test_resources/simple_gui/Bld.inf RESOURCE" |
|
26 |
t.targets = [ |
|
27 |
"$(EPOCROOT)/epoc32/data/z/resource/apps/helloworld.mbm", |
|
28 |
"$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/apps/helloworld.mbm", |
|
29 |
"$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/apps/helloworld.mbm", |
|
674 | 30 |
"$(EPOCROOT)/epoc32/include/HelloWorld.rsg", |
31 |
"$(EPOCROOT)/epoc32/data/z/resource/apps/HelloWorld.rsc", |
|
32 |
"$(EPOCROOT)/epoc32/data/z/private/10003a3f/apps/HelloWorld_reg.rsc", |
|
33 |
"$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/apps/HelloWorld.rsc", |
|
34 |
"$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/apps/HelloWorld.rsc", |
|
35 |
"$(EPOCROOT)/epoc32/release/winscw/udeb/z/private/10003a3f/apps/HelloWorld_reg.rsc", |
|
36 |
"$(EPOCROOT)/epoc32/release/winscw/urel/z/private/10003a3f/apps/HelloWorld_reg.rsc" |
|
591 | 37 |
] |
38 |
||
39 |
||
40 |
t.addbuildtargets('smoke_suite/test_resources/simple_gui/Bld.inf', [ |
|
41 |
"helloworld_exe/helloworld.mbm_bmconvcommands", |
|
674 | 42 |
"HelloWorld_exe/HelloWorld_HelloWorld.rsc.rpp", |
43 |
"HelloWorld_exe/HelloWorld_HelloWorld.rsc.d", |
|
44 |
"HelloWorld_reg_exe/HelloWorld_reg_HelloWorld_reg.rsc.rpp", |
|
45 |
"HelloWorld_reg_exe/HelloWorld_reg_HelloWorld_reg.rsc.d" |
|
46 |
]) |
|
591 | 47 |
|
48 |
t.mustnotmatch = ["HelloWorld.rss.* warning: trigraph"] |
|
49 |
||
50 |
t.run() |
|
51 |
||
52 |
t.id="30a" |
|
53 |
t.name = "no_depend_gen_resource" |
|
54 |
t.usebash = True |
|
55 |
t.description = """Check that dependent resources still build correctly even when we turn dependency generation off. This |
|
56 |
test cannot really do this reliably, if you think about it, since it can't force make to try building resources |
|
57 |
in the 'wrong' order. What it does attempt is to check that |
|
58 |
the ultimately generated dependency file is ok. |
|
59 |
N.B. It also attempts to ensure that the dependency file is 'minimal' i.e. that it only references .mbg and .rsg files |
|
60 |
that might come from other parts of the same build. This is important for performance in situations where --no-depend-generate |
|
61 |
is used because the weight of 'complete' dependency information would overwhelm make. |
|
62 |
""" |
|
63 |
buildLocation = ReplaceEnvs("$(EPOCROOT)/epoc32/build/") + BldInfFile.outputPathFragment('smoke_suite/test_resources/resource/group/bld.inf') |
|
625
a1925fb7753a
sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents:
616
diff
changeset
|
64 |
res_depfile= buildLocation+"/dependentresource_/dependentresource_dependentresource.rsc.d" |
591 | 65 |
|
616
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
66 |
|
591 | 67 |
t.targets = [ |
616
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
68 |
"$(EPOCROOT)/epoc32/data/z/resource/anotherresource/testresource.r01", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
69 |
"$(EPOCROOT)/epoc32/data/z/resource/anotherresource/testresource.rsc", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
70 |
"$(EPOCROOT)/epoc32/data/z/resource/dependentresource/dependentresource.rsc", |
591 | 71 |
"$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.r01", |
616
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
72 |
"$(EPOCROOT)/epoc32/include/testresource.hrh", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
73 |
"$(EPOCROOT)/epoc32/include/testresource.rsg", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
74 |
"$(EPOCROOT)/epoc32/include/onelang.rsg", |
591 | 75 |
"$(EPOCROOT)/epoc32/release/armv5/urel/testresource.exe", |
616
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
76 |
"$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/anotherresource/testresource.r01", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
77 |
"$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/anotherresource/testresource.rsc", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
78 |
"$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/dependentresource/dependentresource.rsc", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
79 |
"$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/anotherresource/testresource.r01", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
80 |
"$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/anotherresource/testresource.rsc", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
81 |
"$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/dependentresource/dependentresource.rsc", |
591 | 82 |
res_depfile |
83 |
] |
|
84 |
||
616
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
85 |
t.addbuildtargets('smoke_suite/test_resources/resource/group/bld.inf', [ |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
86 |
"dependentresource_/dependentresource_dependentresource.rsc", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
87 |
"testresource_/testresource_dependentresource.r01", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
88 |
"testresource_/testresource_dependentresource.rsc", |
625
a1925fb7753a
sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents:
616
diff
changeset
|
89 |
"testheader_/testheader_testresource_sc.rsg.d", |
a1925fb7753a
sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents:
616
diff
changeset
|
90 |
"testheader_/testheader_testresource_sc.rsg.rpp", |
a1925fb7753a
sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents:
616
diff
changeset
|
91 |
"testresource_/testresource_testresource.r02.rpp", |
a1925fb7753a
sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents:
616
diff
changeset
|
92 |
"onelang_/onelang_onelang_sc.rsg.rpp", |
a1925fb7753a
sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents:
616
diff
changeset
|
93 |
"testresource_/testresource_testresource.rsc.rpp"]) |
591 | 94 |
|
674 | 95 |
t.command = "sbs -b smoke_suite/test_resources/resource/group/bld.inf -c armv5_urel -c winscw_urel reallyclean ; sbs --no-depend-generate -j 16 -b smoke_suite/test_resources/resource/group/bld.inf -c armv5_urel -c winscw_urel -f ${SBSLOGFILE} -m ${SBSMAKEFILE} && grep 'epoc32.include.test[^ ]*.rsg' %s && { X=`md5sum $(EPOCROOT)/epoc32/release/winscw/urel/z/resource/anotherresource/testresource.rsc` && Y=`md5sum $(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.rsc` && [ \"${X%% *}\" != \"${Y%% *}\" ] ; } && wc -l %s " % (res_depfile, res_depfile) |
625
a1925fb7753a
sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents:
616
diff
changeset
|
96 |
|
591 | 97 |
|
98 |
t.mustnotmatch = [] |
|
99 |
||
100 |
t.mustmatch = [ |
|
625
a1925fb7753a
sbs version 2.15.0
Richard Taylor <richard.i.taylor@nokia.com>
parents:
616
diff
changeset
|
101 |
"[23] .*.dependentresource_.dependentresource_dependentresource.rsc.d" |
591 | 102 |
] |
103 |
||
104 |
t.run() |
|
616
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
105 |
|
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
106 |
t.id="30b" |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
107 |
t.name = "resource_corner_cases_reallyclean" |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
108 |
t.usebash = True |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
109 |
t.description = """ Additional corner cases for resources: |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
110 |
1) Use of "TARGETTYPE none" but not "TARGET" mmp keyword. |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
111 |
2) Use of a resource with no LANG. """ |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
112 |
|
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
113 |
t.targets = [] |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
114 |
|
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
115 |
t.command = "sbs -b smoke_suite/test_resources/resource/group/bld2.inf -c armv5_urel -c winscw_urel reallyclean" |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
116 |
t.mustnotmatch = [] |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
117 |
t.mustmatch = [] |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
118 |
t.run() |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
119 |
|
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
120 |
t.id="30c" |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
121 |
t.name = "resource_corner_cases" |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
122 |
t.usebash = True |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
123 |
t.description = """ Additional corner cases for resources: |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
124 |
1) Use of "TARGETTYPE none" but not "TARGET" mmp keyword. |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
125 |
2) Use of a resource with no LANG. """ |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
126 |
|
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
127 |
buildLocation = ReplaceEnvs("$(EPOCROOT)/epoc32/build/") + BldInfFile.outputPathFragment('smoke_suite/test_resources/resource/group/bld2.inf') |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
128 |
rsc_file= buildLocation+"/testresource_/testresource_testresource.rsc" |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
129 |
|
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
130 |
|
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
131 |
t.targets = ["$(EPOCROOT)/epoc32/data/z/resource/apps/notargetkeyword.mbm", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
132 |
"$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/apps/notargetkeyword.mbm", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
133 |
"$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/apps/notargetkeyword.mbm", |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
134 |
rsc_file ] |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
135 |
|
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
136 |
t.command = "sbs -b smoke_suite/test_resources/resource/group/bld2.inf -c armv5_urel -c winscw_urel" |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
137 |
t.mustnotmatch = [] |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
138 |
t.mustmatch = [] |
24e4ef208cca
sbs version 2.14.2
Richard Taylor <richard.i.taylor@nokia.com>
parents:
591
diff
changeset
|
139 |
t.run() |
591 | 140 |
|
674 | 141 |
|
142 |
t.id = "30d" |
|
143 |
t.name = "resource_rsg_casefolding_fail" |
|
144 |
t.command = "sbs -b smoke_suite/test_resources/resource/rsg_casefolding/bld.inf RESOURCE" |
|
145 |
t.targets = [] |
|
146 |
||
147 |
t.warnings = 1 |
|
148 |
t.errors = 3 |
|
149 |
t.returncode = 1 |
|
150 |
t.run("linux") |
|
151 |
||
152 |
t.id = "30e" |
|
153 |
t.name = "resource_rsg_casefolding_pass" |
|
154 |
t.command = "sbs -b smoke_suite/test_resources/resource/rsg_casefolding/bld.inf --use-rsg-casefolding RESOURCE" |
|
155 |
t.targets = [] |
|
156 |
||
157 |
t.warnings = 0 |
|
158 |
t.errors = 0 |
|
159 |
t.returncode = 0 |
|
160 |
t.run("linux") |
|
161 |
||
162 |
||
591 | 163 |
t.name = 'resource' |
164 |
t.print_result() |
|
165 |
return t |