//
// 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 the License "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 			Dmitri Trofimov, Sergei Tveritin, Jaanus Randveer
//! @SYMCreationDate			12/10/2007
//! @SYMScriptDescription		The test script contains API tests for the following functions of TEntry class:
//! TEntry();
//! TEntry(const TEntry &aEntry);
//! TEntry &operator=(const TEntry &aEntry);
//! const TUid &operator[](TInt anIndex) const;
//! TBool IsUidPresent(TUid aUid) const;
//! TBool IsTypeValid() const;
//! TUid MostDerivedUid() const;
//! TBool IsReadOnly() const;
//! TBool IsHidden() const;
//! TBool IsSystem() const;
//! TBool IsDir() const;
//! TBool IsArchive() const;


LOAD_SUITE	T_SfSrv
//DELAY		5000


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0001
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0001
//! @SYMAPI			TEntry
//!
//! @SYMTestCaseDesc		TEntry() test. Tests for successful object creation.
//!				Uses API elements: TEntry()
//! @SYMTestActions		1. Create a TEntry object
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Function does not leave nor panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		TEntry1		new
		COMMAND		TEntry1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0001


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0002
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0002
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		operator=() test. Tests for successful assignment of one TEntry object to another TEntry object.
//!				Uses API elements: TEntry(), operator=(), RFs::Entry()
//! @SYMTestActions		1. Create a TEntry object.
//!				2. Call RFs's command Entry() and pass "<RAM_DRIVE>:\<RELATIVE_PATH>\Entry\Test1.txt" as name of file.
//!				3. Create second TEntry object.
//!				4. Call assignment operator "=" and pass second TEntry object, first TEntry object to be copied to this second TEntry object.
//!				5. Check that firstTEntr and second TEntry has the same name "\base\PBASE-F32-Entry-PublicApi.ini".
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Second TEntry object contains same data as the first TEntry.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll	PBASE-F32-Entry-PublicApi-0002-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0002-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0002-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		CREATE_OBJECT	TEntry		TEntry2	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		TEntry1		new	
		COMMAND		RFs1		Entry	PBASE-F32-Entry-PublicApi-0002-002-Entry_command007
		COMMAND		TEntry2		new		
		COMMAND		TEntry2		=	PBASE-F32-Entry-PublicApi-0002-002-=_command009
		COMMAND		TEntry2		~		
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0002-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0002-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0002-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0002


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0003
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0003
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		TEntry() passing another TEntry object as a reference. Tests for successful creation of TEntry object and initilization with another TEntry objet's data.
//!				Uses API elements: TEntry()
//! @SYMTestActions		1. Create a TEntry object
//!				2. Call RFs's command Entry() and pass "<RAM_DRIVE>:\<RELATIVE_PATH>\Entry\Test1.txt" as name of file.
//!				3. Create the second TEntry object passing the the first TEntry as a parameter
//!				4. Compare data members of the first and the second TEntry objects.
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	New TEntry object contains same data as the other one.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0003-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0003-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0003-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		CREATE_OBJECT	TEntry		TEntry2	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		TEntry1		new		
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0003-002-Entry_command007
		COMMAND		TEntry2		new		PBASE-F32-Entry-PublicApi-0003-002-new_command008
		COMMAND		TEntry2		IsReadOnly	PBASE-F32-Entry-PublicApi-0003-002-IsReadOnly_command009
		COMMAND		TEntry2		IsHidden	PBASE-F32-Entry-PublicApi-0003-002-IsHidden_command010
		COMMAND		TEntry2		IsDir		PBASE-F32-Entry-PublicApi-0003-002-IsDir_command011
		COMMAND		TEntry2		~		
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0003-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0003-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0003-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0003


