//
// Copyright (c) 2005-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
//! 	@SYMTestSuiteName		pbase-f32-sfsrv-publicapi-ram
//!	@SYMScriptTestEnvironment	This test script requires a basic ROM.
//! 	@SYMScriptAuthor 		Jaanus Randveer, Runno Sgirka
//! 	@SYMScriptCreationDate		12/10/2007
//! 	@SYMScriptDescription		The test script contains API tests for the following functions of CDir class:
//!	TInt Count() const.
//!	const TEntry &operator[](TInt anIndex) const.
//!	TInt Sort(TUint aEntrySortKey).


LOAD_SUITE	T_SfSrv
DELAY	5000


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0001
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0001
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Function Count() test, that counts entries in the array of directory entries.
//!				Uses API elements: Count().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\dir\ (containing 4 files: big_line.txt, Test1.txt, Test2.txt, Test3.txt) as first parameter, 
//!				  KEntryAttHidden as second parameter, ESortByName as third parameter, CDir pointer as fourth parameter
//!				3.Call CDir::Count().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Function Count() finds 4 entries!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0001-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0001-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0001-001-Copy_command006
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0001-001-Copy_command007
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0001-001-Copy_command008
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0001-001-Copy_command009
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	CDir	CDir1
		COMMAND		RFs1	new			
		COMMAND		RFs1	Connect		
		COMMAND		RFs1	GetDir			PBASE-F32-Dir-PublicApi-0001-002-GetDir_command004
		COMMAND		CDir1	Count			PBASE-F32-Dir-PublicApi-0001-002-Count_command005
		COMMAND		CDir1	~		
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0001-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0001-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0001-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0001


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0002
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0002
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		operator const TEntry &operator[](TInt anIndex) const test, that takes first entry from the array of directory entries.
//!				Uses API elements: operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 4 files: big_line.txt, Test1.txt, Test2.txt, Test3.txt) as first parameter,
//!			  	  KEntryAttHidden as second parameter, ESortByName as third parameter, CDir pointer as fourth parameter
//!				3.Create new TEntry object.
//!				4.Call CDir::operator[]() and pass 0 as parameter.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	First element is big_line.txt .
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0002-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0002-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0002-001-Copy_command006
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0002-001-Copy_command007
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0002-001-Copy_command008
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0002-001-Copy_command009
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect		
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0002-002-GetDir_command005
		COMMAND		TEntry1	new
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0002-002-index_command007
		COMMAND		CDir1	~
		COMMAND		TEntry1	~		
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0002-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0002-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0002-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0002


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0003
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0003
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Function Sort(TUint aEntrySortKey) test, that sorts the array of directory entries by name ascendingly.
//!				Uses API elements: Sort(), operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 4 files: big_line.txt, Test1.txt, Test2.txt, Test3.txt) as first parameter, 
//!				  KEntryAttHidden as second parameter, ESortNone as third parameter, CDir pointer as fourth parameter.
//!				3.Create new TEntry object.
//!				4.Call CDir::Sort() and ESortByName | EAscending as parameter.
//!				5.Call operator[]() to verify the sorting result.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0003-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0003-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0003-001-Copy_command006
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0003-001-Copy_command007
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0003-001-Copy_command008
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0003-001-Copy_command009
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	2000	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0003-002-GetDir_command005
		COMMAND		TEntry1	new
		COMMAND		CDir1	Sort		PBASE-F32-Dir-PublicApi-0003-002-Sort_command007
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0003-002-index_command008
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0003-002-index_command009
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0003-002-index_command010
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0003-002-index_command011
		COMMAND		CDir1	~
		COMMAND		TEntry1	~
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0003-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0003-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0003-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0003


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0004
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0004
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Function Sort(TUint aEntrySortKey) test, that sorts the array of directory entries by extension descendingly.
//!				Uses API elements: Sort(), operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 4 files: big_line.txt, Test1.txt, Test2.txt, Test3.txt) as first parameter, 
//!				  KEntryAttHidden as second parameter, ESortNone as third parameter, CDir pointer as fourth parameter.
//!				3.Create new TEntry object.
//!				4.Call CDir::Sort() and ESortByExt | EDescending as parameter.
//!				5.Call operator[]() to verify the sorting result.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0004-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0004-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0004-001-Copy_command006
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0004-001-Copy_command007
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0004-001-Copy_command008
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0004-001-Copy_command009
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	2000	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0004-002-GetDir_command005
		COMMAND		TEntry1	new
		COMMAND		CDir1	Sort		PBASE-F32-Dir-PublicApi-0004-002-Sort_command007
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0004-002-index_command008
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0004-002-index_command009
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0004-002-index_command010
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0004-002-index_command011
		COMMAND		CDir1	~
		COMMAND		TEntry1	~
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0004-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0004-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0004-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0004


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0005
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0005
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Function Sort(TUint aEntrySortKey) test, that sorts the array of directory entries by UID.
//!				Uses API elements: Sort(), operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 4 files: big_line.txt, Test1.txt, Test2.txt, Test3.txt) as first parameter, 
//!				  KEntryAttHidden as second parameter, ESortNone as third parameter, CDir pointer as fourth parameter.
//!				3.Create new TEntry object.
//!				4.Call CDir::Sort() and ESortByUid as parameter.
//!				5.Call operator[]() to verify the sorting result.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0005-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0005-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0005-001-Copy_command006
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0005-001-Copy_command007
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0005-001-Copy_command008
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0005-001-Copy_command009
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	2000	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0005-002-GetDir_command005
		COMMAND		TEntry1	new
		COMMAND		CDir1	Sort		PBASE-F32-Dir-PublicApi-0005-002-Sort_command007
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0005-002-index_command008
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0005-002-index_command009
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0005-002-index_command010
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0005-002-index_command011
		COMMAND		CDir1	~
		COMMAND		TEntry1	~
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0005-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0005-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0005-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0005


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0006
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0006
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Function Sort(TUint aEntrySortKey) test, that sorts the array of directory entries by file date, placing directories
//!				first descendingly.
//!				Uses API elements: Sort(), operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Make three directories, passing names BBDir, CCDir and AADir as parameters.
//!				3.Call RFs::SetModified(const TDesC &aName, const TTime &aTime) to set directories' and files' modified date.
//!				4.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 4 files and 3 folders: big_line.txt, Test1.txt, Test2.txt, Test3.txt, AADir, BBDir,
//!				  CCDir) as first parameter, KEntryAttMaskSupported as second parameter,EDirsLast as third parameter, 
//!				  CDir pointer as fourth parameter.
//!				5.Create new TEntry object.
//!				6.Call CDir::Sort() and EDirsFirst | EDirDescending | ESortByDate as parameter.
//!				7.Call operator[]() to verify the sorting result.
//!				8.Remove previously created directories.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0006-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0006-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0006-001-Copy_command006
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0006-001-Copy_command007
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0006-001-Copy_command008
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0006-001-Copy_command009
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	2000	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0006-002-MkDirAll_command005
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0006-002-MkDirAll_command006
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0006-002-MkDirAll_command007
		COMMAND		RFs1	SetModified	PBASE-F32-Dir-PublicApi-0006-002-SetModified_command008
		COMMAND		RFs1	SetModified	PBASE-F32-Dir-PublicApi-0006-002-SetModified_command009
		COMMAND		RFs1	SetModified	PBASE-F32-Dir-PublicApi-0006-002-SetModified_command010
		COMMAND		RFs1	SetModified	PBASE-F32-Dir-PublicApi-0006-002-SetModified_command011
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0006-002-GetDir_command012
		COMMAND		TEntry1	new
		COMMAND		CDir1	Sort		PBASE-F32-Dir-PublicApi-0006-002-Sort_command014
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0006-002-index_command015
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0006-002-index_command016
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0006-002-index_command017
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0006-002-index_command018
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0006-002-index_command019
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0006-002-index_command020
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0006-002-index_command021
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0006-002-RmDir_command022
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0006-002-RmDir_command023
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0006-002-RmDir_command024
		COMMAND		CDir1	~	
		COMMAND		TEntry1	~	
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0006-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0006-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0006-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0006


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0007
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0007
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Function Sort(TUint aEntrySortKey) test, that sorts the array of directory entries by size, placing directories last.
//!				Uses API elements: Sort(), operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Make three directories, passing names BBDir, CCDir and AADir as parameters.
//!				3.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 4 files and 3 folders: big_line.txt, Test1.txt, Test2.txt, Test3.txt, AADir, BBDir, 
//!				  CCDir) as first parameter, KEntryAttMaskSupported as second parameter, ESortNone as third parameter, CDir pointer 
//!				  as fourth parameter.
//!				4.Create new TEntry object.
//!				5.Call CDir::Sort() and EDirsLast | ESortBySize as parameter.
//!				6.Call operator[]() to verify the sorting result.
//!				7.Remove previously created directories.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0007-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0007-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0007-001-Copy_command006
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0007-001-Copy_command007
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0007-001-Copy_command008
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0007-001-Copy_command009
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	2000	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0007-002-MkDirAll_command005
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0007-002-MkDirAll_command006
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0007-002-MkDirAll_command007
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0007-002-GetDir_command008
		COMMAND		TEntry1	new
		COMMAND		CDir1	Sort		PBASE-F32-Dir-PublicApi-0007-002-Sort_command010
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0007-002-index_command011
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0007-002-index_command012
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0007-002-index_command013
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0007-002-index_command014
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0007-002-index_command015
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0007-002-index_command016
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0007-002-index_command017
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0007-002-RmDir_command018
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0007-002-RmDir_command019
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0007-002-RmDir_command020
		COMMAND		CDir1	~
		COMMAND		TEntry1	~		
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0007-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0007-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0007-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0007


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0008
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0008
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Function Sort(TUint aEntrySortKey) test, that sorts the array of directory entries by placing directories in the order
//!				they occur.
//!				Uses API elements: Sort(), operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Make three directories, passing names BBDir, CCDir and AADir as parameters.
//!				3.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList, CDir
//!				  *&aDirList), and <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 3 folders: AADir, BBDir, CCDir) as first parameter, KEntryAttMaskSupported
//!				  as second parameter, ESortNone as third parameter, CDir pointer as fourth and fifth parameter.
//!				4.Create new TEntry object.
//!				5.Call CDir::Sort() and EDirsAnyOrder as parameter.
//!				6.Remove previously created directories.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0008-001-MkDirAll_command003
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	2000	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		CREATE_OBJECT	CDir	CDir2
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0008-002-MkDirAll_command006
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0008-002-MkDirAll_command007
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0008-002-MkDirAll_command008
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0008-002-GetDir_command009
		COMMAND		TEntry1	new
		COMMAND		CDir2	Sort		PBASE-F32-Dir-PublicApi-0008-002-Sort_command011
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0008-002-RmDir_command012
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0008-002-RmDir_command013
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0008-002-RmDir_command014
		COMMAND		CDir2	~
		COMMAND		CDir1	~
		COMMAND		TEntry1	~		
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0008-003-RmDir_command003
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0008


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0009
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0009
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Test that checks that CDir entrylist is initialized correctly. Can be also used 
//!				as RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList, CDir *&aDirList)
//!				optional test.
//!				Uses API elements: operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Call RFs::TInt GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList,
//!				  CDir *&aDirList), and <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 4 files: big_line.txt, Test1.txt, Test2.txt, Test3.txt) as first
//!				  parameter, KEntryAttHidden as second parameter, ESortByName | EAscending as third parameter, first CDir pointer as 
//!				  fourth parameter, second CDir pointer as fifth parameter.
//!				3.Create new TEntry object.
//!				4. Call CDir::Sort() and ESortByName | EAscending as parameter on the anEntryList.
//!				5. Call operator[]() on the first CDir object to verify the sorting result.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0009-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0009-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0009-001-Copy_command006
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0009-001-Copy_command007
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0009-001-Copy_command008
		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0009-001-Copy_command009
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	2000	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		CREATE_OBJECT	CDir	CDir2
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0009-002-GetDir_command006
		COMMAND		TEntry1	new
		COMMAND		CDir1	Sort		PBASE-F32-Dir-PublicApi-0009-002-Sort_command008
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0009-002-index_command009
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0009-002-index_command010
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0009-002-index_command011
		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0009-002-index_command012
		COMMAND		CDir2	~
		COMMAND		CDir1	~
		COMMAND		TEntry1	~		
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0009-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0009-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0009-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0009


