installationservices/swi/test/tuiscriptadaptors/scripts/testpreinstalled.script
changeset 0 ba25891c3a9e
child 25 7333d7932ef7
equal deleted inserted replaced
-1:000000000000 0:ba25891c3a9e
       
     1 //
       
     2 // Copyright (c) 2009 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 //! @file
       
    17 // SWIS unit (integration) tests for upgrades
       
    18 PRINT Run all SWIS tests
       
    19 LOAD_SUITE tuiscriptadaptors
       
    20 
       
    21 //! @SYMTestCaseID 		API-SEC-UISA-PreInstalledTest-I-0001
       
    22 //! @SYMTestCaseDesc 		Test pre-installed media
       
    23 //! @SYMTestPriority 		High
       
    24 //! @SYMTestActions 		Perform various tests on pre-installed media applications
       
    25 //! @SYMTestExpectedResults 	Files installed/uninstalled.
       
    26 //! @SYMDevelopedForRelease 	Yankee
       
    27 
       
    28 START_TESTCASE API-SEC-UISA-PreInstalledTest-I-0001
       
    29 
       
    30 // Copy files into place on the pre-installed drives
       
    31 RUN_UTILS MKDIR e:\tswi\
       
    32 RUN_UTILS MKDIR e:\tswi\preinstalled\
       
    33 RUN_UTILS COPYFILE z:\tswi\tuiscriptadaptors\data\preinstalledinstall.txt e:\tswi\preinstalled\preinstalledinstall.txt
       
    34 RUN_UTILS MAKEREADWRITE e:\tswi\preinstalled\preinstalledinstall.txt
       
    35 RUN_UTILS COPYFILE z:\tswi\tuiscriptadaptors\data\preinstalledinstall.txt e:\tswi\preinstalled\preinstalledpatch.txt
       
    36 RUN_UTILS MAKEREADWRITE e:\tswi\preinstalled\preinstalledpatch.txt
       
    37 RUN_UTILS COPYFILE z:\tswi\tuiscriptadaptors\data\preinstalledinstall.txt e:\tswi\preinstalled\preinstalledpatch2.txt
       
    38 RUN_UTILS MAKEREADWRITE e:\tswi\preinstalled\preinstalledpatch2.txt
       
    39 RUN_UTILS COPYFILE z:\tswi\tsis\data\Root5CA\dsa_len1\testpreinstalled_install_dsa_l1.sis e:\testpreinstalled_install_dsa_l1.sis
       
    40 RUN_UTILS MAKEREADWRITE e:\testpreinstalled_install_dsa_l1.sis
       
    41 RUN_UTILS COPYFILE z:\tswi\tsis\data\Root5CA\dsa_len1\testpreinstalled_patch2_dsa_l1.sis e:\testpreinstalled_patch2_dsa_l1.sis
       
    42 RUN_UTILS MAKEREADWRITE e:\testpreinstalled_patch2_dsa_l1.sis
       
    43 RUN_UTILS COPYFILE z:\tswi\tsis\data\Root5CA\dsa_len1\testpreinstalled_patch_dsa_l1.sis e:\testpreinstalled_patch_dsa_l1.sis
       
    44 RUN_UTILS MAKEREADWRITE e:\testpreinstalled_patch_dsa_l1.sis
       
    45 
       
    46 
       
    47 // pre-installed normal application
       
    48 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_install
       
    49 // pre-installed patch
       
    50 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch2
       
    51 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_install
       
    52 
       
    53 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini base
       
    54 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch
       
    55 RUN_TEST_STEP 100 tuiscriptadaptors UninstallAugStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_patch
       
    56 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_base
       
    57 
       
    58 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini base
       
    59 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch
       
    60 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_base
       
    61 
       
    62 
       
    63 // test a normal install with a preinstalled patch
       
    64 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini base2
       
    65 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch2
       
    66 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_base2
       
    67 
       
    68 
       
    69 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini base2
       
    70 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch2
       
    71 RUN_TEST_STEP 100 tuiscriptadaptors UninstallAugStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_patch2
       
    72 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_base2
       
    73 
       
    74 RUN_UTILS DeleteFile e:\testpreinstalled_install.sis
       
    75 RUN_UTILS DeleteFile e:\testpreinstalled_patch.sis
       
    76 RUN_UTILS DeleteFile e:\testpreinstalled_patch2.sis
       
    77 
       
    78 // Install Helloworld application suite; this includes an exe which can be used to launch the preinstalled exe
       
    79 // and leave it running while proceeding to the next step.
       
    80 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testappinuse.ini helloworld
       
    81 
       
    82 // Test correct install and uninstall of a pre-installed package with an exe.
       
    83 // First copy exes into sys\bin on the e: drive.
       
    84 RUN_TEST_STEP 10 tuiscriptadaptors MmcCopyFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini setup_preinstalled_exe
       
    85 
       
    86 // Install the preinstalled package; this will add the exe's hash to c:\sys\hash
       
    87 RUN_TEST_STEP 10 tuiscriptadaptors InstallFHStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_exe
       
    88 
       
    89 // Run pre-installed exe. Note that runtestexe runs the command provided as an argument and exits, leaving the child
       
    90 // process running. The other exe, preinstalled_console_app, will keep running for the specified number of microseconds
       
    91 // unless killed.
       
    92 RUN_PROGRAM -1 runtestexe preinstalled_console_app -s 4000000 
       
    93 RUN_TEST_STEP 5 tuiscriptadaptors FindRunningExe z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini consoleapp_running
       
    94 
       
    95 // Let the run complete.
       
    96 DELAY 4000
       
    97 
       
    98 RUN_TEST_STEP 10 tuiscriptadaptors MmcCopyFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini setup_preinstalled_exe_patch
       
    99 
       
   100 // Install a pre-installed patch with an additional exe (a duplicate of runtestexe with a different UID3.)
       
   101 RUN_TEST_STEP 10 tuiscriptadaptors InstallFHStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_exe_patch
       
   102 
       
   103 // Run base executable using the launcher supplied in the patch.
       
   104 RUN_PROGRAM -1 preinstalled_runtestexe2 preinstalled_console_app -s 4000000 
       
   105 RUN_TEST_STEP 5 tuiscriptadaptors FindRunningExe z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini consoleapp_running
       
   106 
       
   107 // Uninstall the patch; this won't kill the base exe.
       
   108 RUN_TEST_STEP 100 tuiscriptadaptors UninstallAugStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_exe_patch
       
   109 
       
   110 // Let the run complete.
       
   111 DELAY 4000
       
   112 
       
   113 // Check that the base exe can still be run.
       
   114 RUN_PROGRAM -1 runtestexe preinstalled_console_app -s 4000000 
       
   115 RUN_TEST_STEP 5 tuiscriptadaptors FindRunningExe z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini consoleapp_running
       
   116 
       
   117 // Uninstall.  This should kill the console app if it's still running, and remove only the hash.
       
   118 RUN_TEST_STEP 5 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_exe
       
   119 
       
   120 // The console app shouldn't be running now.
       
   121 RUN_TEST_STEP_RESULT 106 tuiscriptadaptors FindRunningExe z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini consoleapp_running
       
   122 
       
   123 // Check that we can successfully install and uninstall the preinstalled package and patch again
       
   124 RUN_TEST_STEP 10 tuiscriptadaptors InstallFHStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_exe
       
   125 RUN_TEST_STEP 10 tuiscriptadaptors InstallFHStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_exe_patch
       
   126 RUN_TEST_STEP 10 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_exe
       
   127 
       
   128 // Delete pre-installed files
       
   129 RUN_TEST_STEP 10 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_preinstalled_exe
       
   130 RUN_TEST_STEP 10 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_preinstalled_exe_patch
       
   131 
       
   132 // Uninstall the helloworld package.
       
   133 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testappinuse.ini u_helloworld
       
   134 
       
   135 END_TESTCASE API-SEC-UISA-PreInstalledTest-I-0001
       
   136 
       
   137 
       
   138 //! @SYMTestCaseID 		API-SEC-UISA-PreInstalledTest-I-0002
       
   139 //! @SYMTestCaseDesc 		Checks that sis registry correctly indicates preinstalled apps are present based on
       
   140 //! 				presence of installed drives.
       
   141 //! @SYMDEF 			INC080064
       
   142 //! @SYMTestPriority 		High
       
   143 //! @SYMTestActions  		Installs app, checks sisregistry indicated presence of app through unmounts and remounts of MMC card, and
       
   144 //! 				after uninstall.
       
   145 //! @SYMTestExpectedResults 	Registry does not indicate app is present unless drive it is installed on is present.
       
   146 //! @SYMDevelopedForRelease 	Mike
       
   147 
       
   148 START_TESTCASE API-SEC-UISA-PreInstalledTest-I-0002
       
   149 
       
   150 RUN_UTILS CopyFile z:\tswi\tsis\data\testpreinstalled_install_x.sis x:\testpreinstalled_install_x.sis
       
   151 RUN_UTILS CopyFile z:\tswi\tsis\data\testpreinstalled_patch_x.sis x:\testpreinstalled_patch_x.sis
       
   152 RUN_UTILS MakeReadWrite x:\testpreinstalled_install_x.sis
       
   153 RUN_UTILS MakeReadWrite x:\testpreinstalled_patch_x.sis
       
   154 
       
   155 // Copy preinstalled file to X drive.
       
   156 RUN_TEST_STEP 10 tuiscriptadaptors MmcCopyFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini setup_preinstalled_install_x
       
   157 
       
   158 // Install preinstalled app on MMC.
       
   159 RUN_TEST_STEP 100 tuiscriptadaptors InstallFHStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_install_x
       
   160 
       
   161 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_install_present_x
       
   162 
       
   163 // Check that sisregistry indicates the app is not present when the drive is removed
       
   164 RUN_TEST_STEP 100 tuiscriptadaptors MmcUnMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   165 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_install_absent_x
       
   166 
       
   167 // Check that sisregistry indicates the app is present when the drive is re-inserted.
       
   168 RUN_TEST_STEP 100 tuiscriptadaptors MmcMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   169 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_install_present_x
       
   170 RUN_TEST_STEP 100 tuiscriptadaptors MmcCheckFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_install_x
       
   171 
       
   172 // Uninstall
       
   173 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_install_x
       
   174 
       
   175 RUN_TEST_STEP 10 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_preinstalled_install_x
       
   176 
       
   177 END_TESTCASE API-SEC-UISA-PreInstalledTest-I-0002
       
   178 
       
   179 
       
   180 //! @SYMTestCaseID 		API-SEC-UISA-PreInstalledTest-I-0003
       
   181 //! @SYMTestCaseDesc 		Checks that sis registry correctly indicates preinstalled patches are present based on
       
   182 //! 				presence of installed drives.
       
   183 //! @SYMDEF 			INC080064
       
   184 //! @SYMTestPriority 		High
       
   185 //! @SYMTestActions  		Installs app, checks sisregistry indicated presence of app through unmounts and remounts of MMC card, and
       
   186 //! 				after uninstall.
       
   187 //! @SYMTestExpectedResults 	Registry does not indicate app is present unless drive it is installed on is present.
       
   188 //! @SYMDevelopedForRelease 	Mike
       
   189 
       
   190 START_TESTCASE API-SEC-UISA-PreInstalledTest-I-0003
       
   191 
       
   192 // Install base app
       
   193 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini selfsigned_base
       
   194 
       
   195 // Copy preinstalled patch to X drive.
       
   196 RUN_TEST_STEP 10 tuiscriptadaptors MmcCopyFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini setup_preinstalled_patch_x
       
   197 // Install preinstalled patch on MMC.
       
   198 RUN_TEST_STEP 100 tuiscriptadaptors InstallFHStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch_x
       
   199 
       
   200 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch_present
       
   201 
       
   202 // Check that sisregistry indicates the app is not present when the drive is removed
       
   203 RUN_TEST_STEP 100 tuiscriptadaptors MmcUnMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   204 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch_absent
       
   205 
       
   206 // Check that sisregistry indicates the app is present when the drive is re-inserted.
       
   207 RUN_TEST_STEP 100 tuiscriptadaptors MmcMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   208 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_patch_present
       
   209 
       
   210 // Remove patch
       
   211 RUN_TEST_STEP 100 tuiscriptadaptors UninstallAugStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_patch_x
       
   212 
       
   213 RUN_TEST_STEP 10 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_preinstalled_patch_x
       
   214 
       
   215 // Remove base app
       
   216 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_base
       
   217 
       
   218 RUN_UTILS DeleteFile x:\testpreinstalled_install_x.sis
       
   219 RUN_UTILS DeleteFile x:\testpreinstalled_patch_x.sis
       
   220 
       
   221 RUN_UTILS DELETEFILE e:\tswi\preinstalled\preinstalledinstall.txt
       
   222 RUN_UTILS DELETEFILE e:\tswi\preinstalled\preinstalledpatch.txt
       
   223 RUN_UTILS DELETEFILE e:\tswi\preinstalled\preinstalledpatch2.txt
       
   224 RUN_UTILS DELETEFILE e:\testpreinstalled_install_dsa_l1.sis
       
   225 RUN_UTILS DELETEFILE e:\testpreinstalled_patch2_dsa_l1.sis
       
   226 RUN_UTILS DELETEFILE e:\testpreinstalled_patch_dsa_l1.sis
       
   227 
       
   228 END_TESTCASE API-SEC-UISA-PreInstalledTest-I-0003
       
   229 
       
   230 
       
   231 //! @SYMTestCaseID 		API-SEC-testPA-drive-rewrite-0001
       
   232 //! @SYMTestCaseDesc 		Test that PA SIS files can be installed on any drive.
       
   233 //! @SYMDevelopedForRelease 	Naiad
       
   234 
       
   235 // Check that all stub references (e.g. e:\foo) are re-written
       
   236 // to the drive letter where the SIS file resides. In this test
       
   237 // case use a SIS which references e:\tswi\preinstalled\preinstalledinstall.txt
       
   238 // Copy this file from the ROM to x:, and check that this SIS
       
   239 // file installs on x: instead of e: successfully
       
   240 
       
   241 START_TESTCASE API-SEC-testPA-drive-rewrite-0001
       
   242 
       
   243 RUN_UTILS CopyFile z:\tswi\tsis\data\testpreinstalled_install.sis x:\testPA.sis
       
   244 RUN_UTILS MakeReadWrite x:\testPA.sis
       
   245 RUN_UTILS MKDIR x:\tswi\
       
   246 RUN_UTILS MKDIR x:\tswi\preinstalled\
       
   247 RUN_UTILS CopyFile z:\tswi\tuiscriptadaptors\data\preinstalledinstall.txt x:\tswi\preinstalled\preinstalledinstall.txt
       
   248 
       
   249 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini testPA_driverewrite
       
   250 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_testPA_driverewrite
       
   251 
       
   252 RUN_UTILS DELETEFILE x:\tswi\preinstalled\preinstalledinstall.txt
       
   253 RUN_UTILS DELETEFILE x:\testPA.sis
       
   254 
       
   255 END_TESTCASE API-SEC-testPA-drive-rewrite-0001
       
   256 
       
   257 
       
   258 //! @SYMTestCaseID 		API-SEC-testPP-drive-rewrite-0001
       
   259 //! @SYMTestCaseDesc 		Test that PP SIS files can be installed on any drive.
       
   260 //! @SYMDevelopedForRelease 	Naiad
       
   261 
       
   262 // Check that all stub references (e.g. e:\foo) are re-written
       
   263 // to the drive letter where the SIS file resides. In this test
       
   264 // case use a SIS which references e:\tswi\preinstalled\preinstalledinstall.txt
       
   265 // Copy this file from the ROM to x:, and check that this SIS
       
   266 // file installs on x: instead of e: successfully
       
   267 
       
   268 START_TESTCASE API-SEC-testPP-drive-rewrite-0001
       
   269 
       
   270 RUN_UTILS CopyFile z:\tswi\tsis\data\testpreinstalled_patch.sis x:\testPP.sis
       
   271 RUN_UTILS CopyFile z:\tswi\tsis\data\testpreinstalled_base.sis  x:\testPPbase.sis
       
   272 RUN_UTILS MakeReadWrite x:\testPP.sis
       
   273 RUN_UTILS MakeReadWrite x:\testPPbase.sis
       
   274 RUN_UTILS COPYFILE z:\tswi\tuiscriptadaptors\data\preinstalledinstall.txt x:\tswi\preinstalled\preinstalledpatch.txt
       
   275 
       
   276 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini testPPbase_driverewrite
       
   277 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini testPP_driverewrite
       
   278 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_testPP_driverewrite
       
   279 
       
   280 RUN_UTILS DELETEFILE x:\tswi\preinstalled\preinstalledpatch.txt
       
   281 RUN_UTILS DELETEFILE x:\Documents\InstTest\preinstalledbase.txt
       
   282 RUN_UTILS DELETEFILE x:\testPPbase.sis
       
   283 RUN_UTILS DELETEFILE x:\testPP.sis
       
   284 
       
   285 END_TESTCASE API-SEC-testPP-drive-rewrite-0001
       
   286 
       
   287 
       
   288 //! @SYMTestCaseID 		API-SEC-testPA-multiple-drive-0001
       
   289 //! @SYMTestCaseDesc 		Test that PA SIS file referencing more than one drive cannot be installed
       
   290 //! @SYMDevelopedForRelease 	Naiad
       
   291 
       
   292 // Check that a PA SIS file referencing files in e: and c:
       
   293 // doesn't install, and fails with KErrSISInvalidTargetFile.
       
   294 // See INC109356 for more information.
       
   295 
       
   296 START_TESTCASE API-SEC-testPA-multiple-drive-0001
       
   297 
       
   298 RUN_UTILS CopyFile z:\tswi\tsis\data\testpreinstalled_multiple.sis e:\testpreinstalled_multiple.sis
       
   299 RUN_UTILS MakeReadWrite e:\testpreinstalled_multiple.sis
       
   300 RUN_UTILS CopyFile z:\tswi\tuiscriptadaptors\data\preinstalledinstall.txt e:\tswi\preinstalled\preinstalledinstall.txt
       
   301 RUN_UTILS CopyFile z:\tswi\tuiscriptadaptors\data\preinstalledinstall.txt c:\tswi\preinstalled\preinstalledinstall.txt
       
   302 
       
   303 RUN_TEST_STEP_RESULT -10146 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini testPA_multiple
       
   304 
       
   305 RUN_UTILS DELETEFILE e:\testpreinstalled_multiple.sis
       
   306 RUN_UTILS DELETEFILE e:\tswi\preinstalled\preinstalledinstall.txt
       
   307 RUN_UTILS DELETEFILE c:\tswi\preinstalled\preinstalledinstall.txt
       
   308 
       
   309 END_TESTCASE API-SEC-testPA-multiple-drive-0001
       
   310 
       
   311 
       
   312 //! @SYMTestCaseID 		API-SEC-propagatedStub-0001
       
   313 //! @SYMTestCaseDesc 		Test that propagated SIS stub files cannot reference files on a different drive letter to where the SIS stub file is located
       
   314 //! @SYMTestPriority 		High
       
   315 //! @SYMTestExpectedResults 	No installation
       
   316 //! @SYMDevelopedForRelease 	Mike
       
   317 
       
   318 // Test SIS stub files for propagations; check that propagated
       
   319 // stub SIS files cannot reference files on other drive letters
       
   320 // from the drive they're being installed from.
       
   321 
       
   322 // This script requires the SWIPolicy AllowPackagePropagate to be true in order to pass
       
   323 
       
   324 PRINT Run Removable media SIS stub installation test
       
   325 PRINT SWIPolicy AllowPackagePropagate must be set to true for these tests to pass
       
   326 
       
   327 START_TESTCASE API-SEC-propagatedStub-0001
       
   328 
       
   329 // make sure any previous installation of simple.sis is removed
       
   330 // X: is the default removable drive on Symbian OS
       
   331 RUN_UTILS DeleteFile x:\Documents\InstTest\file1.txt
       
   332 RUN_UTILS DeleteFile x:\private\10202dce\80000001_0.sis
       
   333 RUN_UTILS DeleteFile x:\80000001_0.sis
       
   334 RUN_UTILS DeleteFile x:\file1.txt
       
   335 
       
   336 /// Simple file installation from a compressed SIS file
       
   337 // Install the full SIMPLE.SIS file
       
   338 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini simple
       
   339 
       
   340 // Copy the stub that was created and the file1.txt installed by SIMPLE.SIS
       
   341 RUN_UTILS CopyFile x:\private\10202dce\80000001_0.sis x:\80000001_0.sis
       
   342 RUN_UTILS CopyFile x:\Documents\InstTest\file1.txt x:\file1.txt
       
   343 
       
   344 // Uninstall SIMPLE.SIS
       
   345 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_simple
       
   346 
       
   347 // Now put the file1.txt back in place and install the copy of the stub that was created earlier
       
   348 // Need to install the copy of the stub from x:\ because tuiscriptadaptors cant access the \private\10202dce\ directroy
       
   349 RUN_UTILS MkDir x:\Documents\
       
   350 RUN_UTILS MkDir x:\Documents\InstTest\
       
   351 RUN_UTILS CopyFile x:\file1.txt x:\Documents\InstTest\file1.txt
       
   352 RUN_UTILS DeleteFile x:\file1.txt
       
   353 
       
   354 // Copy the stub back into position on the C: drive
       
   355 // This should now fail to install, as has been moved
       
   356 // from the x: drive, where the files are located
       
   357 
       
   358 RUN_UTILS MkDir c:\private\
       
   359 RUN_UTILS MkDir c:\private\10202dce\
       
   360 RUN_UTILS CopyFile x:\80000001_0.sis c:\private\10202dce\80000001_0.sis
       
   361 
       
   362 // Install propagated stub and check this now fails to install
       
   363 // This actually fails with KErrInvalidEclipsing, as for a propagated stub
       
   364 // the drive references are converted to ! at installation time, and then
       
   365 // an eclipse of the data file on x: is detected as we're installing
       
   366 // the propagated SIS stub file from c:
       
   367 RUN_TEST_STEP_RESULT -10257 100 tuiscriptadaptors InstallFHStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini simplestub
       
   368 
       
   369 // Remove the copies of files that we created
       
   370 RUN_UTILS DeleteFile x:\80000001_0.sis
       
   371 RUN_UTILS DeleteFile x:\Documents\InstTest\file1.txt
       
   372 RUN_UTILS DeleteFile c:\private\10202dce\80000001_0.sis
       
   373 
       
   374 END_TESTCASE API-SEC-propagatedStub-0001
       
   375 
       
   376 
       
   377 //! @SYMTestCaseID 		API-SEC-PuForPaNotAllowed-0001
       
   378 //! @SYMTestCaseDesc 		Test that a Partial Upgrade of a Preinstalled Application is not allowed.
       
   379 //! @SYMDEF 			PDEF082521
       
   380 //! @SYMTestPriority 		High
       
   381 //! @SYMTestExpectedResults 	No installation
       
   382 //! @SYMDevelopedForRelease 	Mike
       
   383 
       
   384 START_TESTCASE API-SEC-PuForPaNotAllowed-0001
       
   385 
       
   386 // Copy files into place on the pre-installed drives
       
   387 RUN_UTILS MKDIR e:\tswi\
       
   388 RUN_UTILS MKDIR e:\tswi\preinstalled\
       
   389 RUN_UTILS COPYFILE z:\tswi\tuiscriptadaptors\data\preinstalledinstall.txt e:\tswi\preinstalled\preinstalledinstall.txt
       
   390 RUN_UTILS MAKEREADWRITE e:\tswi\preinstalled\preinstalledinstall.txt
       
   391 RUN_UTILS COPYFILE z:\tswi\tsis\data\Root5CA\dsa_len1\testpreinstalled_install_dsa_l1.sis e:\testpreinstalled_install_dsa_l1.sis
       
   392 RUN_UTILS MAKEREADWRITE e:\testpreinstalled_install_dsa_l1.sis
       
   393 
       
   394 // pre-installed normal application
       
   395 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini preinstalled_install
       
   396 
       
   397 // Try to install a partial upgrade (PU) to a preinstalled app (PA)
       
   398 // This should fail with a KErrInvalidUpgrade -10256
       
   399 RUN_TEST_STEP_RESULT -10256 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\tuiscriptadaptors.ini testpuforpanotallowed
       
   400 
       
   401 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_preinstalled_install
       
   402 
       
   403 RUN_UTILS DELETEFILE e:\tswi\preinstalled\preinstalledinstall.txt
       
   404 RUN_UTILS DELETEFILE e:\testpreinstalled_install_dsa_l1.sis
       
   405 
       
   406 END_TESTCASE API-SEC-PuForPaNotAllowed-0001
       
   407 
       
   408 
       
   409 //! @SYMTestCaseID 		API-SEC-MissingSisRegistry-0001
       
   410 //! @SYMTestCaseDesc 		Test that installation is successful when a preinstalled sis registry file or folder is missing
       
   411 //! @SYMDEF 			DEF099689
       
   412 //! @SYMTestPriority 		Medium
       
   413 //! @SYMTestExpectedResults 	Successful installation/uninstallation
       
   414 //! @SYMDevelopedForRelease 	Nile
       
   415 
       
   416 START_TESTCASE API-SEC-MissingSisRegistry-0001
       
   417 
       
   418 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry
       
   419 RUN_TEST_STEP 100 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_regfile
       
   420 RUN_UTILS DeleteFile c:\Documents\InstTest\def099689.txt
       
   421 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry
       
   422 RUN_TEST_STEP 100 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_ctlfile
       
   423 RUN_UTILS DeleteFile c:\Documents\InstTest\def099689.txt
       
   424 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry
       
   425 RUN_UTILS DeleteDir c:\sys\install\sisregistry\80099689\
       
   426 RUN_UTILS DeleteFile c:\Documents\InstTest\def099689.txt
       
   427 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry
       
   428 
       
   429 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry_1
       
   430 RUN_TEST_STEP 100 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_regfile
       
   431 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_missing_registry_1
       
   432 RUN_UTILS DeleteFile c:\Documents\InstTest\def099689.txt
       
   433 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry
       
   434 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry_1
       
   435 RUN_TEST_STEP 100 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_ctlfile
       
   436 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_missing_registry_1
       
   437 RUN_UTILS DeleteFile c:\Documents\InstTest\def099689.txt
       
   438 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry
       
   439 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry_1
       
   440 RUN_UTILS DeleteDir c:\sys\install\sisregistry\80099689\
       
   441 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_missing_registry_1
       
   442 RUN_UTILS DeleteFile c:\Documents\InstTest\def099689.txt
       
   443 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini missing_registry
       
   444 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_missing_registry
       
   445 
       
   446 END_TESTCASE API-SEC-MissingSisRegistry-0001
       
   447 
       
   448 
       
   449 //! @SYMTestCaseID 		API-SEC-Controller-0001
       
   450 //! @SYMTestCaseDesc 		Test that when a MMC card is mount, if the .ctl file does not have the same hash as in the sisregistry
       
   451 //				the sisregistry would not be present
       
   452 //! @SYMDEF 			PDEF114615
       
   453 //! @SYMTestPriority 		High
       
   454 //! @SYMTestExpectedResults 	No installation
       
   455 //! @SYMDevelopedForRelease 	Sphinx
       
   456 
       
   457 START_TESTCASE API-SEC-Controller-0001
       
   458 
       
   459 // Install the full TEXTFILE.SIS file
       
   460 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile
       
   461 
       
   462 // Check that the registry is present
       
   463 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile_present
       
   464 
       
   465 // Save the .ctl file
       
   466 RUN_UTILS CopyFile x:\sys\install\sisregistry\80000001\00000000_0000.ctl x:\00000000_0000.ctl
       
   467 
       
   468 // Delete the x:\sys\install\sisregistry\80000001\00000000_0000.ctl file
       
   469 RUN_TEST_STEP 10 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_textfile_ctlfile
       
   470 
       
   471 // Copy another package .ctl file to x:\sys\install\sisregistry\80000001\00000000_0000.ctl
       
   472 RUN_TEST_STEP 10 tuiscriptadaptors MmcCopyFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini copy_textfile_ctlfile
       
   473 
       
   474 RUN_TEST_STEP 100 tuiscriptadaptors MmcUnMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   475 
       
   476 RUN_TEST_STEP 100 tuiscriptadaptors MmcMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   477 
       
   478 // Check that the registry is not present
       
   479 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile_absent
       
   480 
       
   481 // Restore the original .ctl file to x:\sys\install\sisregistry\80000001\00000000_0000.ctl
       
   482 RUN_TEST_STEP 10 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_textfile_ctlfile
       
   483 RUN_TEST_STEP 10 tuiscriptadaptors MmcCopyFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini copy_textfile_ctlfile2
       
   484 
       
   485 RUN_TEST_STEP 100 tuiscriptadaptors MmcUnMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   486 
       
   487 RUN_TEST_STEP 100 tuiscriptadaptors MmcMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   488 
       
   489 // Check that the registry is okay now.
       
   490 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile_present
       
   491 
       
   492 // Uninstall TEXTFILE.SIS
       
   493 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_textfile
       
   494 
       
   495 RUN_UTILS DeleteFile x:\00000000_0000.ctl
       
   496 
       
   497 END_TESTCASE API-SEC-Controller-0001
       
   498 
       
   499 
       
   500 //! @SYMTestCaseID 		API-SEC-Controller-0002
       
   501 //! @SYMTestCaseDesc 		Test that when a MMC card is mount, as long as the .ctl file comes from the same sisfile,
       
   502 //				the trust status of the .ctl does not matter
       
   503 //! @SYMDEF 			PDEF114615
       
   504 //! @SYMTestPriority 		High
       
   505 //! @SYMTestExpectedResults 	No installation
       
   506 //! @SYMDevelopedForRelease 	Sphinx
       
   507 
       
   508 START_TESTCASE API-SEC-Controller-0002
       
   509 
       
   510 /// Simple file installation from a compressed SIS file
       
   511 // Install the full TEXTFILE_ROOT5CA.SIS file
       
   512 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile_root5ca
       
   513 
       
   514 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile_present
       
   515 
       
   516 // Save the .ctl file
       
   517 RUN_UTILS CopyFile x:\sys\install\sisregistry\80000001\00000000_0000.ctl x:\00000000_0000.ctl
       
   518 
       
   519 // Uninstall TEXTFILE_ROOT5CA.SIS
       
   520 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_textfile
       
   521 
       
   522 // Install the TEXTFILE.SIS file
       
   523 RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile
       
   524 
       
   525 // Check that the registry is present
       
   526 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile_present
       
   527 
       
   528 // Delete the x:\sys\install\sisregistry\80000001\00000000_0000.ctl file
       
   529 RUN_TEST_STEP 10 tuiscriptadaptors MmcDeleteFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini delete_textfile_ctlfile
       
   530 
       
   531 // Copy the .ctl file from the previous root5ca version to x:\sys\install\sisregistry\80000001\00000000_0000.ctl
       
   532 RUN_TEST_STEP 10 tuiscriptadaptors MmcCopyFilesStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini copy_textfile_ctlfile2
       
   533 
       
   534 RUN_TEST_STEP 100 tuiscriptadaptors MmcUnMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   535 
       
   536 RUN_TEST_STEP 100 tuiscriptadaptors MmcMountStep z:\tswi\tuiscriptadaptors\scripts\drives.ini X
       
   537 
       
   538 // Check that the registry is okay
       
   539 RUN_TEST_STEP 100 tuiscriptadaptors MmcAskRegistry z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini textfile_present
       
   540 
       
   541 // Uninstall TEXTFILE.SIS
       
   542 RUN_TEST_STEP 100 tuiscriptadaptors UninstallStep z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini u_textfile
       
   543 
       
   544 RUN_UTILS DeleteFile x:\00000000_0000.ctl
       
   545 
       
   546 END_TESTCASE API-SEC-Controller-0002
       
   547 
       
   548 
       
   549 RUN_TEST_STEP 100 tuiscriptadaptors ForceRemove z:\tswi\tuiscriptadaptors\scripts\testpreinstalled.ini removedummyswiplugin
       
   550 
       
   551 // Ensure that SWIS shuts down after the above tests to make sure heap checks run
       
   552 RUN_TEST_STEP 5 tuiscriptadaptors SwisNotRunning