//! START_TESTCASE 			PBASE-F32-Entry-PublicApi-0004
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0004
//! @SYMAPI			TEntry
//! @SYMCreationDate		13/08/2006
//! @SYMTestCaseDesc		operator[] negative test where passing unsupported index of UID as a parameter. This tests for panic when unsupported UID
//!				index value is provided.
//!				Uses API elements: operator[]
//! @SYMTestActions		1. Create a TEntry object
//!				2. Try get "four UID"
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Panic USER - 37.
//! @SYMTestType		CIT
//! 	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
//! 		CREATE_OBJECT	TEntry		TEntry1	
//! 		COMMAND		TEntry1		new		
//! 		COMMAND		TEntry1		[]		PBASE-F32-Entry-PublicApi-0004-001-index_command003
//! 		COMMAND		TEntry1		~		
//! 	END_TEST_BLOCK	!PanicCode=37 !PanicString=USER
//! END_TESTCASE			PBASE-F32-Entry-PublicApi-0004


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0005
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0005
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		IsUidPresent() test. This tests the function for finding a match in "first UID".
//!				Uses API elements: IsUidPresent()
//! @SYMTestActions		1. Create a TEntry object
//!				2. Call IsUidPresent() and and check that the function return "FALSE".
//!				3. Call RFs's command Entry() and pass "<RAM_DRIVE>:\<RELATIVE_PATH>\Entry\Test3.txt" as name of file.
//!				4. Call IsUidPresent() and check that the function return "FALSE".
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	IsUidPresent() returns ETrue
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0005-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0005-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0005-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		TEntry1		new		
		COMMAND		TEntry1		IsUidPresent	PBASE-F32-Entry-PublicApi-0005-002-IsUidPresent_command006
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0005-002-Entry_command007
		COMMAND		TEntry1		IsUidPresent	PBASE-F32-Entry-PublicApi-0005-002-IsUidPresent_command008
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0005-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0005-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0005-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0005


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0006
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0006
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		IsTypeValid() test. This tests if the function can correctly identify the absence of valid UID.
//!				Uses API elements: IsTypeValid()
//! @SYMTestActions		1. Create TEntry object
//!				2. Call IsTypeValid() and and check that the function return "FALSE".
//!				3. Call RFs's command Entry() and pass "<RAM_DRIVE>:\<RELATIVE_PATH>\Entry\Test3.txt" as name of file.
//!				4. Call IsTypeValid() and check that the function return "FALSE".
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	IsTypeValid() returns EFalse
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0006-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0006-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0006-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		TEntry1		new		
		COMMAND		TEntry1		IsTypeValid	PBASE-F32-Entry-PublicApi-0006-002-IsTypeValid_command006
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0006-002-Entry_command007
		COMMAND		TEntry1		IsTypeValid	PBASE-F32-Entry-PublicApi-0006-002-IsTypeValid_command008
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0006-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0006-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0006-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0006


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0007
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0007
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		MostDerivedUid(). This tests if the function is able to correctly find the most derived UID when it is "first UID".
//!				Uses API elements: MostDerivedUid()
//! @SYMTestActions		1. Create TEntry object
//!				2. Call RFs's command Entry() and pass "<RAM_DRIVE>:\<RELATIVE_PATH>\Entry\Test3.txt" as name of file.
//!				3. Call MostDerivedUid().
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Function returns no panic.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0007-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0007-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0007-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		TEntry1		new		
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0007-002-Entry_command006
		COMMAND		TEntry1		MostDerivedUid	
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0007-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0007-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0007-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0007


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0008
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0008
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		IsReadOnly() test. Test if the function is able to correctly identify the presence of ReadOnly attribute.
//!				Uses API elements: IsReadOnly(), RFs:SetAtt()
//! @SYMTestActions		1. Create RFs object
//!				2. Create TEntry object
//!				3. Call RFs::SetAtt() and pass KEntryAttReadOnly as attribute and "Test1.txt" as name of entry.
//!				4. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				5. Call IsReadOnly(), and check that the attribute is set.
//!				6. Call RFs::SetAtt() and pass KEntryAttReadOnly as attribute for clear and "Test1.txt" as name of entry.
//!				7. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				8. Call IsReadOnly(), and check that the attribute is not set.
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	IsReadonly() returns expected result successfuly.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0008-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0008-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0008-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		RFs1		SetAtt		PBASE-F32-Entry-PublicApi-0008-002-SetAtt_command005
		COMMAND		TEntry1		new		
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0008-002-Entry_command007
		COMMAND		TEntry1		IsReadOnly	PBASE-F32-Entry-PublicApi-0008-002-IsReadOnly_command008
		COMMAND		RFs1		SetAtt		PBASE-F32-Entry-PublicApi-0008-002-SetAtt_command009
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0008-002-Entry_command010
		COMMAND		TEntry1		IsReadOnly	PBASE-F32-Entry-PublicApi-0008-002-IsReadOnly_command011
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0008-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0008-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0008-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0008


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0009
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0009
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		IsHidden() test. This tests if the function is able to identify the presence of Hidden attribute.
//!				Uses API elements: IsHidden(), RFs:SetAtt()
//! @SYMTestActions		1. Create RFs object
//!				2. Create TEntry object
//!				3. Call RFs::SetAtt() and pass KEntryAttHidden as attribute and "Test1.txt" as name of entry.
//!				4. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				5. Call IsHidden(), and check that the attribute is set.
//!				6. Call RFs::SetAtt() and pass KEntryAttHidden as attribute for clear and "Test1.txt" as name of entry.
//!				7. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				8. Call IsHidden(), and check that the attribute is not set.
//!
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	IsHidden() returns expected result successfuly.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0009-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0009-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0009-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		RFs1		SetAtt		PBASE-F32-Entry-PublicApi-0009-002-SetAtt_command005
		COMMAND		TEntry1		new		
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0009-002-Entry_command007
		COMMAND		TEntry1		IsHidden	PBASE-F32-Entry-PublicApi-0009-002-IsHidden_command008
		COMMAND		RFs1		SetAtt		PBASE-F32-Entry-PublicApi-0009-002-SetAtt_command009
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0009-002-Entry_command010
		COMMAND		TEntry1		IsHidden	PBASE-F32-Entry-PublicApi-0009-002-IsHidden_command011
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0009-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0009-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0009-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0009


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0010
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0010
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		IsSystem() test. This tests if the function is able to identify the presence of System attribute.
//!				Uses API elements: IsSystem(), RFs:SetAtt()
//! @SYMTestActions		1. Create RFs object
//!				2. Create TEntry object
//!				3. Call RFs::SetAtt() and pass KEntryAttSystem as attribute and "Test1.txt" as name of entry.
//!				4. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				5. Call IsSystem(), and check that the attribute is set.
//!				6. Call RFs::SetAtt() and pass KEntryAttSystem as attribute for clear and "Test1.txt" as name of entry.
//!				7. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				8. Call IsSystem(), and check that the attribute is not set.
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	IsSystem() returns expected result successfuly.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0010-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0010-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0010-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		RFs1		SetAtt		PBASE-F32-Entry-PublicApi-0010-002-SetAtt_command005
		COMMAND		TEntry1		new		
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0010-002-Entry_command007
		COMMAND		TEntry1		IsSystem	PBASE-F32-Entry-PublicApi-0010-002-IsSystem_command008
		COMMAND		RFs1		SetAtt		PBASE-F32-Entry-PublicApi-0010-002-SetAtt_command009
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0010-002-Entry_command010
		COMMAND		TEntry1		IsSystem	PBASE-F32-Entry-PublicApi-0010-002-IsSystem_command011
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0010-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0010-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0010-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0010


