//
// 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-RFS-Mounts-PublicApi-RAM
//! @SYMScriptTestEnvironment	This test script requires a basic ROM.
//! @SYMScriptAuthor 		Oleg Kuznetsov
//! @SYMScriptDescription	The test script contains API mounting related tests for RFs functions that perform operations on a RAM drive.

LOAD_SUITE	T_Sfsrv


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0002
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0002
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem() (MountFileSystem(const TDesC& aFileSystemName,TInt aDrive) 
//!				and MountFileSystem(const TDesC& aFileSystemName,TInt aDrive, TBool aIsSync) versions) and DismountFileSystem() test.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  MountFileSystem(), DismountFileSystem(), FileSystemName().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call FileSystemName() for a drive where a file system was mounted.
//!				3. Call DismountFileSystem() providing the file system name and the drive number.
//!				4. Call MountFileSystem() passing the file system name, an enabled free drive number.
//!				5. Call DismountFileSystem() providing the name of the file system and the drive number.
//!				6. Call MountFileSystem() passing the file system name, an enabled free drive number and ETrue as a synchronization parameter.
//!				7. Call DismountFileSystem() providing the name of the file system and the drive number.
//!				8. Call MountFileSystem() passing the file system name, an enabled free drive number and EFalse as a synchronization parameter.
//!				9. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	All MountFileSystem() and DismountFileSystem() calls return KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0002-001-FileSystemName_command03
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0002-001-DismountFileSystem_command04
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0002-001-MountFileSystem_command05
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0002-001-DismountFileSystem_command06
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0002-001-MountFileSystem_command07
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0002-001-DismountFileSystem_command08
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0002-001-MountFileSystem_command09
		COMMAND		RFs1	Close
		COMMAND		RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0002


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0004
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0004
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem() (MountFileSystem(const TDesC& aFileSystemName,const TDesC& aExtensionName,TInt aDrive)
//!				and MountFileSystem(const TDesC& aFileSystemName,const TDesC& aExtensionName,TInt aDrive, TBool aIsSync) versions) test. 
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				The test requires a file system extension plug-in.
//!				Uses API elements:  AddExtension(), MountFileSystem(), DismountFileSystem(), RemoveExtension(), FileSystemName().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call FileSystemName() for a drive where a file system was mounted.
//!				3. Call DismountFileSystem() providing the file system name and the drive number.
//!				4. Call AddExtension() providing the file name of a file system extension plug-in as an argument.
//!				5. Call MountFileSystem() passing the file system name, plug-in extension name and an enabled free drive number.
//!				6. Call DismountFileSystem() providing the file system name and the drive number.
//!				7. Call MountFileSystem() passing the file system name, plug-in extension name, an enabled free drive number and ETrue as a 
//!					synchronization parameter.
//!				8. Call DismountFileSystem() providing the file system name and the drive number.
//!				9. Call MountFileSystem() passing the file system name, plug-in extension name, an enabled free drive number and EFalse 
//!					as a synchronization parameter.
//!				10. Call DismountFileSystem() providing the file system name and the drive number.
//!				11. Call RemoveExtension() providing the name of the plug-in file system extension as an argument.
//!				12. Call MountFileSystem() passing the file system name, the drive number and EFalse as a synchronization parameter.
//!				13. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	All MountFileSystem() and DismountFileSystem() calls return KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0004-001-FileSystemName_command03
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0004-001-DismountFileSystem_command04
		COMMAND		RFs1	AddExtension		PBASE-F32-RFS-PublicApi-0004-001-AddExtension_command05
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0004-001-MountFileSystem_command06
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0004-001-DismountFileSystem_command07
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0004-001-MountFileSystem_command08
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0004-001-DismountFileSystem_command09
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0004-001-MountFileSystem_command10
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0004-001-DismountFileSystem_command11
		COMMAND		RFs1	RemoveExtension		PBASE-F32-RFS-PublicApi-0004-001-RemoveExtension_command12
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0004-001-MountFileSystem_command13
		COMMAND		RFs1	Close
		COMMAND		RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0004


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0005
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0005
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountExtension() and DismountExtension() test. The test requires a file system extension plug-in.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  AddExtension(), MountExtension(), DismountExtension(), RemoveExtension().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddExtension() providing the file name of a file system extension plug-in as an argument.
//!				3. Call MountExtension() passing the plug-in extension name and an enabled free drive number with mounted file system.
//!				4. Call DismountExtension() providing the name of the plug-in extension and the drive number.
//!				5. Call RemoveExtension() providing the name of the plug-in file system extension as an argument.
//!				6. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Both MountExtension() and DismountExtension() return KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	AddExtension		PBASE-F32-RFS-PublicApi-0005-001-AddExtension_command03
		COMMAND		RFs1	MountExtension		PBASE-F32-RFS-PublicApi-0005-001-MountExtension_command04
		COMMAND		RFs1	DismountExtension	PBASE-F32-RFS-PublicApi-0005-001-DismountExtension_command05
		COMMAND		RFs1	RemoveExtension		PBASE-F32-RFS-PublicApi-0005-001-RemoveExtension_command06
		COMMAND		RFs1	Close
		COMMAND		RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0005


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0006
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0006
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function MountFileSystemAndScan() test. 
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				The test requires a file system extension plug-in.
//!				Uses API elements:  AddExtension(), RemoveExtension(), MountFileSystemAndScan(), DismountFileSystem(), FileSystemName().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call FileSystemName() for a drive where a file system was mounted.
//!				3. Call DismountFileSystem() providing the file system name and the drive number.
//!				4. Call AddExtension() providing the file name of a file system extension plug-in as an argument.
//!				5. Call MountFileSystemAndScan() passing the file system name and drive number. 
//!					Check that on return aIsMountSuccess parameter is set to ETrue.
//!				6. Call DismountFileSystem() providing the name of the file system and the drive number.
//!				7. Call MountFileSystemAndScan() passing the file system name , plug-in extension name and drive number.
//!					Check that on return aIsMountSuccess parameter is set to ETrue.
//!				8. Call DismountFileSystem() providing the name of the file system and the drive number.
//!				9. Call RemoveExtension() providing the name of the file system extension as an argument.
//!				10. Call MountFileSystem() passing the file system name and the drive number.
//!				11. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	All MountFileSystemAndScan() calls return KErrNone and set output argument aIsMountSuccess to ETrue on return.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0006-001-FileSystemName_command03
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0006-001-DismountFileSystem_command04
		COMMAND		RFs1	AddExtension		PBASE-F32-RFS-PublicApi-0006-001-AddExtension_command05
		COMMAND		RFs1	MountFileSystemAndScan	PBASE-F32-RFS-PublicApi-0006-001-MountFileSystemAndScan_command06
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0006-001-DismountFileSystem_command07
		COMMAND		RFs1	MountFileSystemAndScan	PBASE-F32-RFS-PublicApi-0006-001-MountFileSystemAndScan_command08
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0006-001-DismountFileSystem_command09
		COMMAND		RFs1	RemoveExtension		PBASE-F32-RFS-PublicApi-0006-001-RemoveExtension_command10
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0006-001-MountFileSystem_command11
		COMMAND		RFs1	Close
		COMMAND		RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0006


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0008
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0008
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function ExtensionName() test. The test requires a file system extension plug-in.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  AddExtension(), MountExtension(), ExtensionName(), RemoveExtension().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddExtension() providing the file name of a file system extension plug-in as an argument.
//!				3. Call MountExtension() passing the plug-in extension name and an enabled free drive number.
//!				4. Call ExtensionName() passing the drive number as argument and position 0. Check that aExtensionName parameter 
//!					is set to the same as a real name of the plug-in extension on return.
//!				5. Call RemoveExtension() providing the name of the plug-in file system extension as an argument.
//!				6. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	ExtensionName() returns KErrNone and the real name of the extension through the aExtensionName output argument.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	AddExtension		PBASE-F32-RFS-PublicApi-0008-001-AddExtension_command03
		COMMAND		RFs1	MountExtension		PBASE-F32-RFS-PublicApi-0008-001-MountExtension_command04
		COMMAND		RFs1	ExtensionName		PBASE-F32-RFS-PublicApi-0008-001-ExtensionName_command05
		COMMAND		RFs1	DismountExtension	PBASE-F32-RFS-PublicApi-0008-001-DismountExtension_command06
		COMMAND		RFs1	RemoveExtension		PBASE-F32-RFS-PublicApi-0008-001-RemoveExtension_command07
		COMMAND		RFs1	Close
		COMMAND		RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0008


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0009
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0009
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function RemountDrive() test.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  RemountDrive().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call RemountDrive() passing the drive (with a file system on) and flags 0 as arguments. 
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	RemountDrive() returns KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	RemountDrive		PBASE-F32-RFS-PublicApi-0009-001-RemountDrive_command03
		COMMAND		RFs1	Close
		COMMAND		RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0009


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0010
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0010
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function NotifyDismount() test.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  NotifyDismount(), MountFileSystem(), DismountFileSystem(), FileSystemName().
//! @SYMTestActions		1. Create a RFs session and call it's Connect() function.
//!				2. Create another RFs session and call it's Connect() function.
//!				3. Call first session's FileSystemName() for a drive where a file system was mounted.
//!				4. Call second session's NotifyDismount() providing the drive number and mode value EFsDismountRegisterClient and starts waiting for a notification on the background.
//!				5. Call first session's NotifyDismount() providing the drive number and mode value EFsDismountNotifyClients and starts waiting for a notification on the background.
//!				6. Call second session's AllowDismount() providing the drive number.
//!				7. Call first session's MountFileSystem() passing the file system name and the drive number to restore the file system on the drive.
//!				8. Call Close() of both sessions.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	See actions.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		CREATE_OBJECT	RFs	RFs2
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0010-001-FileSystemName_command03
		COMMAND		RFs2	new
		COMMAND		RFs2	Connect
		COMMAND		RFs2	NotifyDismount		PBASE-F32-RFS-PublicApi-0010-001-NotifyDismount_command07
		COMMAND		RFs1	NotifyDismount		PBASE-F32-RFS-PublicApi-0010-001-NotifyDismount_command09
		COMMAND		RFs2	AllowDismount		PBASE-F32-RFS-PublicApi-0010-001-AllowDismount_command12
			OUTSTANDING
				OUTSTANDING
		COMMAND		RFs2	Close
		COMMAND		RFs2	~
			OUTSTANDING	
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0010-001-MountFileSystem_command17
		COMMAND		RFs1	Close
		COMMAND		RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0010


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0011
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0011
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function NotifyDismountCancel(TRequestStatus& aStat) test.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  NotifyDismountCancel(), NotifyDismount(), MountFileSystem(), FileSystemName().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call FileSystemName() for a drive where a file system was mounted.
//!				3. Call NotifyDismount() providing the drive number and mode value EFsDismountRegisterClient and starts waiting for a notification on the background.
//!				4. Call NotifyDismountCancel() providing the same TRequestStatus as in previous call.
//!				5. Call NotifyDismount() providing the drive number and mode value EFsDismountNotifyClients and starts waiting for a notification on the background.
//!				6. Call MountFileSystem() passing the file system name and the drive number.
//!				7. Call Close() of both sessions.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	KErrCancel(-3)
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0011-001-FileSystemName_command03
		COMMAND	!AsyncError=-3	RFs1	NotifyDismount		PBASE-F32-RFS-PublicApi-0011-001-NotifyDismount_command04
		COMMAND			RFs1	NotifyDismountCancel	PBASE-F32-RFS-PublicApi-0011-001-NotifyDismountCancel_command05
		OUTSTANDING	
		COMMAND			RFs1	NotifyDismount		PBASE-F32-RFS-PublicApi-0011-001-NotifyDismount_command07
		OUTSTANDING	
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0011-001-MountFileSystem_command09
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0011


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0017
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0017
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function SwapFileSystem() test.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  SwapFileSystem()
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call FileSystemName() for a drive where a file system was mounted.
//!				3. Call DismountFileSystem() providing the file system name and the drive number.
//!				4. Call MountFileSystem() passing the file system name, an enabled free drive number and ETrue as a synchronization parameter.
//!				5. Call SwapFileSystem() passing file system name, the same file system name again and the drive number.
//!				6. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SwapFileSystem() returns KErrNone. 
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0017-001-FileSystemName_command03
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0017-001-DismountFileSystem_command04
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0017-001-MountFileSystem_command05
		COMMAND		RFs1	SwapFileSystem		PBASE-F32-RFS-PublicApi-0017-001-SwapFileSystem_command06
		COMMAND		RFs1	Close
		COMMAND		RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0017


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0018
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0018
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function NotifyDismountCancel() test.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  NotifyDismountCancel(), NotifyDismount(), MountFileSystem(), DismountFileSystem()
//! @SYMTestActions		1. Create a RFs session and call it's Connect() function.
//!				2. Call NotifyDismount() providing the drive number and mode value EFsDismountRegisterClient and starts waiting for a notification on the background.
//!				3. Call NotifyDismount() providing the drive number and mode value EFsDismountNotifyClients and starts waiting for a notification on the background.
//!				4. Call NotifyDismountCancel() without arguments(for all requests) .
//!				5. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	KErrCancel(-3)
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	NotifyDismount		PBASE-F32-RFS-PublicApi-0018-001-NotifyDismount_command03
		COMMAND	!AsyncError=-3	RFs1	NotifyDismount		PBASE-F32-RFS-PublicApi-0018-001-NotifyDismount_command04
		COMMAND			RFs1	NotifyDismountCancel	PBASE-F32-RFS-PublicApi-0018-001-NotifyDismountCancel_command05
		OUTSTANDING	
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0018


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0025
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0025
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem(const TDesC &aFileSystemName, TInt aDrive) test with incorrect file system name.
//!				Uses API elements: MountFileSystem().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystem() providing the incorrect file system name and drive for mounts where nothing mounted.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0025-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0025-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0025-001-MountFileSystem_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0025-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0025


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0026
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0026
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem(const TDesC &aFileSystemName, TInt aDrive) test, mount file system where already mounted one.
//!				Uses API elements: MountFileSystem().
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystem() providing the file system name and drive for mounts.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrAccessDenied.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0026-001-FileSystemName_command03
		COMMAND	!Error=-21	RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0026-001-MountFileSystem_command04
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0026


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0028
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0028
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem(const TDesC &aFileSystemName, TInt aDrive, TBool aIsSync) test with incorrect file system name.
//!				Uses API elements: MountFileSystem().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystem() providing the incorrect file system name and drive for mounts where nothing mounted, and ETrue as a synchronization parameter.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0028-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0028-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0028-001-MountFileSystem_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0028-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0028


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0029
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0029
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem(const TDesC &aFileSystemName, TInt aDrive, TBool aIsSync) test, mount file system where already mounted one.
//!				Uses API elements: MountFileSystem().
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystem() providing the file system name and drive for mounts, and ETrue as a synchronization parameter.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrAccessDenied.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0029-001-FileSystemName_command03
		COMMAND	!Error=-21	RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0029-001-MountFileSystem_command04
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0029


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0031
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0031
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem(const TDesC &aFileSystemName, TInt aDrive, TBool aIsSync) test with incorrect file system name.
//!				Uses API elements: MountFileSystem().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystem() providing the bad file system name and drive for mounts where nothing mounted, and EFalse as a synchronization parameter.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0031-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0031-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0031-001-MountFileSystem_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0031-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0031


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0032
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0032
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem(const TDesC &aFileSystemName, TInt aDrive, TBool aIsSync) test, mount file system where already mounted one.
//!				Uses API elements: MountFileSystem().
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystem() providing the file system name and drive for mounts, and EFalse as a synchronization parameter.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrAccessDenied.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0032-001-FileSystemName_command03
		COMMAND	!Error=-21	RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0032-001-MountFileSystem_command04
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0032


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0034
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0034
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystemAndScan(const TDesC &aFileSystemName, TInt aDrive, TBool &aIsMountSuccess) test with bad file system name.
//!				Uses API elements: MountFileSystemAndScan().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystemAndScan() providing the bad file system name and drive for mounts (not drive for MMC card).
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound, Filesystem not found
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0034-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0034-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	MountFileSystemAndScan	PBASE-F32-RFS-PublicApi-0034-001-MountFileSystemAndScan_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0034-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0034


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0035
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0035
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystemAndScan(const TDesC &aFileSystemName, TInt aDrive, TBool &aIsMountSuccess) test with mounting file system that not support scanning.
//!				Uses API elements: MountFileSystemAndScan(), DismountFileSystem().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystemAndScan() providing the file system name and the drive number.
//!				3. Call DismountFileSystem() providing the file system name and the drive number.
//!				4. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNone.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0035-001-FileSystemName_command03
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0035-001-DismountFileSystem_command04
		COMMAND		RFs1	MountFileSystemAndScan	PBASE-F32-RFS-PublicApi-0035-001-MountFileSystemAndScan_command05
		COMMAND		RFs1	Close
		COMMAND		RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0035


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0037
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0037
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem(const TDesC &aFileSystemName, const TDesC &aExtensionName, TInt aDrive, TBool aIsSync) test with incorrect file system extension name.
//!				Uses API elements: MountFileSystem(), DismountFileSystem().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystem() providing the file system name, drive for mounts, bad name of extension and EFalse as a synchronization parameter.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound, extension not found
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0037-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0037-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0037-001-MountFileSystem_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0037-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0037


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0038
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0038
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystem(const TDesC &aFileSystemName, const TDesC &aExtensionName, TInt aDrive, TBool aIsSync) test with incorrect file system extension name.
//!				Uses API elements: MountFileSystem(), DismountFileSystem().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystem() providing the file system name, drive for mounts, bad name of extension and ETrue as a synchronization parameter.
//!				3. Call DismountFileSystem() providing the file system name and the drive for mounts.
//!				4. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound, extension not found
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0038-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0038-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0038-001-MountFileSystem_command05
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0038-001-DismountFileSystem_command06
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0038-001-MountFileSystem_command07
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0038


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0040
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0040
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions DismountFileSystem() test with incorrect file system name.
//!				Uses API elements: DismountFileSystem().
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call DismountFileSystem() providing the bad file system name and drive for mounts.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound, file system not found.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-1	RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0040-001-DismountFileSystem_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0040


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0041
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0041
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions DismountFileSystem() test, dismount file system from drive, where not mounted one.
//!				Uses API elements: DismountFileSystem().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call DismountFileSystem() providing the file system name and drive for mounts where no file system mounted.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotReady
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0041-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0041-001-DismountFileSystem_command04
		COMMAND	!Error=-18	RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0041-001-DismountFileSystem_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0041-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0041


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0046
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0046
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountExtension() test, mount file system extension on drive, where no mounted file system.
//!				Uses API elements: MountExtension(), AddExtension(), RemoveExtension().
//!				The test requires a file system extension plug-in.
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddExtension() providing plug-in extension name.
//!				3. Call MountExtension() providing plug-in extension name and drive where not mounted file system. 
//!				4. Call RemoveExtension() providing plug-in extension name.
//!				5. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNone
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	AddExtension		PBASE-F32-RFS-PublicApi-0046-001-AddExtension_command03
		COMMAND		RFs1	MountExtension		PBASE-F32-RFS-PublicApi-0046-001-MountExtension_command04
		COMMAND		RFs1	DismountExtension	PBASE-F32-RFS-PublicApi-0046-001-DismountExtension_command05
		COMMAND		RFs1	RemoveExtension		PBASE-F32-RFS-PublicApi-0046-001-RemoveExtension_command06
		COMMAND		RFs1	Close
		COMMAND		RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0046


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0048
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0048
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountExtension() test with incorrect file system extension name.
//!				Uses API elements: MountExtension().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountExtension() providing bad extension name and drive for mounts where is a mounted file system on.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-1	RFs1	MountExtension		PBASE-F32-RFS-PublicApi-0048-001-MountExtension_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0048


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0050
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0050
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions DismountExtension() test with incorrect file system extension name.
//!				Uses API elements: DismountExtension().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call DismountExtension() providing bad extension name and drive number where is no mounted file system. 
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-1	RFs1	DismountExtension	PBASE-F32-RFS-PublicApi-0050-001-DismountExtension_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0050


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0054
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0054
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions ExtensionName() test with large number of position as argument.
//!				Uses API elements: ExtensionName().
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call ExtensionName() providing drive number and large number as position.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-1	RFs1	ExtensionName		PBASE-F32-RFS-PublicApi-0054-001-ExtensionName_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0054


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0059
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0059
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions NotifyDismount() test with drive where no mounted file system.
//!				Uses API elements: NotifyDismount().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call NotifyDismount() providing drive number where is no mounted file system and mode EFsDismountForceDismount and starts waiting for a notification on the background.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNone
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0059-001-FileSystemName_command03
		COMMAND		RFs1	NotifyDismount		PBASE-F32-RFS-PublicApi-0059-001-NotifyDismount_command04
		OUTSTANDING	
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0059-001-MountFileSystem_command06
		COMMAND		RFs1	Close
		COMMAND		RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0059


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0060
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0060
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions AllowDismount() test with drive where no mounted file system.
//!				Uses API elements: AllowDismount().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AllowDismount() providing drive number where no mounted file system.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound as nothing has requested to notify the dismount
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-1	RFs1	AllowDismount		PBASE-F32-RFS-PublicApi-0060-001-AllowDismount_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0060


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0069
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0069
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions SwapFileSystem() test with incorrect file system name as old file system argument.
//!				Uses API elements: SwapFileSystem().
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call SwapFileSystem() providing enabled drive, bad name of old file system name and FAT as new file system name.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-1	RFs1	SwapFileSystem		PBASE-F32-RFS-PublicApi-0069-001-SwapFileSystem_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0069


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0070
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0070
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions SwapFileSystem() test with incorrect file system name as new file system argument.
//!				Uses API elements: SwapFileSystem().
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call SwapFileSystem() providing enabled drive, FAT as old file system name and bad name of new file system name.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-1	RFs1	SwapFileSystem		PBASE-F32-RFS-PublicApi-0070-001-SwapFileSystem_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0070

START_TESTCASE 			PBASE-F32-RFS-PublicApi-0072
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0072
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function NotifyDismountCancel(TRequestStatus& aStat) test that tryes to cancel same request twice.
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//!				Uses API elements:  NotifyDismountCancel(), NotifyDismount(), MountFileSystem(), FileSystemName().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call FileSystemName() for a drive where a file system was mounted.
//!				3. Call NotifyDismount() providing the drive number and mode value EFsDismountRegisterClient and starts waiting for a notification on the background.
//!				4. Call NotifyDismountCancel() providing the same TRequestStatus as in previous call.
//!				5. Call NotifyDismountCancel() providing the same TRequestStatus as in previous call.
//!				6. Call Close() of both sessions.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Request status is set to KErrCancel(-3) and second NotifyDismountCancel() doesn't cause panic.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0072-001-FileSystemName_command03
		COMMAND	!AsyncError=-3	RFs1	NotifyDismount		PBASE-F32-RFS-PublicApi-0072-001-NotifyDismount_command04
		COMMAND			RFs1	NotifyDismountCancel	PBASE-F32-RFS-PublicApi-0072-001-NotifyDismountCancel_command05
		COMMAND			RFs1	NotifyDismountCancel	PBASE-F32-RFS-PublicApi-0072-001-NotifyDismountCancel_command06
		OUTSTANDING	
		COMMAND			RFs1	Close
		COMMAND			RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0072


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0075
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0075
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function NotifyChange(TNotifyType aType, TRequestStatus &aStat, const TDesC &aPathName) test with notify types ENotifyAll.
//!				Uses API elements:  NotifyChange(), FileSystemName(), DismountFileSystem(), MountFileSystem().
//!				The test assumes that the tested file system is already mounted onto the tested drive.
//! @SYMTestActions		1. Call Connect().
//!				2. Call FileSystemName() passing the drive number as argument.
//!				3. Call NotifyChange() passing ENotifyAll as parameter and starts waiting for a notification on the background.
//!				4. Call DismountFileSystem() passing the drive number as argument.
//!				5. Call NotifyChange() passing ENotifyAll as parameter and starts waiting for a notification on the background.
//!				6. Call MountFileSystem() passing the drive number as argument.
//!				7. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	Doesn't cause panic.
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND		RFs1	new
		COMMAND		RFs1	Connect
		COMMAND		RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0075-001-FileSystemName_command03
		COMMAND		RFs1	NotifyChange		PBASE-F32-RFS-PublicApi-0075-001-NotifyChange_command04
		COMMAND		RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0075-001-DismountFileSystem_command05
		OUTSTANDING	
		COMMAND		RFs1	NotifyChange		PBASE-F32-RFS-PublicApi-0075-001-NotifyChange_command07
		COMMAND		RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0075-001-MountFileSystem_command08
		OUTSTANDING	
		COMMAND		RFs1	Close
		COMMAND		RFs1	~
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0075


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0014
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0014
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function AddCompositeMount() test.
//!				Uses API elements:  AddCompositeMount()
//! @SYMTestActions		1. Call Connect().
//!				2. Call AddCompositeMount() providing a file system name, c-drive as a local drive, and an empty drive as a composite drive and EFalse as a synchronization parameter.
//!				3. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	Check that AddCompositeMount() returns KErrNotSupported (-5).
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0014-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0014-001-DismountFileSystem_command04
		COMMAND	!Error=-5	RFs1	AddCompositeMount	PBASE-F32-RFS-PublicApi-0014-001-AddCompositeMount_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0014-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0014


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0036
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0036
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions MountFileSystemAndScan(const TDesC &aFileSystemName, const TDesC &aExtensionName, TInt aDrive, TBool &aIsMountSuccess) test with incorrect file system extension name.
//!				Uses API elements: MountFileSystemAndScan(), DismountFileSystem().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call MountFileSystemAndScan() providing the file system name (Fat) and drive for mounts, and bad name of extension.
//!				3. Call DismountFileSystem() providing the file system name and the drive for mounts.
//!				4. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound, extension not found
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0036-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0036-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	MountFileSystemAndScan	PBASE-F32-RFS-PublicApi-0036-001-MountFileSystemAndScan_command05
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0036-001-DismountFileSystem_command06
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0036-001-MountFileSystem_command07
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0036


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0043
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0043
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions FileSystemName() test, get file system name from drive where no mounted file system.
//!				Uses API elements: FileSystemName().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call FileSystemName() providing a drive number where is no mounted file system.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0043-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0043-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0043-001-FileSystemName_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0043-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0043


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0063
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0063
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions AddCompositeMount() test with incorrect file system name in asynchronous mode.
//!				Uses API elements: AddCompositeMount().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddCompositeMount() providing C-drive as local drive, an empty drive as a composite drive argument, bad filesystem name and false as synchronous as a parameters.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0063-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0063-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	AddCompositeMount	PBASE-F32-RFS-PublicApi-0063-001-AddCompositeMount_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0063-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0063


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0064
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0064
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions AddCompositeMount() test with incorrect file system name in synchronous mode.
//!				Uses API elements: AddCompositeMount().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddCompositeMount() providing drive number as local drive, drive for mount, bad filesystem name and true as synchronous as a parameters.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotFound
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0064-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0064-001-DismountFileSystem_command04
		COMMAND	!Error=-1	RFs1	AddCompositeMount	PBASE-F32-RFS-PublicApi-0064-001-AddCompositeMount_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0064-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0064


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0065
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0065
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions AddCompositeMount() test with negative drive number for local drive argument in asynchronous mode.
//!				Uses API elements: AddCompositeMount().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddCompositeMount() providing negative drive number as local drive, drive for mounts, "FAT" filesystem name and FALSE as synchronous as a parameters.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotSupported
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0065-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0065-001-DismountFileSystem_command04
		COMMAND	!Error=-5	RFs1	AddCompositeMount	PBASE-F32-RFS-PublicApi-0065-001-AddCompositeMount_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0065-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0065


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0066
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0066
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions AddCompositeMount() test with negative drive number for composite drive argument in asynchronous mode.
//!				Uses API elements: AddCompositeMount().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddCompositeMount() providing C-drive as a local drive, negative drive number as composite drive, "FAT" filesystem name and FALSE as synchronous as a parameters.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotSupported
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-5	RFs1	AddCompositeMount	PBASE-F32-RFS-PublicApi-0066-001-AddCompositeMount_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0066


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0067
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0067
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions AddCompositeMount() test with negative drive number for local drive argument in synchronous mode.
//!				Uses API elements: AddCompositeMount().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddCompositeMount() providing negative drive number as local drive, drive for mounts, "FAT" filesystem name and TRUE as synchronous as a parameters.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotSupported
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0067-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem	PBASE-F32-RFS-PublicApi-0067-001-DismountFileSystem_command04
		COMMAND	!Error=-5	RFs1	AddCompositeMount	PBASE-F32-RFS-PublicApi-0067-001-AddCompositeMount_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0067-001-MountFileSystem_command06
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0067


START_TESTCASE 			PBASE-F32-RFS-PublicApi-0068
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0068
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Functions AddCompositeMount() test with negative drive number for composite drive argument in synchronous mode.
//!				Uses API elements: AddCompositeMount().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call AddCompositeMount() providing drive number as local drive, negative drive number as composite drive, "FAT" filesystem name and TRUE as synchronous as a parameters.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	KErrNotSupported
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND	!Error=-5	RFs1	AddCompositeMount	PBASE-F32-RFS-PublicApi-0068-001-AddCompositeMount_command03
		COMMAND			RFs1	Close
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0068

START_TESTCASE 			PBASE-F32-RFS-PublicApi-0074
//! @SYMTestCaseID		PBASE-F32-RFS-PublicApi-0074
//! @SYMAPI			RFs
//! @SYMTestCaseDesc		Function FileSystemSubType() test with non mounted drive.
//!				Uses API elements: FileSystemSubType().
//! @SYMTestActions		1. Call Connect() method.
//!				2. Call FileSystemSubType() passing the drive number where is not mounted file system as argument.
//!				3. Call Close() method.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Return KErrNotReady (-18).
//! @SYMTestType		CIT
	START_TEST_BLOCK	100	T_Sfsrv	\base\PBASE-F32-RFS-Mounts-PublicApi-RAM.ini 
		CREATE_OBJECT	RFs	RFs1
		COMMAND			RFs1	new
		COMMAND			RFs1	Connect
		COMMAND			RFs1	FileSystemName		PBASE-F32-RFS-PublicApi-0074-001-FileSystemName_command03
		COMMAND			RFs1	DismountFileSystem		PBASE-F32-RFS-PublicApi-0074-001-DismountFileSystem_command04
		COMMAND	!Error=-18	RFs1	FileSystemSubType		PBASE-F32-RFS-PublicApi-0074-001-FileSystemSubType_command05
		COMMAND			RFs1	MountFileSystem		PBASE-F32-RFS-PublicApi-0074-001-MountFileSystem_command06
		COMMAND			RFs1	Close	
		COMMAND			RFs1	~		
	END_TEST_BLOCK	
END_TESTCASE 			PBASE-F32-RFS-PublicApi-0074
