camappengine/asynchfilesavequeue/tsrc/public/basic/inc/AFSQTestAsynchSave.h
branchRCL_3
changeset 20 e3cdd00b5ae3
parent 19 18fa9327a158
child 21 27fe719c32e6
equal deleted inserted replaced
19:18fa9327a158 20:e3cdd00b5ae3
     1 /*
       
     2 * Copyright (c) 2002-2007 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 "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:  AsynchFSQTest test module.
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #ifndef AFSQ_TEST_ASYNCH_SAVE_H
       
    20 #define AFSQ_TEST_ASYNCH_SAVE_H
       
    21 
       
    22 
       
    23 // INCLUDES
       
    24 
       
    25 #include <e32base.h>
       
    26 #include "ASynchFSQ.h"
       
    27 #include "TestFramework/test.h"
       
    28 #include "TestFramework/TestCase.h"
       
    29 #include "TestFramework/TestCaller.h"
       
    30 #include "TestFramework/TestSuite.h"
       
    31 
       
    32 // CONSTANTS
       
    33 
       
    34 enum TTestCaseNumber
       
    35     {
       
    36     ECONSTRUCT001p1,
       
    37     EDESTRUCT001p1,
       
    38     EPRIORITY001p1,
       
    39     EADD001p1,
       
    40     EADD002p1,
       
    41     EADD003p1,
       
    42     EADD004p1,
       
    43     EADD005p1,
       
    44     EADD006p1,
       
    45     EADD007p1,
       
    46     EDEL001p1,
       
    47     EDEL002p1,
       
    48     EDEL003p1,
       
    49     EDEL004p1,
       
    50     EDEL005p1,
       
    51     EDEL006p1,
       
    52     EREN001p1,
       
    53     EREN002p1,
       
    54     EREN003p1,
       
    55     EREN004p1,
       
    56     EREN005p1,
       
    57     EREN006p1,
       
    58     ECANCEL001p1
       
    59     };
       
    60 
       
    61 
       
    62 // MACROS
       
    63 
       
    64 #define KNibbles TFileName(_L("E:\\testing\\data\\StifAFSQTest\\Nibbles.jpg"));
       
    65 #define KNibbles2 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\Nibbles2.jpg"));
       
    66 #define KNibbles3 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\Nibbles3.jpg"));
       
    67 
       
    68 #define KNibblesCANCEL001 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD001.jpg"));
       
    69 
       
    70 #define KNibblesADD001 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD001.jpg"));
       
    71 #define KNibblesADD002 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD002.jpg"));
       
    72 #define KNibblesADD003 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD003.jpg"));
       
    73 #define KNibblesADD004A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD004A.jpg"));
       
    74 #define KNibblesADD004B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD004B.jpg"));
       
    75 #define KNibblesADD005A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD005A.jpg"));
       
    76 #define KNibblesADD005B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD005B.jpg"));
       
    77 #define KNibblesADD006 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD006.jpg"));
       
    78 #define KNibblesADD007 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesADD007.jpg"));
       
    79 
       
    80 #define KNibblesDEL001 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL001.jpg"));
       
    81 #define KNibblesDEL002 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL002.jpg"));
       
    82 #define KNibblesDEL003A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL003A.jpg"));
       
    83 #define KNibblesDEL003B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL003B.jpg"));
       
    84 #define KNibblesDEL003C TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL003C.jpg"));
       
    85 #define KNibblesDEL004A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL004A.jpg"));
       
    86 #define KNibblesDEL004B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL004B.jpg"));
       
    87 #define KNibblesDEL004C TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL004C.jpg"));
       
    88 #define KNibblesDEL005A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL005A.jpg"));
       
    89 #define KNibblesDEL005B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL005B.jpg"));
       
    90 #define KNibblesDEL005C TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL005C.jpg"));
       
    91 #define KNibblesDEL006A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL006A.jpg"));
       
    92 #define KNibblesDEL006B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL006B.jpg"));
       
    93 #define KNibblesDEL006C TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesDEL006C.jpg"));
       
    94 
       
    95 #define KNibblesREN001A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN001A.jpg"));
       
    96 #define KNibblesREN001B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN001B.jpg"));
       
    97 #define KNibblesREN002A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN002A.jpg"));
       
    98 #define KNibblesREN002B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN002B.jpg"));
       
    99 #define KNibblesREN003A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN003A.jpg"));
       
   100 #define KNibblesREN003B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN003B.jpg"));
       
   101 #define KNibblesREN003C TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN003C.jpg"));
       
   102 #define KNibblesREN003A2 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN003A2.jpg"));
       
   103 #define KNibblesREN004A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN004A.jpg"));
       
   104 #define KNibblesREN004B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN004B.jpg"));
       
   105 #define KNibblesREN004C TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN004C.jpg"));
       
   106 #define KNibblesREN004A2 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN004A2.jpg"));
       
   107 #define KNibblesREN005A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN005A.jpg"));
       
   108 #define KNibblesREN005B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN005B.jpg"));
       
   109 #define KNibblesREN005C TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN005C.jpg"));
       
   110 #define KNibblesREN005A2 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN005A2.jpg"));
       
   111 #define KNibblesREN006A TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN006A.jpg"));
       
   112 #define KNibblesREN006B TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN006B.jpg"));
       
   113 #define KNibblesREN006C TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN006C.jpg"));
       
   114 #define KNibblesREN006B2 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN006B2.jpg"));
       
   115 #define KNibblesREN006C2 TFileName(_L("E:\\testing\\data\\StifAFSQTest\\NibblesREN006C2.jpg"));
       
   116 
       
   117 
       
   118 // CLASS DECLARATION
       
   119 
       
   120 class CAFSQTestAsynchSave : public CTestCase,
       
   121                             public MAsynchFSQObserver
       
   122     {
       
   123     public:
       
   124 
       
   125         CAFSQTestAsynchSave ();
       
   126         ~CAFSQTestAsynchSave ();
       
   127 
       
   128         // Allocate the resources for one test function
       
   129         void setUpL ();
       
   130 
       
   131         // Free the resources reserved in setUpL()
       
   132         void tearDown ();
       
   133 
       
   134         // A function to collect and return a suite of tests
       
   135         static MTest* suiteL ();
       
   136 
       
   137     protected:
       
   138     
       
   139         // stalling function
       
   140         void WaitForAsynchCompleteL();
       
   141 
       
   142         // Own test functions that use assertions and may leave:
       
   143         
       
   144         //constructor
       
   145         void TestFileManNewLReturnsNotNullL();   
       
   146     
       
   147         //add
       
   148         void TestAddEmptyObjectToQueueL();
       
   149         void TestAddObjectToEmptyQueueL();
       
   150         void TestAddObjectToEmptyQueueWillSaveL();
       
   151         void TestAddObjectToNonEmptyQueueL();
       
   152         void TestAddObjectToNonEmptyQueueWillSaveL();
       
   153         void TestAddObjectThatExistsAlreadyL();
       
   154         void TestAddObjectToEmptyQueueLManualStart();
       
   155     
       
   156         //delete
       
   157         void TestDeleteFromEmptyNotExistL();
       
   158         void TestDeleteFromEmptyExistsL();
       
   159         void TestDeleteNonEmptyExistsButNotInQueueL();
       
   160         void TestDeleteNonEmptyNotExistAndNotInQueueL();
       
   161         void TestDeleteInQueueNotActiveL();
       
   162         void TestDeleteInQueueActiveL();
       
   163     
       
   164         //destructor
       
   165         void TestDestructorL();
       
   166         
       
   167         //priority
       
   168         void TestSetPriorityL();
       
   169         
       
   170         //cancel
       
   171         void TestCancelL();
       
   172         
       
   173         //rename
       
   174         void TestRenameFromEmptyNotExistL();
       
   175         void TestRenameFromEmptyExistsL();
       
   176         void TestRenameNonEmptyExistsButNotInQueueL();
       
   177         void TestRenameNonEmptyNotExistAndNotInQueueL();
       
   178         void TestRenameInQueueNotActiveL();
       
   179         void TestRenameInQueueActiveL();
       
   180     
       
   181     protected:  // from MAsynchFSQObserver
       
   182     
       
   183         void MAsynchFSQEvent( TInt aError );
       
   184     
       
   185     private:
       
   186     
       
   187         CAsynchFSQ* iFSQ;
       
   188         CActiveScheduler* iScheduler;
       
   189         TTestCaseNumber currentTest;
       
   190         TBool delayedBool;
       
   191         TBool wait;
       
   192         // Needed for synchronization
       
   193         RMutex iMutex;
       
   194         TInt assertion;
       
   195         TInt numSaved;
       
   196         TInt numToSave;
       
   197         
       
   198     };
       
   199 
       
   200 #endif // AFSQ_TEST_ASYNCH_SAVE_H
       
   201