START_TESTCASE 			PBASE-F32-Entry-PublicApi-0011
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0011
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		IsArchive() test. This tests if the function is able to identify the presence of Archive attribute.
//!				Uses API elements: IsArchive(), RFs:SetAtt()
//! @SYMTestActions		1. Create RFs object
//!				2. Create TEntry object
//!				3. Call RFs::SetAtt() and pass KEntryAttArchive as attribute and "Test1.txt" as name of entry.
//!				4. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				5. Call IsArchive(), and check that the attribute is set.
//!				6. Call RFs::SetAtt() and pass KEntryAttArchive as attribute for clear and "test.txt" as name of entry.
//!				7. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				8. Call IsArchive(), and check that the attribute is not set.
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	IsArchive() returns ETrue.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0011-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0011-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0011-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		RFs1		SetAtt		PBASE-F32-Entry-PublicApi-0011-002-SetAtt_command005
		COMMAND		TEntry1		new		
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0011-002-Entry_command007
		COMMAND		TEntry1		IsArchive	PBASE-F32-Entry-PublicApi-0011-002-IsArchive_command008
		COMMAND		RFs1		SetAtt		PBASE-F32-Entry-PublicApi-0011-002-SetAtt_command009
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0011-002-Entry_command010
		COMMAND		TEntry1		IsArchive	PBASE-F32-Entry-PublicApi-0011-002-IsArchive_command011
		COMMAND		TEntry1		~		
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0011-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0011-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0011-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0011



