--- a/sbsv2/raptor/test/smoke_suite/resource.py Wed Apr 14 14:36:58 2010 +0100
+++ b/sbsv2/raptor/test/smoke_suite/resource.py Tue Apr 20 12:08:50 2010 +0100
@@ -15,20 +15,15 @@
#
from raptor_tests import SmokeTest
+from raptor_tests import ReplaceEnvs
+from raptor_meta import BldInfFile
def run():
t = SmokeTest()
t.id = "30"
t.name = "resource"
- t.command = "sbs -b smoke_suite/test_resources/resource/group/bld.inf -b smoke_suite/test_resources/simple_gui/Bld.inf RESOURCE"
+ t.command = "sbs -b smoke_suite/test_resources/simple_gui/Bld.inf RESOURCE"
t.targets = [
- "$(EPOCROOT)/epoc32/include/testresource.rsg",
- "$(EPOCROOT)/epoc32/include/testresource.hrh",
- "$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.r01",
- "$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.rsc",
- "$(EPOCROOT)/epoc32/localisation/group/testresource.info",
- "$(EPOCROOT)/epoc32/localisation/testresource/rsc/testresource.rpp",
-
"$(EPOCROOT)/epoc32/data/z/resource/apps/helloworld.mbm",
"$(EPOCROOT)/epoc32/localisation/group/helloworld.info",
"$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/apps/helloworld.mbm",
@@ -45,25 +40,61 @@
"$(EPOCROOT)/epoc32/release/winscw/urel/z/private/10003a3f/apps/helloworld_reg.rsc"
]
- t.addbuildtargets('smoke_suite/test_resources/resource/group/bld.inf', [
- "testresource_/testresource_resource_testresource2_sc.rpp.d",
- "testresource_/testresource_resource_testresource3_02.rpp",
- "testresource_/testresource_resource_testresource3_02.rpp.d",
- "testresource_/testresource_resource_testresource3_sc.rpp",
- "testresource_/testresource_resource_testresource3_sc.rpp.d",
- "testresource_/testresource_resource_testresource_01.rpp",
- "testresource_/testresource_resource_testresource_01.rpp.d",
- "testresource_/testresource_resource_testresource_sc.rpp",
- "testresource_/testresource_resource_testresource_sc.rpp.d"])
t.addbuildtargets('smoke_suite/test_resources/simple_gui/Bld.inf', [
"helloworld_exe/helloworld.mbm_bmconvcommands",
- "helloworld_exe/helloworld__resource_apps_sc.rpp",
- "helloworld_exe/helloworld__resource_apps_sc.rpp.d",
- "helloworld_reg_exe/helloworld_reg__private_10003a3f_apps_sc.rpp",
- "helloworld_reg_exe/helloworld_reg__private_10003a3f_apps_sc.rpp.d"])
+ "helloworld_exe/helloworld_sc.rpp",
+ "helloworld_exe/helloworld_sc.rpp.d",
+ "helloworld_reg_exe/helloworld_reg_sc.rpp",
+ "helloworld_reg_exe/helloworld_reg_sc.rpp.d"])
t.mustnotmatch = ["HelloWorld.rss.* warning: trigraph"]
t.run()
+
+ t.id="30a"
+ t.name = "no_depend_gen_resource"
+ t.usebash = True
+ t.description = """Check that dependent resources still build correctly even when we turn dependency generation off. This
+ test cannot really do this reliably, if you think about it, since it can't force make to try building resources
+ in the 'wrong' order. What it does attempt is to check that
+ the ultimately generated dependency file is ok.
+ N.B. It also attempts to ensure that the dependency file is 'minimal' i.e. that it only references .mbg and .rsg files
+ that might come from other parts of the same build. This is important for performance in situations where --no-depend-generate
+ is used because the weight of 'complete' dependency information would overwhelm make.
+ """
+ buildLocation = ReplaceEnvs("$(EPOCROOT)/epoc32/build/") + BldInfFile.outputPathFragment('smoke_suite/test_resources/resource/group/bld.inf')
+ res_depfile= buildLocation+"/dependentresource_/dependentresource_sc.rpp.d"
+
+ t.targets = [
+ "$(EPOCROOT)/epoc32/include/testresource.rsg",
+ "$(EPOCROOT)/epoc32/include/testresource.hrh",
+ "$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.r01",
+ "$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.rsc",
+ "$(EPOCROOT)/epoc32/release/armv5/urel/testresource.exe",
+ "$(EPOCROOT)/epoc32/localisation/group/testresource.info",
+ "$(EPOCROOT)/epoc32/localisation/testresource/rsc/testresource.rpp",
+ res_depfile
+ ]
+
+ t.addbuildtargets('smoke_suite/test_resources/resource/group/bld.inf', [
+ "testresource_/testresource_02.rpp",
+ "testresource_/testresource_02.rpp.d",
+ "testresource_/testresource_01.rpp",
+ "testresource_/testresource_01.rpp.d",
+ "testresource_/testresource_sc.rpp",
+ "testresource_/testresource_sc.rpp.d"])
+
+ t.command = "sbs -b smoke_suite/test_resources/resource/group/bld.inf -c armv5_urel reallyclean ; sbs --no-depend-generate -j 16 -b smoke_suite/test_resources/resource/group/bld.inf -c armv5_urel -f ${SBSLOGFILE} -m ${SBSMAKEFILE} && grep 'epoc32.include.testresource.rsg' %s && wc -l %s " % (res_depfile, res_depfile)
+
+ t.mustnotmatch = []
+
+ t.mustmatch = [
+ "4 .*.dependentresource_.dependentresource_sc.rpp.d"
+ ]
+
+ t.run()
+
+ t.name = 'resource'
+ t.print_result()
return t