diff -r 000000000000 -r bde4ae8d615e os/persistentdata/persistentstorage/sql/TEST/testexecute/SQLite/scripts/Robustness.script --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/os/persistentdata/persistentstorage/sql/TEST/testexecute/SQLite/scripts/Robustness.script Fri Jun 15 03:10:57 2012 +0200 @@ -0,0 +1,167 @@ +// Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// @file +// +// + +PRINT Run SQL Tests + +LOAD_SUITE te_SQL_Suite + +RUN_UTILS DeleteFile E:\Robustness*.db +RUN_UTILS DeleteFile T:\Robustness*.db +RUN_UTILS DeleteFile C:\Robustness*.db +RUN_UTILS DeleteFile E:\Robustness*.db-journal +RUN_UTILS DeleteFile T:\Robustness*.db-journal +RUN_UTILS DeleteFile C:\Robustness*.db-journal +RUN_UTILS DeleteFile T:\fillfile.txt +RUN_UTILS DeleteFile T:\fillfile2.txt +RUN_UTILS DeleteFile T:\fillfile4M.txt +RUN_UTILS DeleteFile E:\fillfile.txt +RUN_UTILS DeleteFile E:\fillfile2.txt +RUN_UTILS DeleteFile E:\fillfile4M.txt +RUN_UTILS DeleteFile T:\fillDisk*.txt +RUN_UTILS DeleteFile E:\fillDisk*.txt + + +START_TESTCASE SYSLIB-SQL-CIT-3348 +//! @SYMTestCaseID SYSLIB-SQL-CIT-3348 +//! @SYMTestCaseDesc Not strictly an SQL test. This step fills the disk to +//! within 4M of full an leaves that file lying around. This +//! improves the performance of the subsequent OOD tests +//! and is required for reliable behaviour within the DABS +//! framework (due to possible timeout issues). The large +//! file is removed by the script at the end. +//! This MUST be the first test to execute in the script. +//! Note that this step does nothing at all on emulator - +//! that uses the T: drive which is already < 4M. +//! @SYMTestPriority High +//! @SYMTestActions See description and the config file, also the code. +//! @SYMTestExpectedResults +//! A PASS should be generated. +//! @SYMDEF DEF095562 + + RUN_TEST_STEP 900 te_SQL_Suite CSQLCDT z:\TEF_SQL\Robustness.ini FillDisk4M +END_TESTCASE SYSLIB-SQL-CIT-3348 + +START_TESTCASE SYSLIB-SQL-CIT-1705 +//! @SYMTestCaseID SYSLIB-SQL-CIT-1705 +//! @SYMTestCaseDesc Adds a few records to a table in a new database. Begins +//! a transaction and then fills the disk. When this fails +//! with KErrDiskFull, database is closed and re-opened. This +//! is all that can be done with disk full unless space has +//! been reserved. Free up a bit of disk and then check +//! the initial records to validate the db is still usable. +//! Further records are then added and checked. +//! @SYMTestPriority High +//! @SYMTestActions See description and the config file, also the code. +//! @SYMTestExpectedResults +//! A PASS should be generated. +//! @SYMREQ REQ5792 + + PRINT MMC card on E:\ required on hardware!! + RUN_TEST_STEP 900 te_SQL_Suite CSQLCDT z:\TEF_SQL\Robustness.ini Top +END_TESTCASE SYSLIB-SQL-CIT-1705 + +RUN_UTILS DeleteFile E:\Robustness*.db +RUN_UTILS DeleteFile T:\Robustness*.db +RUN_UTILS DeleteFile C:\Robustness*.db +RUN_UTILS DeleteFile E:\Robustness*.db-journal +RUN_UTILS DeleteFile T:\Robustness*.db-journal +RUN_UTILS DeleteFile C:\Robustness*.db-journal +RUN_UTILS DeleteFile T:\fillfile.txt +RUN_UTILS DeleteFile E:\fillfile.txt +RUN_UTILS DeleteFile T:\fillfile2.txt +RUN_UTILS DeleteFile E:\fillfile2.txt + +START_TESTCASE SYSLIB-SQL-CIT-1704 +//! @SYMTestCaseID SYSLIB-SQL-CIT-1704 +//! @SYMTestCaseDesc Does an attach of a db on another drive and then fills +//! the disk that resides on. Verifies that appropriate +//! errors are returned on writing to it. Also check for +//! 'expired' RSqlStatement after DETACH and verifies that +//! the previously attached database can be deleted despite +//! having no space. +//! @SYMTestPriority High +//! @SYMTestActions See description and the config file, also the code. +//! @SYMTestExpectedResults +//! A PASS should be generated. +//! @SYMREQ REQ5792 + + PRINT INFO: MMC card on E:\ required on hardware!! + RUN_TEST_STEP 900 te_SQL_Suite CSQLCDT z:\TEF_SQL\Robustness.ini Attach +END_TESTCASE SYSLIB-SQL-CIT-1704 + +RUN_UTILS DeleteFile E:\Robustness*.db +RUN_UTILS DeleteFile T:\Robustness*.db +RUN_UTILS DeleteFile C:\Robustness*.db +RUN_UTILS DeleteFile E:\Robustness*.db-journal +RUN_UTILS DeleteFile T:\Robustness*.db-journal +RUN_UTILS DeleteFile C:\Robustness*.db-journal +RUN_UTILS DeleteFile T:\fillfile.txt +RUN_UTILS DeleteFile E:\fillfile.txt +RUN_UTILS DeleteFile T:\fillfile2.txt +RUN_UTILS DeleteFile E:\fillfile2.txt + +START_TESTCASE SYSLIB-SQL-CIT-1741 +//! @SYMTestCaseID SYSLIB-SQL-CIT-1741 +//! @SYMTestCaseDesc 'FillTest' adds some data into its database and checks +//! it. It then triggers 'DeleteTest' and waits. +//! DeleteTest creates its own, separate database. +//! It then reserves space, and then fills the disk +//! with writes to a database table. Once it receives +//! KErrDiskFull it enables the reserved disk space and +//! attempts to add two more records - this should be +//! successful. It then signals 'FillTest' back, and waits. +//! 'FillTest' attempts to add records to its own db. These +//! are small, so a number work. It then receives KErrDiskFull. +//! DeleteTest is signalled and FillTest waits. +//! 'DeleteTest' attempts to delete a few records. This should +//! be successful - we have reserved space. Reserved space is +//! then released by 'DeleteTest', 'FillTest' is signalled +//! and 'DeleteTest' waits. +//! 'FillTest' had no reserved space so just closes it's db, +//! deletes it, signals 'DeleteTest' back and dies. +//! 'DeleteTest' releases reserved space a second time +//! (which gives no error) and cleans up. +//! +//! @SYMTestPriority High +//! @SYMTestActions See description and the config file, also the code. +//! @SYMTestExpectedResults +//! A PASS should be generated. +//! @SYMREQ REQ5792 +// + + PRINT MMC card on E:\ required on hardware!! +CONCURRENT +// DeleteTest's first action is to wait for a signal from FillTest. It *must* +// be running when FillTest sends it signal, so lets have it first.. + RUN_TEST_STEP 1800 te_SQL_Suite CSQLCDT z:\TEF_SQL\Robustness.ini DeleteTest + RUN_TEST_STEP 1800 te_SQL_Suite CSQLCDT z:\TEF_SQL\Robustness.ini FillTest +END_TESTCASE SYSLIB-SQL-CIT-1741 + +RUN_UTILS DeleteFile E:\Robustness*.db +RUN_UTILS DeleteFile T:\Robustness*.db +RUN_UTILS DeleteFile C:\Robustness*.db +RUN_UTILS DeleteFile E:\Robustness*.db-journal +RUN_UTILS DeleteFile T:\Robustness*.db-journal +RUN_UTILS DeleteFile C:\Robustness*.db-journal +RUN_UTILS DeleteFile T:\fillfile.txt +RUN_UTILS DeleteFile E:\fillfile.txt +RUN_UTILS DeleteFile T:\fillfile2.txt +RUN_UTILS DeleteFile E:\fillfile2.txt +RUN_UTILS DeleteFile T:\fillfile4M.txt +RUN_UTILS DeleteFile E:\fillfile4M.txt +RUN_UTILS DeleteFile T:\fillDisk*.txt +RUN_UTILS DeleteFile E:\fillDisk*.txt