START_TESTCASE 			PBASE-F32-Entry-PublicApi-0012
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0012
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		IsDir() test. This tests if the function is able to indentify the presence of Dir attribute.
//!				Uses API elements: IsDir(), RFs:SetAtt()
//! @SYMTestActions		1. Create RFs object
//!				2. Create TEntry object
//!				3. Call RFs::MkDirAll() and pass "test\" as name of directory.
//!				4. Call RFs::Entry() to obtain data for TEntry object where name is "test".
//!				5. Call IsDir(), and check that the attribute is set.
//!				6. Call RFs::Entry() to obtain data for TEntry object where name is "Test1.txt".
//!				7. Call IsDir(), and check that the attribute is not set.
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	IsDir() returns ETrue.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0012-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0012-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0012-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		RFs1		Connect		
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0012-002-MkDirAll_command005
		COMMAND		TEntry1		new		
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0012-002-Entry_command007
		COMMAND		TEntry1		IsDir		PBASE-F32-Entry-PublicApi-0012-002-IsDir_command008
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0012-002-Entry_command009
		COMMAND		TEntry1		IsDir		PBASE-F32-Entry-PublicApi-0012-002-IsDir_command010
		COMMAND		TEntry1		~		
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0012-002-RmDir_command012
		COMMAND		RFs1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0012-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0012-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0012-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
END_TESTCASE			PBASE-F32-Entry-PublicApi-0012



START_TESTCASE 			PBASE-F32-Entry-PublicApi-0013
//! @SYMTestCaseID		PBASE-F32-Entry-PublicApi-0013
//! @SYMAPI			TEntry
//! @SYMTestCaseDesc		operator[] test where getting one index of UID.
//!				Uses API elements: operator[]
//! @SYMTestActions		1. Create a TEntry object
//!				2. Call RFs's command Entry() and pass "<RAM_DRIVE>:\<RELATIVE_PATH>\Entry\Test3.txt" as name of file.
//!				3. Call operator[] and pass "UID1" as parameter.
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	operator[] returns no panic.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		RFs1		MkDirAll		PBASE-F32-Entry-PublicApi-0013-001-MkDirAll_command004
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0013-001-NewL_command005
		COMMAND		CFileMan1	Copy		PBASE-F32-Entry-PublicApi-0013-001-Copy_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini
		CREATE_OBJECT	RFs		RFs1	
		CREATE_OBJECT	TEntry		TEntry1	
		COMMAND		RFs1		new		
		COMMAND		TEntry1		new
		COMMAND		RFs1		Connect	
		COMMAND		RFs1		Entry		PBASE-F32-Entry-PublicApi-0013-002-Entry_command006
		COMMAND		TEntry1		[]		PBASE-F32-Entry-PublicApi-0013-002-index_command007
		COMMAND		TEntry1		~		
	END_TEST_BLOCK
	START_TEST_BLOCK	100	T_SfSrv	\base\PBASE-F32-Entry-PublicApi.ini 
		CREATE_OBJECT	RFs		RFs1
		CREATE_OBJECT	CFileMan	CFileMan1
		COMMAND		RFs1		new			
		COMMAND		RFs1		Connect
		COMMAND		CFileMan1	NewL		PBASE-F32-Entry-PublicApi-0013-003-NewL_command004
		COMMAND		CFileMan1	Delete		PBASE-F32-Entry-PublicApi-0013-003-Delete_command005
		COMMAND		RFs1		RmDir		PBASE-F32-Entry-PublicApi-0013-003-RmDir_command006
		COMMAND		CFileMan1	~
		COMMAND		RFs1		~
	END_TEST_BLOCK	
END_TESTCASE			PBASE-F32-Entry-PublicApi-0013
