--- a/camappengine/asynchfilesavequeue/tsrc/public/basic/src/AFSQTestAdd.cpp Fri Mar 19 09:33:47 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,530 +0,0 @@
-/*
-* Copyright (c) 2002-2007 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: FSQ Test DLL
-*
-*/
-
-
-#include "../inc/AFSQTestAsynchSave.h"
-#include <f32file.h> // for opening / creating files
-#include <bautils.h> // for deleting files
-
-void CAFSQTestAsynchSave::TestAddEmptyObjectToQueueL()
- {
- // Group: Asynch Save
- //
- // ID: CAE.FM.TESTADDOBJECT.001
- //
- // Action : Test that adding an null object to the queue will return an error.
- //
- // Output : An error code.
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddEmptyObjectToQueueL in") );
-
- TInt error = KErrNone;
- currentTest = EADD001p1;
- numSaved = 0;
- wait = ETrue;
-
- HBufC8 * myData = HBufC8::NewL(1000);
- delete myData;
- myData = NULL;
-
- TRAPD( err,
- iFSQ = CAsynchFSQ::NewL();
- iFSQ->SetCallback( this );
- TFileName add001 = KNibblesADD001;
- error = iFSQ->SaveAndDestroy( *myData, add001);
- );
- TRAPD( err2,
- delete iFSQ;
- iFSQ = NULL;
- );
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddEmptyObjectToQueueL isKErrArgument=%d notErr=%d notErr2=%d"), (error == KErrArgument), !err, !err2 );
-
- //do not delay assert because queue should not be active
- assertL( (error == KErrArgument) && !err && !err2);
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddEmptyObjectToQueueL out") );
- }
-
-void CAFSQTestAsynchSave::TestAddObjectToEmptyQueueL()
- {
- // Group: Asynch Save
- //
- // ID: CAE.FM.TESTADDOBJECT.002
- //
- // Action : Test that adding an object to an empty queue will at least start OK.
- //
- // Output : An error code.
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueL in") );
-
- TInt error = KErrNone;
- currentTest = EADD002p1;
- numSaved = 0;
- wait = ETrue;
-
- // Read the file to be used in testing.
- TFileName aFilename = KNibbles;
- RFs aFs;
- User::LeaveIfError(aFs.Connect());
- RFile file;
- TInt connectErr = file.Open(aFs, aFilename, EFileRead);
- TInt iSize;
- file.Size(iSize);
- HBufC8* buf = HBufC8::NewL(iSize);
- TPtr8 myData = buf->Des();
- if ( !connectErr )
- {
- file.Read( myData );
- }
- file.Close();
-
- // Delete the file if it exists
- TFileName add002 = KNibblesADD002;
- RFile deleter;
- TInt isDeleted = deleter.Open(aFs, add002, EFileRead);
- deleter.Close();
-
- if ( isDeleted == KErrNone )
- {
- // if no error, assume the file exists, so delete it
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueL exists, deleting") );
- BaflUtils ba;
- ba.DeleteFile(aFs, add002);
- }
- aFs.Close();
-
- // Save
- TRAPD( err,
- iFSQ = CAsynchFSQ::NewL();
- //add this as a callback
- iFSQ->SetCallback( this );
- error = iFSQ->SaveAndDestroy( *buf, add002 );
- buf = NULL; // transfer ownership
- );
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueL isKErrNone=%d notErr=%d"), (error == KErrNone), !err );
-
- delayedBool = ( (error == KErrNone) && !err );
- //wait for callback to assert
- WaitForAsynchCompleteL();
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueL out") );
- }
-
-void CAFSQTestAsynchSave::TestAddObjectToEmptyQueueWillSaveL()
- {
- // Group: Asynch Save
- //
- // ID: CAE.FM.TESTADDOBJECT.003
- //
- // Action : Test that adding an object to an empty queue will finish OK.
- //
- // Output : Asynchronous report.
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueWillSaveL in") );
-
- currentTest = EADD003p1;
- numSaved = 0;
- wait = ETrue;
-
- // Read the file to be used in testing.
- TFileName aFilename = KNibbles;
- RFs aFs;
- User::LeaveIfError(aFs.Connect());
- RFile file;
- TInt connectErr = file.Open(aFs, aFilename, EFileRead);
- TInt iSize;
- file.Size(iSize);
- HBufC8* buf = HBufC8::NewL(iSize);
- TPtr8 myData = buf->Des();
- if ( !connectErr )
- {
- file.Read( myData );
- }
- file.Close();
-
- // Delete the file if it exists
- TFileName add003 = KNibblesADD003;
- RFile deleter;
- TInt isDeleted = deleter.Open(aFs, add003, EFileRead);
- deleter.Close();
- if ( isDeleted == KErrNone )
- {
- // if no error, assume the file exists, so delete it
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueL exists, deleting") );
- BaflUtils ba;
- ba.DeleteFile(aFs, add003);
- }
- aFs.Close();
-
- TRAP_IGNORE(
- iFSQ = CAsynchFSQ::NewL();
- //add this as a callback
- iFSQ->SetCallback( this );
- iFSQ->SaveAndDestroy( *buf, add003 );
- buf = NULL; // transfer ownership
- );
-
- //wait for callback to assert
- WaitForAsynchCompleteL();
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueWillSaveL out") );
- }
-
-void CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueL()
- {
- // Group: Asynch Save
- //
- // ID: CAE.FM.TESTADDOBJECT.004
- //
- // Action : Test that adding an object to a non empty queue will at least start OK.
- //
- // Output : An error code.
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueL in") );
-
- TInt error = KErrNone;
- TInt error2 = KErrNone;
- currentTest = EADD004p1;
- numSaved = 0;
- numToSave = 2;
- wait = ETrue;
-
- // Read the file to be used in testing.
- TFileName aFilename = KNibbles;
- RFs aFs;
- User::LeaveIfError(aFs.Connect());
- RFile file;
- TInt connectErr = file.Open(aFs, aFilename,EFileRead);
- TInt iSize;
- file.Size(iSize);
- HBufC8* buf = HBufC8::NewL(iSize);
- TPtr8 myData = buf->Des();
- if ( !connectErr )
- {
- file.Read( myData );
- }
- file.Close();
-
- // Read the file to be used in testing.
- TFileName aFilename2 = KNibbles2;
- RFile file2;
- TInt connectErr2 = file2.Open(aFs, aFilename2,EFileRead);
- file2.Size(iSize);
- HBufC8* buf2 = HBufC8::NewL(iSize);
- TPtr8 myData2 = buf2->Des();
- if ( !connectErr2 )
- {
- file2.Read( myData2 );
- }
- file2.Close();
-
- // Delete the file if it exists
- TFileName add004A = KNibblesADD004A;
- RFile deleter;
- TInt isDeleted = deleter.Open(aFs, add004A, EFileRead);
- deleter.Close();
- if ( isDeleted == KErrNone )
- {
- // if no error, assume the file exists, so delete it
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueL 1st exists, deleting") );
- BaflUtils ba;
- ba.DeleteFile(aFs, add004A);
- }
-
- // Delete the file if it exists
- TFileName add004B = KNibblesADD004B;
- RFile deleter2;
- TInt isDeleted2 = deleter2.Open(aFs, add004B, EFileRead);
- deleter2.Close();
- if ( isDeleted2 == KErrNone )
- {
- // if no error, assume the file exists, so delete it
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueL 2nd exists, deleting") );
- BaflUtils ba;
- ba.DeleteFile(aFs, add004B);
- }
- aFs.Close();
-
- // Save
- TRAPD( err,
- iFSQ = CAsynchFSQ::NewL();
- iFSQ->SetCallback( this );
- error = iFSQ->SaveAndDestroy( *buf, add004A );
- buf = NULL; // transfer ownership
- error2 = iFSQ->SaveAndDestroy( *buf2, add004B );
- buf2 = NULL; // transfer ownership
- );
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueL isKErrNone=%d is2KErrNone=%d notErr=%d"), (error == KErrNone), (error2 == KErrNone), !err );
-
- delayedBool = ( (error == KErrNone) && (error2 == KErrNone) && (!err) );
- //wait for callback to assert
- WaitForAsynchCompleteL();
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueL out") );
- }
-
-void CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueWillSaveL()
- {
- // Group: Asynch Save
- //
- // ID: CAE.FM.TESTADDOBJECT.005
- //
- // Action : Test that adding an object to a non empty queue will finish OK.
- //
- // Output : Asynchronous report.
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueWillSaveL in") );
-
- //TInt error = KErrNone;
- currentTest = EADD005p1;
- numSaved = 0;
- numToSave = 2;
- wait = ETrue;
-
- // Read the file to be used in testing.
- TFileName aFilename = KNibbles;
- RFs aFs;
- User::LeaveIfError(aFs.Connect());
- RFile file;
- TInt connectErr = file.Open(aFs, aFilename,EFileRead);
- TInt iSize;
- file.Size(iSize);
- HBufC8* buf = HBufC8::NewL(iSize);
- TPtr8 myData = buf->Des();
- if ( !connectErr )
- {
- file.Read( myData );
- }
- file.Close();
-
- // Read the file to be used in testing.
- TFileName aFilename2 = KNibbles2;
- RFile file2;
- TInt connectErr2 = file2.Open(aFs, aFilename2,EFileRead);
- file2.Size(iSize);
- HBufC8* buf2 = HBufC8::NewL(iSize);
- TPtr8 myData2 = buf2->Des();
- if ( !connectErr2 )
- {
- file2.Read( myData2 );
- }
- file2.Close();
-
- // Delete the file if it exists
- TFileName add005A = KNibblesADD005A;
- RFile deleter;
- TInt isDeleted = deleter.Open(aFs, add005A, EFileRead);
- deleter.Close();
- if ( isDeleted == KErrNone )
- {
- // if no error, assume the file exists, so delete it
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueWillSaveL 1st exists, deleting") );
- BaflUtils ba;
- ba.DeleteFile(aFs, add005A);
- }
-
- // Delete the file if it exists
- TFileName add005B = KNibblesADD005B;
- RFile deleter2;
- TInt isDeleted2 = deleter2.Open(aFs, add005B, EFileRead);
- deleter2.Close();
- if ( isDeleted2 == KErrNone )
- {
- // if no error, assume the file exists, so delete it
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueWillSaveL 2nd exists, deleting") );
- BaflUtils ba;
- ba.DeleteFile(aFs, add005B);
- }
- aFs.Close();
-
- // Save
- TRAPD( err,
- iFSQ = CAsynchFSQ::NewL();
- iFSQ->SetCallback( this );
- iFSQ->SaveAndDestroy( *buf, add005A );
- buf = NULL; // transfer ownership
- iFSQ->SaveAndDestroy( *buf2, add005B );
- buf2 = NULL; // transfer ownership
- );
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueWillSaveL notErr=%d"), !err );
-
- //wait for callback to assert
- WaitForAsynchCompleteL();
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToNonEmptyQueueWillSaveL out") );
- }
-
-void CAFSQTestAsynchSave::TestAddObjectThatExistsAlreadyL()
- {
- // Group: Asynch Save
- //
- // ID: CAE.FM.TESTADDOBJECT.006
- //
- // Action : Test that adding an object to an empty queue which exists int the file
- // system will report KErrAlreadyExists.
- //
- // Output : An error code.
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectThatExistsAlready in") );
-
- TInt error = KErrNone;
- currentTest = EADD006p1;
- numSaved = 0;
- wait = ETrue;
-
- // Read the file to be used in testing.
- TFileName aFilename = KNibbles;
- RFs aFs;
- User::LeaveIfError(aFs.Connect());
- RFile file;
- TInt connectErr = file.Open(aFs, aFilename,EFileRead);
- TInt iSize;
- file.Size(iSize);
- HBufC8* buf = HBufC8::NewL(iSize);
- TPtr8 myData = buf->Des();
- if ( !connectErr )
- {
- file.Read( myData );
- }
- file.Close();
-
- // Delete the file if it exists
- TFileName add006 = KNibblesADD006;
- RFile deleter;
- TInt isDeleted = deleter.Open(aFs, add006, EFileRead);
- deleter.Close();
- if ( isDeleted == KErrNone )
- {
- // if no error, assume the file exists, so delete it
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectThatExistsAlreadyL exists, deleting") );
- BaflUtils ba;
- ba.DeleteFile(aFs, add006);
- }
- aFs.Close();
-
- // Write the file to be used in testing
- TInt err2 = KErrNone;
- RFs fsSession;
- err2 = fsSession.Connect();
- RFile myFile;
- if ( !err2 )
- {
- err2 = myFile.Create( fsSession, add006,
- EFileStream | EFileShareExclusive | EFileWrite );
- }
- if( !err2 )
- {
- err2 = myFile.Write( myData );
- }
- if( !err2 )
- {
- err2 = myFile.Flush();
- }
- myFile.Close();
- fsSession.Close();
-
- // Reuse the file name, to write where it exists.
- TRAPD( err,
- iFSQ = CAsynchFSQ::NewL();
- //add this as a callback
- iFSQ->SetCallback( this );
- error = iFSQ->SaveAndDestroy( *buf, add006, EFalse );
- buf = NULL; // transfer ownership
- );
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectThatExistsAlreadyL isKErrNone=%d notErr=%d"), (error == KErrNone), !err );
-
- delayedBool = ( (error == KErrNone) && !err );
- //wait for callback to assert
- WaitForAsynchCompleteL();
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectThatExistsAlreadyL out") );
- }
-
-
-void CAFSQTestAsynchSave::TestAddObjectToEmptyQueueLManualStart()
- {
- // Group: Asynch Save
- //
- // ID: CAE.FM.TESTADDOBJECT.007
- //
- // Action : Test that adding an object to an empty manual queue will be OK.
- //
- // Output : An error code.
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueLManualStart in") );
-
- TInt error = KErrNone;
- TInt error2 = KErrNone;
- currentTest = EADD007p1;
- numSaved = 0;
- wait = ETrue;
-
- // Read the file to be used in testing.
- TFileName aFilename = KNibbles;
- RFs aFs;
- User::LeaveIfError(aFs.Connect());
- RFile file;
- TInt connectErr = file.Open(aFs, aFilename, EFileRead);
- TInt iSize;
- file.Size(iSize);
- HBufC8* buf = HBufC8::NewL(iSize);
- TPtr8 myData = buf->Des();
- if ( !connectErr )
- {
- file.Read( myData );
- }
- file.Close();
-
- // Delete the file if it exists
- TFileName add007 = KNibblesADD007;
- RFile deleter;
- TInt isDeleted = deleter.Open(aFs, add007, EFileRead);
- deleter.Close();
-
- if ( isDeleted == KErrNone )
- {
- // if no error, assume the file exists, so delete it
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueLManualStart exists, deleting") );
- BaflUtils ba;
- ba.DeleteFile(aFs, add007);
- }
- aFs.Close();
-
- // Save
- TRAPD( err,
- iFSQ = CAsynchFSQ::NewL();
- //add this as a callback
- iFSQ->SetCallback( this );
- iFSQ->SetManualStart( ETrue );
- error = iFSQ->SaveAndDestroy( *buf, add007 );
- buf = NULL; // transfer ownership
- error2 = iFSQ->Go();
- );
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueLManualStart isKErrNone=%d notErr=%d"), ((error == KErrNone) && (error2 == KErrNone)), !err );
-
- delayedBool = ( (error == KErrNone) && (error2 == KErrNone) && !err );
- //wait for callback to assert
- WaitForAsynchCompleteL();
-
- RDebug::Print( _L("CAFSQTestAsynchSave::TestAddObjectToEmptyQueueLManualStart out") );
- }