START_TESTCASE 			PBASE-F32-Dir-PublicApi-0010
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0010
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		Function Sort(TUint aEntrySortKey) test, that sorts the array of directory entries by placing directories in the order
//!				they occur.
//!				Uses API elements: Sort(), operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Make three directories, passing names BBDir, CCDir and AADir as parameters.
//!				3.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList, CDir
//!				  *&aDirList), and <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 3 folders: AADir, BBDir, CCDir) as first parameter, KEntryAttMaskSupported
//!				  as second parameter, ESortNone as third parameter, CDir pointer as fourth and fifth parameter.
//!				4.Create new TEntry object.
//!				5.Call CDir::Sort() and EDirDescending|EDirsFirst as parameter.
//!				6.Call operator[]() on the second CDir object to verify the sorting result.
//!				7.Remove previously created directories.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0010-001-MkDirAll_command003
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	2000	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	TEntry	TEntry1
		CREATE_OBJECT	CDir	CDir1
		CREATE_OBJECT	CDir	CDir2
		COMMAND		RFs1	new		
		COMMAND		RFs1	Connect
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0010-002-MkDirAll_command006
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0010-002-MkDirAll_command007
		COMMAND		RFs1	MkDirAll		PBASE-F32-Dir-PublicApi-0010-002-MkDirAll_command008
		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0010-002-GetDir_command009
		COMMAND		TEntry1	new
		COMMAND		CDir2	Sort		PBASE-F32-Dir-PublicApi-0010-002-Sort_command011
		COMMAND		CDir2	[]		PBASE-F32-Dir-PublicApi-0010-002-index_command012
		COMMAND		CDir2	[]		PBASE-F32-Dir-PublicApi-0010-002-index_command013
		COMMAND		CDir2	[]		PBASE-F32-Dir-PublicApi-0010-002-index_command014
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0010-002-RmDir_command015
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0010-002-RmDir_command016
		COMMAND		RFs1	RmDir		PBASE-F32-Dir-PublicApi-0010-002-RmDir_command017
		COMMAND		CDir2	~
		COMMAND		CDir1	~
		COMMAND		TEntry1	~		
		COMMAND		RFs1	~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0010-003-RmDir_command003
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE 			PBASE-F32-Dir-PublicApi-0010




//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
//////								//////
//////		 ///////////////////////////////////		//////
//////		 ///				 ///		//////
//////		 ///	  NEGATIVE TESTS	 ///		//////
//////		 ///				 ///		//////	
//////		 ///////////////////////////////////		//////
//////								//////
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////


////////
//COUNT
////////

////////////
//OPERATOR[]
////////////

//! START_TESTCASE 			PBASE-F32-Dir-PublicApi-0101
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0101
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		operator const TEntry &operator[](TInt anIndex) const negative test that tries to take 50th entry from the array of
//!				directory entries.
//!				Uses API elements: operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 1 file: Test1.txt) as first parameter, KEntryAttHidden as second parameter, ESortByName as
//!				  third parameter, CDir pointer as fourth parameter.
//!				3.Create new TEntry object.
//!				4.Call CDir::operator[]() and pass 50 as parameter.		
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	E32USER-CBase = 21 panic
//! @SYMTestType		CIT
//! 	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
//! 		CREATE_OBJECT	RFs		RFs1
//! 		CREATE_OBJECT	CFileMan	CFileMan1
//! 		COMMAND		RFs1		new			
//! 		COMMAND		RFs1		Connect
//! 		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0101-001-MkDirAll_command004
//! 		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0101-001-NewL_command005
//! 		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0101-001-Copy_command006
//! 		COMMAND		CFileMan1	~
//! 		COMMAND		RFs1		~
//! 	END_TEST_BLOCK
//! 	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
//! 		CREATE_OBJECT	RFs	RFs1
//! 		CREATE_OBJECT	TEntry	TEntry1
//! 		CREATE_OBJECT	CDir	CDir1
//! 		COMMAND		RFs1	new		
//! 		COMMAND		RFs1	Connect		
//! 		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0101-002-GetDir_command005
//! 		COMMAND		TEntry1	new
//! 		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0101-002-index_command007
//! 		COMMAND		CDir1	~
//! 		COMMAND		TEntry1	~		
//! 		COMMAND		RFs1	~		
//! 	END_TEST_BLOCK	!PanicCode=21 !PanicString=E32USER-CBase
//! 	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
//! 		CREATE_OBJECT	RFs		RFs1
//! 		CREATE_OBJECT	CFileMan	CFileMan1
//! 		COMMAND		RFs1		new			
//! 		COMMAND		RFs1		Connect
//! 		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0101-003-NewL_command004
//! 		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0101-003-Delete_command005
//! 		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0101-003-RmDir_command006
//! 		COMMAND		CFileMan1	~
//! 		COMMAND		RFs1		~
//! 	END_TEST_BLOCK
//! END_TESTCASE 			PBASE-F32-Dir-PublicApi-0101


//! START_TESTCASE 			PBASE-F32-Dir-PublicApi-0102
//! @SYMTestCaseID		PBASE-F32-Dir-PublicApi-0102
//! @SYMAPI			CDir
//! @SYMTestCaseDesc		operator const TEntry &operator[](TInt anIndex) const negative test, that tries to take entry with index -1 from the
//!				array of directory entries.
//!				Uses API elements: operator[]().
//! @SYMTestActions		1.Create a RFs session and call it's Connect() function.
//!				2.Call RFs::GetDir(const TDesC &aName, TUint anEntryAttMask, TUint anEntrySortKey, CDir *&anEntryList), and 
//!				  <RAM_DRIVE>:\<RELATIVE_PATH>\Dir\ (containing 1 file: Test1.txt) as first parameter, KEntryAttHidden as second parameter, ESortByName as
//!				  third parameter, CDir pointer as fourth parameter.
//!				3.Create new TEntry object.
//!				4.Call CDir::operator[]() and pass -1 as parameter.			
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	E32USER-CBase = 21 panic
//! @SYMTestType		CIT
//! 	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
//! 		CREATE_OBJECT	RFs		RFs1
//! 		CREATE_OBJECT	CFileMan	CFileMan1
//! 		COMMAND		RFs1		new			
//! 		COMMAND		RFs1		Connect
//! 		COMMAND		RFs1		MkDirAll		PBASE-F32-Dir-PublicApi-0102-001-MkDirAll_command004
//! 		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0102-001-NewL_command005
//! 		COMMAND		CFileMan1	Copy		PBASE-F32-Dir-PublicApi-0102-001-Copy_command006
//! 		COMMAND		CFileMan1	~
//! 		COMMAND		RFs1		~
//! 	END_TEST_BLOCK
//! 	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
//! 		CREATE_OBJECT	RFs	RFs1
//! 		CREATE_OBJECT	TEntry	TEntry1
//! 		CREATE_OBJECT	CDir	CDir1
//! 		COMMAND		RFs1	new		
//! 		COMMAND		RFs1	Connect		
//! 		COMMAND		RFs1	GetDir		PBASE-F32-Dir-PublicApi-0102-002-GetDir_command005
//! 		COMMAND		TEntry1	new
//! 		COMMAND		CDir1	[]		PBASE-F32-Dir-PublicApi-0102-002-index_command007
//! 		COMMAND		CDir1	~
//! 		COMMAND		TEntry1	~		
//! 		COMMAND		RFs1	~		
//! 	END_TEST_BLOCK	!PanicCode=21 !PanicString=E32USER-CBase
//! 	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Dir-PublicApi.ini 
//! 		CREATE_OBJECT	RFs		RFs1
//! 		CREATE_OBJECT	CFileMan	CFileMan1
//! 		COMMAND		RFs1		new			
//! 		COMMAND		RFs1		Connect
//! 		COMMAND		CFileMan1	NewL		PBASE-F32-Dir-PublicApi-0102-003-NewL_command004
//! 		COMMAND		CFileMan1	Delete		PBASE-F32-Dir-PublicApi-0102-003-Delete_command005
//! 		COMMAND		RFs1		RmDir		PBASE-F32-Dir-PublicApi-0102-003-RmDir_command006
//! 		COMMAND		CFileMan1	~
//! 		COMMAND		RFs1		~
//! 	END_TEST_BLOCK
//! END_TESTCASE 			PBASE-F32-Dir-PublicApi-0102
