haitest/bspsvs/suite/bsp/sound/scripts/base-bsp-sound-driver-automated.script
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Tue, 02 Feb 2010 01:39:10 +0200
changeset 0 cec860690d41
permissions -rw-r--r--
Revision: 201005 Kit: 201005

//
// 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  BASE-BSP-SOUND
//! @SYMScriptTestEnvironment This test script requires a base rom image

/////////////////////////////////////////////////////////////////////
// BASE-BSP-SOUND-DRIVER-automated.script
//
//
// Tests all the PublishedPartner APIs of the RMdaDevSound
// class as a means of confidence that the APIs work as expected.
// All test cases will keep the sound system state and 
// restore that to initial state when test case finished
// Platform dependent configuration is picked up from the global environment files
//
/////////////////////////////////////////////////////////////////////

RUN_UTILS MkDir		${SYSDRIVE}\base\
RUN_UTILS MkDir		${SYSDRIVE}\base\sound\
RUN_UTILS MkDir		${SYSDRIVE}\base\sound\validation


LOAD_SUITE	t_sound
DELAY		5000

/////////////////////////////////////////////
// Driver functionality
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-0001
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-0001
//! @SYMAPI			RMdaDevSound::Open(TInt)
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Open a session to the sound device using the default unit of device value.
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Function does not leave nor panic. Session to the default sound driver is opened and closed
//! @SYMTestType		CIT
	START_TEST_BLOCK	100		t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound	devsound  
		COMMAND		devsound	new
		COMMAND		devsound	Open			UnitEnum
		COMMAND		devsound  	Close
		COMMAND		devsound  	~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-0001

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-0002
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-0002
//! @SYMAPI			RMdaDevSound::VersionRequired();
//!				RMdaDevSound::IsMdaSound()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Checkwhether the loaded driver is the MdaSound driver
//!				and receive the version of sound driver
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]				
//!				2. Call IsMdaSound() and check if that return KErrNone (it means, that loaded driver is MdaSound driver)
//!				3. Call VersionRequired() and verify with expected value from [driver] section
//!				4. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Loaded driver is MdaSound-type driver and version number is as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK		100		t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound	devsound
		COMMAND			devsound	new
		COMMAND			devsound	Open			UnitEnum
		COMMAND			devsound	IsMdaSound
		COMMAND			devsound	VersionRequired		driver
		COMMAND			devsound  	Close
		COMMAND			devsound  	~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-0002

///////////////////////////////////////////
// Format/Volume functionality
///////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-1001
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-1001
//! @SYMAPI			RMdaDevSound::PlayFormatsSupported(TSoundFormatsSupportedBuf{ref});
//!				RMdaDevSound::GetPlayFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::PlayVolume();
//!				RMdaDevSound::RecordFormatsSupported(TSoundFormatsSupportedBuf{ref});
//!				RMdaDevSound::GetRecordFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::RecodLevel(TInt)
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Request the supported formats and default used format for default sound driver
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call PlayFormatsSupported() and verify with list from [play_formats_supported]
//!				3. Call GetPlayFormat() and verify with list from [default_play_format]
//!				4. Call PlayVolume() and verify with it from [default_play_volume]
//!				5. Call RecordFormatsSupported() and verify with list from [record_formats_supported]
//!				6. Call GetRecordFormat() and verify with list from [default_record_format]
//!				7. Call RecordLevel and verify with it from [default_record_level]
//!				8. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Supported formats are as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\BASE-BSP-SOUND-DRIVER.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TSoundFormatsSupported		t_formats		
		COMMAND		t_formats			new
		COMMAND		devsound			PlayFormatsSupported	BSP-SOUND-DRIVER-PlayFormatsSupported
		COMMAND		t_formats			imin_rate_get		play_formats_supported
		COMMAND		t_formats			imax_rate_get		play_formats_supported
		COMMAND		t_formats			ichannels_get		play_formats_supported
		COMMAND		t_formats			imin_buffer_size_get	play_formats_supported
		COMMAND		t_formats			imax_buffer_size_get	play_formats_supported
		COMMAND		t_formats			imin_volume_get		play_formats_supported
		COMMAND		t_formats			imax_volume_get		play_formats_supported
		COMMAND		t_formats			iencodings_get		play_formats_supported
		COMMAND		t_formats			~
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format			irate_get			default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get		default_play_format
		COMMAND		devsound			PlayVolume		default_play_volume
		COMMAND		t_format			~
		COMMAND		t_formats			new
		COMMAND		devsound			RecordFormatsSupported	BSP-SOUND-DRIVER-RecordFormatsSupported
		COMMAND		t_formats			imin_rate_get		record_formats_supported
		COMMAND		t_formats			imax_rate_get		record_formats_supported
		COMMAND		t_formats			ichannels_get		record_formats_supported
		COMMAND		t_formats			imin_buffer_size_get	record_formats_supported
		COMMAND		t_formats			imax_buffer_size_get	record_formats_supported
		COMMAND		t_formats			imin_volume_get		record_formats_supported
		COMMAND		t_formats			imax_volume_get		record_formats_supported
		COMMAND		t_formats			iencodings_get		record_formats_supported
		COMMAND		t_formats			~		
		COMMAND		t_format			new			
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND		t_format			irate_get			default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get		default_record_format
		COMMAND		devsound			RecordLevel		default_record_level
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-1001

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-1002
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-1002
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus{ref}, const TDesC8{ref});
//!				RMdaDevSound::SetPlayVolume(TInt);
//!				RMdaDevSound::PlayVolume()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play sound with default volume level and maximal volume level
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() with [default_play_format] to verify default play format
//!				3. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				4. Call PlayData() with valid sound data from [default_file]
//!				5. Call SetPlayVolume() with max volume from [max_play_volume]
//!				6. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				7. Call PlayData() with valid sound data from [default_file]
//!				8. Call PlayVolume(), where expected result is equal with max volume from [max_play_volume]
//!				9. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playback finished w/o errors, set and received volume values are equal
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		default_file
		OUTSTANDING
		COMMAND		devsound			SetPlayVolume		max_play_volume
		COMMAND		devsound			PlayData		default_file
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		OUTSTANDING
		COMMAND		devsound			PlayVolume		max_play_volume
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-1002

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-1003
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-1003
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus{ref}, const TDesC8{ref});
//!				RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::GetPlayFormat(TCurrentSoundFormatBuf{ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play sound with default format and with some valid sound format
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				4. Call PlayData() with valid sound data from [default_file]
//!				5. Call SetPlayFormat() with unsupported format value from [unsupported_play_format] with expected error KErrNotSupported
//!				6. Call GetPlayFormat() where expected result is equal with format from [default_play_format]
//!				7. Call SetPlayFormat() with valid format value from [valid_play_format]
//!				8. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				9. Call PlayData() with valid sound data from [valid_file]
//!				10. Call GetPlayFormat(), where expected result is equal with format from [valid_play_format]
//!				11. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playback finished w/o errors errors, set and received playback format values are equal, setting of unsupported format
//!				raised KErrNotSupported
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND			devsound			PlayData		default_file
		OUTSTANDING
		COMMAND			t_format			irate_set		unsupported_play_format
		COMMAND			t_format			iencoding_set		unsupported_play_format
		COMMAND			t_format			ichannels_set		unsupported_play_format
		COMMAND			t_format			ibuffer_size_set	unsupported_play_format
		COMMAND !Error=-5	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND			t_format			irate_get		default_play_format	
		COMMAND			t_format			iencoding_get		default_play_format	
		COMMAND			t_format			ichannels_get		default_play_format	
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND			devsound			PlayData		valid_file
		OUTSTANDING
		COMMAND			t_format			irate_set		valid_play_format
		COMMAND			t_format			iencoding_set		valid_play_format
		COMMAND			t_format			ichannels_set		valid_play_format
		COMMAND			t_format			ibuffer_size_set	valid_play_format
		COMMAND			devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND			devsound			PlayData		valid_file
		OUTSTANDING
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND			t_format			irate_get		valid_play_format	
		COMMAND			t_format			iencoding_get		valid_play_format	
		COMMAND			t_format			ichannels_get		valid_play_format	
		COMMAND			t_format			ibuffer_size_get	valid_play_format
		// set back default play format
		COMMAND			t_format			irate_set		default_play_format
		COMMAND			t_format			iencoding_set		default_play_format
		COMMAND			t_format			ichannels_set		default_play_format
		COMMAND			t_format			ibuffer_size_set	default_play_format
		COMMAND			devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND			t_format			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-1003

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-1004
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-1004
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus{ref}, const TDes8{ref});
//!				RMdaDevSound::SetRecordLevel(TInt);
//!				RMdaDevSound::RecordLevel()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record sound with default volume level and max volume level
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData()
//!				4. Call SetRecordLevel() with max record volume value from [max_record_level] variable
//!				5. Call FlushRecordBuffer() //needed because otherwise RecordData() will not really stop after 
//!				6. Call RecordData()
//!				7. Call FlushRecordBuffer() //needed because otherwise operation in next step will fail with KErrInUse
//!				8. Call RecordLevel(), where expected result is equal with max record volume value from [max_record_level] variable				
//!				9. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording finished w/o errors, set and received volume values are equal
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND			t_format			irate_get		default_record_format
		COMMAND			t_format			iencoding_get		default_record_format
		COMMAND			t_format			ichannels_get		default_record_format
		COMMAND			t_format			ibuffer_size_get	default_record_format
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			SetRecordLevel		max_record_level
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			RecordLevel		max_record_level
		COMMAND			t_format			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-1004

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-1005
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-1005
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus{ref}, const TDesC8{ref});
//!				RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::GetRecordFormat(TCurrentSoundFormatBuf{ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record sound with default sound format and with some other valid sound format
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData()
//!				4. Call SetRecordFormat() with unsupported format value from [unsupported_record_format] with expected error KErrNotSupported
//!				5. Call GetRecordFormat() where expexted result is [default_record_format]
//!				6. Call SetRecordFormat() with valid record format value from [valid_record_format]
//!				7. Call RecordData()
//!				8. Call GetRecordFormat(), where expected result is equal with format from [valid_record_format] variable				
//!				9. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording finished w/o errors, set and received record format values are equal
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND			t_format			irate_get		default_record_format
		COMMAND			t_format			iencoding_get		default_record_format
		COMMAND			t_format			ichannels_get		default_record_format
		COMMAND			t_format			ibuffer_size_get	default_record_format
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			t_format			irate_set		unsupported_record_format
		COMMAND			t_format			iencoding_set		unsupported_record_format
		COMMAND			t_format			ichannels_set		unsupported_record_format
		COMMAND			t_format			ibuffer_size_set	unsupported_record_format
		COMMAND	!Error=-5	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get		default_record_format	
		COMMAND			t_format			iencoding_get		default_record_format	
		COMMAND			t_format			ichannels_get		default_record_format	
		COMMAND			t_format			ibuffer_size_get	default_record_format
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			t_format			irate_set		valid_record_format
		COMMAND			t_format			iencoding_set		valid_record_format
		COMMAND			t_format			ichannels_set		valid_record_format
		COMMAND			t_format			ibuffer_size_set	valid_record_format
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb	
		OUTSTANDING
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get		valid_record_format
		COMMAND			t_format			iencoding_get		valid_record_format
		COMMAND			t_format			ichannels_get		valid_record_format
		COMMAND			t_format			ibuffer_size_get	valid_record_format
		// set back default record format
		COMMAND			t_format			irate_set		default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set	default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			t_format			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-1005

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-1006
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-1006
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus{ref}, const TDesC8{ref});
//!				RMdaDevSound::SetPlayVolume(TInt);
//!				RMdaDevSound::PlayVolume()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play sound with volume level 25% and verify that sound level is still 25%. Set max volume level 
//!				and play again and verify that sound level is still max.
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call SetPlayVolume() with 25% volume from [play_volume_quater]
//!				4. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				5. Call PlayData() with valid sound data from [default_file]
//!				6. Call PlayVolume() where expected volume level matches [play_volume_quater]
//!				7. Call SetPlayVolume() with max volume from [max_play_volume]
//!				8. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				9. Call PlayData() with valid sound data from [default_file]
//!				10. Call PlayVolume(), where expected result is equal with max volume from [max_play_volume]
//!				11. Restore default playback sound volume
//!				12. Call Close().
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playback finished w/o errors, sound became louder
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND			devsound			SetPlayVolume		play_volume_quater
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND			devsound			PlayData		default_file
		OUTSTANDING
		COMMAND			devsound			PlayVolume		play_volume_quater
		COMMAND			devsound			SetPlayVolume		max_play_volume
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND			devsound			PlayData		default_file
		OUTSTANDING
		COMMAND			devsound			PlayVolume		max_play_volume
		//!set back default playback audio level
		COMMAND			devsound			SetPlayVolume		default_play_volume
		COMMAND			t_format			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-1006

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-1007
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-1007
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::GetRecordFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::GetPlayFormat(TCurrentSoundFormatBuf{ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set record format to valid record format. Set play format to some other valid play format 
//!				(other than just set record format. Sampling rate should be different). 
//!				
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call GetRecordFormat() and verify from [default_record_format]
//!				4. Call SetRecordFormat with [valid_record_format]
//!				5. Call GetRecordFormat() and verify from [valid_record_format]
//!				6. Call SetPlayFormat with [another_valid_play_format]
//!				7. Call GetPlayFormat() and verify from [another_valid_play_format]
//!				8. Call SetRecordFormat with [default_record_format]
//!				9. Call SetPlayFormat with [default_play_format]
//!				10. Call Close().
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat in step 6 returns KErrAccessDenied 
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND			t_format			irate_get		default_record_format
		COMMAND			t_format			iencoding_get		default_record_format
		COMMAND			t_format			ichannels_get		default_record_format
		COMMAND			t_format			ibuffer_size_get	default_record_format
		//set some valid record format
		COMMAND			t_format			irate_set		valid_record_format
		COMMAND			t_format			iencoding_set		valid_record_format
		COMMAND			t_format			ichannels_set		valid_record_format
		COMMAND			t_format			ibuffer_size_set	valid_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify valid record configuration			
		COMMAND			t_format			irate_get		valid_record_format
		COMMAND			t_format			iencoding_get		valid_record_format
		COMMAND			t_format			ichannels_get		valid_record_format
		COMMAND			t_format			ibuffer_size_get	valid_record_format
		//set some valid play format
		COMMAND			t_format			irate_set		another_valid_play_format
		COMMAND			t_format			iencoding_set		another_valid_play_format
		COMMAND			t_format			ichannels_set		another_valid_play_format
		COMMAND			t_format			ibuffer_size_set	another_valid_play_format
		COMMAND	!Error=-21	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify valid play configuration			
		COMMAND			t_format			irate_get		another_valid_play_format
		COMMAND			t_format			iencoding_get		another_valid_play_format
		COMMAND			t_format			ichannels_get		another_valid_play_format
		COMMAND			t_format			ibuffer_size_get	another_valid_play_format
		// set back default record format
		COMMAND			t_format			irate_set		default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set	default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		// set back default play format
		COMMAND			t_format			irate_set		default_play_format
		COMMAND			t_format			iencoding_set		default_play_format
		COMMAND			t_format			ichannels_set		default_play_format
		COMMAND			t_format			ibuffer_size_set	default_play_format
		COMMAND			devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND			t_format			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-1007

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-1008
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-1008
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::GetRecordFormat(TCurrentSoundFormatBuf{ref});
//!				RMdaDevSound::GetPlayFormat(TCurrentSoundFormatBuf{ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set play format to valid record format. Set record format to some other valid play format 
//!				(other than just set play format. Sampling rate should be different). 
//!				
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call GetRecordFormat() and verify from [default_record_format]
//!				4. Call SetPlayFormat with [another_valid_play_format]
//!				5. Call GetPlayFormat() and verify from [another_valid_play_format]
//!				6. Call SetRecordFormat with [valid_record_format]
//!				7. Call GetRecordFormat() and verify from [valid_record_format]
//!				8. Call SetRecordFormat with [default_record_format]
//!				9. Call SetPlayFormat with [default_play_format]
//!				10. Call Close().
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat in step 6 returns KErrAccessDenied 
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND			t_format			irate_get		default_record_format
		COMMAND			t_format			iencoding_get		default_record_format
		COMMAND			t_format			ichannels_get		default_record_format
		COMMAND			t_format			ibuffer_size_get	default_record_format
		//set some valid Play format
		COMMAND			t_format			irate_set		another_valid_play_format
		COMMAND			t_format			iencoding_set		another_valid_play_format
		COMMAND			t_format			ichannels_set		another_valid_play_format
		COMMAND			t_format			ibuffer_size_set	another_valid_play_format
		COMMAND			devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify valid play configuration			
		COMMAND			t_format			irate_get		another_valid_play_format
		COMMAND			t_format			iencoding_get		another_valid_play_format
		COMMAND			t_format			ichannels_get		another_valid_play_format
		COMMAND			t_format			ibuffer_size_get	another_valid_play_format
		//set some valid record format
		COMMAND			t_format			irate_set		valid_record_format
		COMMAND			t_format			iencoding_set		valid_record_format
		COMMAND			t_format			ichannels_set		valid_record_format
		COMMAND			t_format			ibuffer_size_set	valid_record_format
		COMMAND	!Error=-21	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify valid record configuration			
		COMMAND			t_format			irate_get		valid_record_format
		COMMAND			t_format			iencoding_get		valid_record_format
		COMMAND			t_format			ichannels_get		valid_record_format
		COMMAND			t_format			ibuffer_size_get	valid_record_format
		// set back default record format
		COMMAND			t_format			irate_set		default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set	default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		// set back default play format
		COMMAND			t_format			irate_set		default_play_format
		COMMAND			t_format			iencoding_set		default_play_format
		COMMAND			t_format			ichannels_set		default_play_format
		COMMAND			t_format			ibuffer_size_set	default_play_format
		COMMAND			devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND			t_format			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-1008

///////////////////////////////////////////
// Playback functionality
///////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-2001
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-2001
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus{ref}, const TDesC8{ref});
//!				RMdaDevSound::CancelPlayData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play sound, then cancel playing and verify playback status
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with valid sound data from [default_file_cancel]
//!				4. Call CancelPlayData()
//!				5. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playback canceled with KErrCancel
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-3	devsound			PlayData		default_file_cancel
		OUTSTANDING		
		COMMAND			t_format  			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-2001

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-2002
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-2002
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus{ref}, const TDesC8{ref});
//!				RMdaDevSound::PausePlayBuffer();
//!				RMdaDevSound::ResumePlaying()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play sound, pause and resume playback.
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with valid sound data from [default_file]
//!				4. Call PausePlayBuffer()
//!				5. Resume playback with ResumePlaying()
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playback paused, resumed and finished w/o errors
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND			devsound			PlayData		default_file
		COMMAND			devsound			PausePlayBuffer
		COMMAND			devsound			ResumePlaying		
		OUTSTANDING	
		COMMAND			t_format  			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-2002

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-2003
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-2003
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus{ref}, const TDesC8{ref});
//!				RMdaDevSound::PausePlayBuffer();
//!				RMdaDevSound::ResumePlaying()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play sound, pause and resume playback few times
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with valid sound data from [default_file]
//!				4. Call PausePlayBuffer()
//!				5. Resume playback with ResumePlaying()
//!				6. Call PausePlayBuffer()
//!				7. Resume playback with ResumePlaying()
//!				8. Call PausePlayBuffer()
//!				9. Resume playback with ResumePlaying()	
//!				10. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playback paused, resumed and finished w/o errors
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND			devsound			PlayData		default_file
		COMMAND			devsound			PausePlayBuffer
		COMMAND			devsound			ResumePlaying		
		COMMAND			devsound			PausePlayBuffer
		COMMAND			devsound			ResumePlaying		
		COMMAND			devsound			PausePlayBuffer
		COMMAND			devsound			ResumePlaying		
		OUTSTANDING	
		COMMAND			t_format  			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-2003

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-2004
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-2004
//! @SYMAPI			RMdaDevSound::NotifyPlayError(TRequestStatus{ref});
//!				RMdaDevSound::CancelNotifyPlayError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute error notification while playing sound and cancel notification monitoring
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call NotifyPlayError() and starts waiting for a notification on the background
//!				4. Call PlayData() with valid sound data from [default_file]
//!				5. Call CancelNotifyPlayError()
//!				6. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Notification monitoring canceled with KErrCancel status
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-3	devsound			NotifyPlayError
		COMMAND			devsound			PlayData		default_file
		COMMAND			devsound			CancelNotifyPlayError
		OUTSTANDING
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-2004

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-2005
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-2005
//! @SYMAPI			RMdaDevSound::NotifyPlayError(TRequestStatus{ref});
//!				RMdaDevSound::CancelNotifyPlayError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute error notification without sound playing and cancel notification monitoring
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyPlayError() and starts waiting for a notification on the background
//!				3. Call CancelNotifyPlayError()
//!				4. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Notification monitoring canceled with KErrCancel status
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		COMMAND !AsyncError=-3	devsound			NotifyPlayError
		COMMAND			devsound			CancelNotifyPlayError
		OUTSTANDING			
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-2005

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-2006
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-2006
//! @SYMAPI			RMdaDevSound::NotifyPlayError(TRequestStatus{ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute error notification and catch KErrUnderflow message when	playing zero-filled buffer
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call NotifyPlayError() and starts waiting for a notification on the background
//!				4. Call PlayData() with zero-filled 32kb data
//!				5. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Notification monitoring catched KErrUnderflow error and also play Playdata catches KErrNone
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND			devsound			PlayData		zero_filled_32kb.raw
		OUTSTANDING	
		COMMAND			t_format  			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-2006

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-2007
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-2007
//! @SYMAPI			RMdaDevSound::FlushPlayBuffer()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playback and flush sound buffer to stop playback
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with valid sound data from [default_file_flush]
//!				4. Call FlushPlayBuffer()
//!				5. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playback canceled with KErrCancel
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND	!AsyncError=-3	devsound			PlayData		default_file_flush
		OUTSTANDING		
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-2007

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-2008
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-2008
//! @SYMAPI			RMdaDevSound::ResetBytesPlayed();
//!				RMdaDevSound::BytesPlayed())
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Count and verify bytes played before and after playback
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call BytesPlayed(), expected value 0
//!				4. Call ResetBytesPlayed()
//!				5. Call BytesPlayed(), expected value 0
//!				6. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				7. Call PlayData() with zero-filled 2-byte sound data
//!				8. Call FlushPlayBuffer
//!				9. Call BytesPlayed(), expected value is 2
//!				10. Call ResetBytesPlayed()
//!				11. Call BytesPlayed(), expected value 0
//!				12. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	ResetBytesPlayed() resets the played bytes count and BytesPlayed() returns the number of bytes as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND			t_format			irate_get		default_play_format
		COMMAND			t_format			iencoding_get		default_play_format
		COMMAND			t_format			ichannels_get		default_play_format
		COMMAND			t_format			ibuffer_size_get	default_play_format
		COMMAND			devsound			BytesPlayed		bytes_played_expected_zero
		COMMAND			devsound			ResetBytesPlayed
		COMMAND			devsound			BytesPlayed		bytes_played_expected_zero
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND			devsound			PlayData		zero_filled_2_bytes.raw
		OUTSTANDING
		COMMAND			devsound			FlushPlayBuffer
		COMMAND			devsound			BytesPlayed		bytes_played_expected_2_bytes
		COMMAND			devsound			ResetBytesPlayed
		COMMAND			devsound			BytesPlayed		bytes_played_expected_zero
		
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-2008

///////////////////////////////////////////
// Record functionality
///////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-3001
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-3001
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus{ref}, const TDesC8{ref});
//!				RMdaDevSound::CancelRecordData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record sound and cancel recording
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData() with [record_data_32kb_cancel]
//!				4. Call CancelRecordData()
//!				5. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording canceled with KErrCancel
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND			t_format			irate_get		default_record_format
		COMMAND			t_format			iencoding_get		default_record_format
		COMMAND			t_format			ichannels_get		default_record_format
		COMMAND			t_format			ibuffer_size_get	default_record_format
		COMMAND	!AsyncError=-3	devsound			RecordData		record_data_32kb_cancel
		OUTSTANDING
		COMMAND			t_format  			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-3001

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-3002
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-3002
//! @SYMAPI			RMdaDevSound::NotifyRecordError(TRequestStatus{ref});
//!				RMdaDevSound::CancelNotifyRecordError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute error notification, then record sound and cancel notification monitoring
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call NotifyRecordError() and starts waiting for a notification on the background
//!				4. Call RecordData()
//!				5. Call CancelNotifyRecordError()
//!				6. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Notification monitoring canceled with KErrCancel status
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND			t_format			irate_get		default_record_format
		COMMAND			t_format			iencoding_get		default_record_format
		COMMAND			t_format			ichannels_get		default_record_format
		COMMAND			t_format			ibuffer_size_get	default_record_format
		COMMAND !AsyncError=-3	devsound			NotifyRecordError
		COMMAND			devsound			RecordData		record_data_32kb
		COMMAND			devsound			CancelNotifyRecordError
		OUTSTANDING
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-3002

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-3003
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-3003
//! @SYMAPI			RMdaDevSound::NotifyRecordError(TRequestStatus{ref});
//!				RMdaDevSound::CancelNotifyRecordError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute error notification and cancel notification monitoring without recording
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyRecordError() and starts waiting for a notification on the background
//!				3. Call CancelNotifyRecordError()
//!				4. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Notification monitoring canceled with KErrCancel status
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		COMMAND !AsyncError=-3	devsound			NotifyRecordError
		COMMAND			devsound			CancelNotifyRecordError
		OUTSTANDING	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-3003

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-3004
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-3004
//! @SYMAPI			RMdaDevSound::FlushRecordBuffer()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording and flush sound buffer to stop recording
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData() with [record_data_32kb_flush]
//!				4. Call FlushRecordBuffer()
//!				5. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording stopped with KErrNone
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND			t_format			irate_get		default_record_format
		COMMAND			t_format			iencoding_get		default_record_format
		COMMAND			t_format			ichannels_get		default_record_format
		COMMAND			t_format			ibuffer_size_get	default_record_format
		COMMAND			devsound			RecordData		record_data_32kb_flush
		OUTSTANDING		
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-3004

///////////////////////////////////////////
// Different audio types and encodings playback
///////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4001
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4001
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm8 mono 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm8_mono_8khz_32kb]
//!				3. Call PlayData() with valid sound data from [pcm8_mono_8khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm8_mono_8khz_32kb
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm8_mono_8khz_32kb
		COMMAND		t_format				iencoding_set		set_settings_pcm8_mono_8khz_32kb
		COMMAND		t_format				ichannels_set		set_settings_pcm8_mono_8khz_32kb
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm8_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm8_mono_8khz_32kb_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm8_mono_8khz_32kb_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm8_mono_8khz_32kb_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm8_mono_8khz_32kb_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4001

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4002
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4002
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_8khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_8khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_8khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_8khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_8khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_8khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
		COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_8khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_8khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_8khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_8khz_expected
		//!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format  				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4002


START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4003
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4003
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 11khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_11khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_11khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_11khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_11khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_11khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_11khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_11khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
		COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_11khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_11khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_11khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_11khz_expected
		//!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format  				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4003

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4004
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4004
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 12khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_12khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_12khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_12khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_12khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_12khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_12khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_12khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
		COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_12khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_12khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_12khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_12khz_expected
		//!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4004

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4005
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4005
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 16khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_16khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_16khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_16khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_16khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_16khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_16khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_16khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
		COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_16khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_16khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_16khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_16khz_expected
		//!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4005

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4006
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4006
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 22khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_22khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_22khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_22khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_22khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_22khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_22khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_22khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
		COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_22khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_22khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_22khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_22khz_expected
		//!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4006

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4007
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4007
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 24khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_24khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_24khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_24khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_24khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_24khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_24khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_24khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_24khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_24khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_24khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_24khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4007

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4008
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4008
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 32khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_32khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_32khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_32khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_32khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_32khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_32khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_32khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_32khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_32khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_32khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_32khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4008

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4009
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4009
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 44.1khz
//!		
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_44.1khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_44.1khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_44.1khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_44.1khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_44.1khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_44.1khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_44.1khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_41.1khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_41.1khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_41.1khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_41.1khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4009

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4010
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4010
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 mono 48khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_mono_48khz]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_48khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_mono_48khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_mono_48khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_mono_48khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_mono_48khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_mono_48khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_mono_48khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_mono_48khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_mono_48khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_mono_48khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4010

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4011
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4011
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_8khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_8khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_8khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_8khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_8khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_8khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_8khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_8khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_8khz_expected	
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_8khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_8khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4011

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4012
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4012
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 11khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_11khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_11khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_11khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_11khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_11khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_11khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_11khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_11khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_11khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_11khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_11khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4012

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4013
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4013
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 12khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_12khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_12khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_12khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_12khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_12khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_12khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_12khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_12khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_12khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_12khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_12khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4013

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4014
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4014
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 16khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_16khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_16khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_16khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_16khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_16khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_16khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_16khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_16khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_16khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_16khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_16khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4014

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4015
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4015
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 22khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_22khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_22khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_22khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_22khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_22khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_22khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_22khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_22khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_22khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_22khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_22khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4015

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4016
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4016
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 24khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_24khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_24khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_24khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_24khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_24khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_24khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_24khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_24khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_24khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_24khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_24khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4016

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4017
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4017
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 32khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_32khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_32khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_32khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_32khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_32khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_32khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_32khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_32khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_32khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_32khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_32khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4017

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4018
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4018
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 44.1khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_44.1khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_44.1khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_44.1khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_44.1khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_44.1khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_44.1khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_44.1khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_44.1khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_44.1khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_44.1khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_44.1khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4018

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4019
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4019
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 48khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_48khz]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_48khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_48khz
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_48khz
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_48khz
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_48khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_48khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_48khz_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_48khz_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_48khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_48khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4019

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4020
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4020
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in alaw8 mono 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_alaw8bit_mono_8khz]
//!				3. Call PlayData() with valid sound data from [alaw8bit_mono_8khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_alaw8bit_mono_8khz
		COMMAND		t_format				ibuffer_size_set		set_settings_alaw8bit_mono_8khz
		COMMAND		t_format				iencoding_set		set_settings_alaw8bit_mono_8khz
		COMMAND		t_format				ichannels_set		set_settings_alaw8bit_mono_8khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		alaw8bit_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_alaw8bit_mono_8khz_expected
		COMMAND		t_format				iencoding_get		set_settings_alaw8bit_mono_8khz_expected
		COMMAND		t_format				ichannels_get		set_settings_alaw8bit_mono_8khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_alaw8bit_mono_8khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4020

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4021
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4021
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in alaw8 stereo 24khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_alaw8bit_stereo_24khz]
//!				3. Call PlayData() with valid sound data from [alaw8bit_stereo_24khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_alaw8bit_stereo_24khz
		COMMAND		t_format				ibuffer_size_set		set_settings_alaw8bit_stereo_24khz
		COMMAND		t_format				iencoding_set		set_settings_alaw8bit_stereo_24khz
		COMMAND		t_format				ichannels_set		set_settings_alaw8bit_stereo_24khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		alaw8bit_stereo_24khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_alaw8bit_stereo_24khz_expected
		COMMAND		t_format				iencoding_get		set_settings_alaw8bit_stereo_24khz_expected
		COMMAND		t_format				ichannels_get		set_settings_alaw8bit_stereo_24khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_alaw8bit_stereo_24khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4021

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4022
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4022
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in mulaw8 mono 12khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_mulaw8bit_mono_12khz]
//!				3. Call PlayData() with valid sound data from [mulaw8bit_mono_12khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_mulaw8bit_mono_12khz
		COMMAND		t_format				ibuffer_size_set		set_settings_mulaw8bit_mono_12khz
		COMMAND		t_format				iencoding_set		set_settings_mulaw8bit_mono_12khz
		COMMAND		t_format				ichannels_set		set_settings_mulaw8bit_mono_12khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		mulaw8bit_mono_12khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_mulaw8bit_mono_12khz_expected
		COMMAND		t_format				iencoding_get		set_settings_mulaw8bit_mono_12khz_expected
		COMMAND		t_format				ichannels_get		set_settings_mulaw8bit_mono_12khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_mulaw8bit_mono_12khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4022

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4023
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4023
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in mulaw8 stereo 32khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_mulaw8bit_stereo_32khz]
//!				3. Call PlayData() with valid sound data from [mulaw8bit_stereo_32khz_32kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_mulaw8bit_stereo_32khz
		COMMAND		t_format				ibuffer_size_set		set_settings_mulaw8bit_stereo_32khz
		COMMAND		t_format				iencoding_set		set_settings_mulaw8bit_stereo_32khz
		COMMAND		t_format				ichannels_set		set_settings_mulaw8bit_stereo_32khz
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		mulaw8bit_stereo_32khz_32kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_mulaw8bit_stereo_32khz_expected
		COMMAND		t_format				iencoding_get		set_settings_mulaw8bit_stereo_32khz_expected
		COMMAND		t_format				ichannels_get		set_settings_mulaw8bit_stereo_32khz_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_mulaw8bit_stereo_32khz_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4023

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-4024
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-4024
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute playing audio in pcm16 stereo 24khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_set_settings_pcm16_stereo_24khz_320kb]
//!				3. Call PlayData() with valid sound data from [pcm16_stereo_24khz_320kb.raw]
//!				4. Call FlushPlayBuffer
//!				5. Call GetPlayFormat() and verify the sound found configuration
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK	100					t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound				devsound
		COMMAND		devsound				new
		COMMAND		devsound				Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat			t_format		
		COMMAND		t_format				new
		COMMAND		t_format				irate_set			set_settings_pcm16_stereo_24khz_320kb
		COMMAND		t_format				ibuffer_size_set		set_settings_pcm16_stereo_24khz_320kb
		COMMAND		t_format				iencoding_set		set_settings_pcm16_stereo_24khz_320kb
		COMMAND		t_format				ichannels_set		set_settings_pcm16_stereo_24khz_320kb
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				PlayData		pcm16_stereo_24khz_320kb.raw
		OUTSTANDING
		COMMAND		devsound				FlushPlayBuffer
                COMMAND		devsound				GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		COMMAND		t_format				irate_get			set_settings_pcm16_stereo_24khz_320kb_expected
		COMMAND		t_format				iencoding_get		set_settings_pcm16_stereo_24khz_320kb_expected
		COMMAND		t_format				ichannels_get		set_settings_pcm16_stereo_24khz_320kb_expected
		COMMAND		t_format				ibuffer_size_get		set_settings_pcm16_stereo_24khz_320kb_expected
                //!set back default play configuration
		COMMAND		t_format				irate_set			default_play_format
		COMMAND		t_format				iencoding_set		default_play_format
		COMMAND		t_format				ichannels_set		default_play_format
		COMMAND		t_format				ibuffer_size_set		default_play_format
		COMMAND		devsound				SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound				SetPlayVolume		default_play_volume
		COMMAND		t_format				~
		COMMAND		devsound				Close
		COMMAND		devsound				~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-4024

///////////////////////////////////////////
// Recording with different audio formats and types
///////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5001
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5001
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm8 mono 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm8_mono_8khz_32kb]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm8_mono_8khz_32kb
		COMMAND			t_format			iencoding_set		set_settings_pcm8_mono_8khz_32kb
		COMMAND			t_format			ichannels_set		set_settings_pcm8_mono_8khz_32kb
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm8_mono_8khz_32kb
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm8_mono_8khz_32kb_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm8_mono_8khz_32kb_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm8_mono_8khz_32kb_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm8_mono_8khz_32kb_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5001

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5002
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5002
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_8khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_8khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_8khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_8khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_8khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_8khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_8khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_8khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_8khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5002

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5003
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5003
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 11khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_11khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_11khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_11khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_11khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_11khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_11khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_11khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_11khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_11khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5003

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5004
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5004
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 12khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_12khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_12khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_12khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_12khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_12khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_12khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_12khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_12khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_12khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5004

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5005
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5005
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 16khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_16khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_16khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_16khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_16khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_16khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_16khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_16khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_16khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_16khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5005

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5006
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5006
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 22khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_22khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_22khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_22khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_22khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_22khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_22khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_22khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_22khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_22khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5006

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5007
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5007
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 24khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_24khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_24khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_24khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_24khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_24khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_24khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_24khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_24khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_24khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5007

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5008
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5008
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 32khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_32khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_32khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_32khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_32khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_32khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_32khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_32khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_32khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_32khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5008

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5009
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5009
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 44.1khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_44.1khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_44.1khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_44.1khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_44.1khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_44.1khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_41.1khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_41.1khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_41.1khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_41.1khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5009

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5010
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5010
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 mono 48khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_mono_48khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_mono_48khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_mono_48khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_mono_48khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_mono_48khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_mono_48khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_mono_48khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_mono_48khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_mono_48khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5010

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5011
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5011
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_8khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_8khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_8khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_8khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_8khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_8khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_8khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_8khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_8khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5011

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5012
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5012
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 11khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_11khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_11khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_11khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_11khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_11khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_11khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_11khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_11khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_11khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5012

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5013
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5013
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 12khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_12khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_12khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_12khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_12khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_12khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_12khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_12khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_12khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_12khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5013


START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5014
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5014
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 16khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_16khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_16khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_16khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_16khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_16khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_16khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_16khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_16khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_16khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5014

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5015
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5015
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 22khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_22khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_22khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_22khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_22khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_22khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_22khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_22khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_22khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_22khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5015

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5016
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5016
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 24khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_24khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_24khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_24khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_24khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_24khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_24khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_24khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_24khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_24khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5016

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5017
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5017
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 32khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_32khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_32khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_32khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_32khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_32khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_32khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_32khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_32khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_32khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5017

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5018
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5018
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 44.1khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_44.1khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_44.1khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_44.1khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_44.1khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_44.1khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_44.1khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_44.1khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_44.1khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_44.1khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5018

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5019
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5019
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 48khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_48khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_48khz
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_48khz
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_48khz
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_48khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_48khz_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_48khz_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_48khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_48khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5019

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5020
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5020
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in alaw8bit mono 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_alaw8bit_mono_8khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_alaw8bit_mono_8khz
		COMMAND			t_format			iencoding_set		set_settings_alaw8bit_mono_8khz
		COMMAND			t_format			ichannels_set		set_settings_alaw8bit_mono_8khz
		COMMAND			t_format			ibuffer_size_set		set_settings_alaw8bit_mono_8khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_alaw8bit_mono_8khz_expected
		COMMAND			t_format			iencoding_get		set_settings_alaw8bit_mono_8khz_expected
		COMMAND			t_format			ichannels_get		set_settings_alaw8bit_mono_8khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_alaw8bit_mono_8khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5020

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5021
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5021
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in alaw8bit stereo 8khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_alaw8bit_stereo_24khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_alaw8bit_stereo_24khz
		COMMAND			t_format			iencoding_set		set_settings_alaw8bit_stereo_24khz
		COMMAND			t_format			ichannels_set		set_settings_alaw8bit_stereo_24khz
		COMMAND			t_format			ibuffer_size_set		set_settings_alaw8bit_stereo_24khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_alaw8bit_stereo_24khz_expected
		COMMAND			t_format			iencoding_get		set_settings_alaw8bit_stereo_24khz_expected
		COMMAND			t_format			ichannels_get		set_settings_alaw8bit_stereo_24khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_alaw8bit_stereo_24khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5021

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5022
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5022
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in mulaw8bit mono 12khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_mulaw8bit_mono_12khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_mulaw8bit_mono_12khz
		COMMAND			t_format			iencoding_set		set_settings_mulaw8bit_mono_12khz
		COMMAND			t_format			ichannels_set		set_settings_mulaw8bit_mono_12khz
		COMMAND			t_format			ibuffer_size_set		set_settings_mulaw8bit_mono_12khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_mulaw8bit_mono_12khz_expected
		COMMAND			t_format			iencoding_get		set_settings_mulaw8bit_mono_12khz_expected
		COMMAND			t_format			ichannels_get		set_settings_mulaw8bit_mono_12khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_mulaw8bit_mono_12khz_expected
		//!set back default record configuration
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5022

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5023
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5023
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in mulaw8bit stereo 32khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_mulaw8bit_stereo_32khz]
//!				3. Call RecordData() with values from [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_mulaw8bit_stereo_32khz
		COMMAND			t_format			iencoding_set		set_settings_mulaw8bit_stereo_32khz
		COMMAND			t_format			ichannels_set		set_settings_mulaw8bit_stereo_32khz
		COMMAND			t_format			ibuffer_size_set		set_settings_mulaw8bit_stereo_32khz
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_mulaw8bit_stereo_32khz_expected
		COMMAND			t_format			iencoding_get		set_settings_mulaw8bit_stereo_32khz_expected
		COMMAND			t_format			ichannels_get		set_settings_mulaw8bit_stereo_32khz_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_mulaw8bit_stereo_32khz_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5023

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-5024
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-5024
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Execute recording audio in pcm16 stereo 24khz
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [set_set_settings_pcm16_stereo_24khz_320kb]
//!				3. Call RecordData() with values from [record_data_320kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call GetRecordFormat() to verify sound format
//!				6. Restore initial sound h/w configuration
//!				7. Call Close()
//!
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Recording completes without any errors, sound format is set and verified
//! @SYMTestType		CIT
	START_TEST_BLOCK		100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT		RMdaDevSound			devsound  
		COMMAND			devsound			new
		COMMAND			devsound			Open			UnitEnum
		//!set default play configuration
		CREATE_OBJECT		TCurrentSoundFormat		t_format		
		COMMAND			t_format			new			
		COMMAND			t_format			irate_set			set_settings_pcm16_stereo_24khz_320kb
		COMMAND			t_format			iencoding_set		set_settings_pcm16_stereo_24khz_320kb
		COMMAND			t_format			ichannels_set		set_settings_pcm16_stereo_24khz_320kb
		COMMAND			t_format			ibuffer_size_set		set_settings_pcm16_stereo_24khz_320kb
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			RecordData		record_data_320kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		COMMAND			t_format			irate_get			set_settings_pcm16_stereo_24khz_320kb_expected
		COMMAND			t_format			iencoding_get		set_settings_pcm16_stereo_24khz_320kb_expected
		COMMAND			t_format			ichannels_get		set_settings_pcm16_stereo_24khz_320kb_expected
		COMMAND			t_format			ibuffer_size_get		set_settings_pcm16_stereo_24khz_320kb_expected
		//!set back default play configuration
		COMMAND			t_format			irate_set			default_record_format
		COMMAND			t_format			iencoding_set		default_record_format
		COMMAND			t_format			ichannels_set		default_record_format
		COMMAND			t_format			ibuffer_size_set		default_record_format
		COMMAND			devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format  			~	
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-5024

/////////////////////////////////////////////
// Play format changing scenarios
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7001
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7001
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set valid play format without calling FlushPlayBuffer() after PlayData() has been called first.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and berify from [default_play_format]
//!				3. Call PlayData() with valid sound data from [default_file]
//!				4. Call SetPlayFormat() with default value from [default_play_format]
//!				5. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Calling SetPlayFormat() returns KErrNone in step 4.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND		devsound			PlayData		default_file
		OUTSTANDING
		COMMAND		devsound			FlushPlayBuffer
		//!set default play configuration			
		COMMAND		t_format			irate_set		default_play_format
		COMMAND		t_format			iencoding_set		default_play_format
		COMMAND		t_format			ichannels_set		default_play_format
		COMMAND		t_format			ibuffer_size_set	default_play_format
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7001

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7002
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7002
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref});
//!				RMdaDevSound::CancelPlayData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set valid play format without calling FlushPlayBuffer() after PlayData() has been called first, 
//!				but instead call CancelPlayData() while PlayData() is still ongoing. 
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with valid sound data from [default_file_cancel]
//!				4. Call CancelPlayData()
//!				5. Call SetPlayFormat() with default value from [default_play_format]
//!				6. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Calling SetPlayFormat() returns KErrNone in step 5 and PlayData returns KErrCancel in step 3.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND	!AsyncError=-3	devsound			PlayData		default_file_cancel
		OUTSTANDING
		//!set default play configuration			
		COMMAND		t_format			irate_set		default_play_format
		COMMAND		t_format			iencoding_set		default_play_format
		COMMAND		t_format			ichannels_set		default_play_format
		COMMAND		t_format			ibuffer_size_set	default_play_format
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7002

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7003
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7003
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref});
//!				RMdaDevSound::CancelPlayData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set valid play format without calling FlushPlayBuffer() after PlayData() has been called first, 
//!				but instaed call CancelPlayData() after PlayData()
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				4. Call PlayData() with valid sound data from [default_file]
//!				5. Call CancelPlayData()
//!				6. Call SetPlayFormat() with default value from [default_play_format]
//!				7. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Calling SetPlayFormat() returns KErrNone in step 5 and PlayData returns KErrNone in step 3.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		default_file
		OUTSTANDING
		COMMAND		devsound			CancelPlayData
		//!set default play configuration			
		COMMAND		t_format			irate_set		default_play_format
		COMMAND		t_format			iencoding_set		default_play_format
		COMMAND		t_format			ichannels_set		default_play_format
		COMMAND		t_format			ibuffer_size_set	default_play_format
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7003

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7004
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7004
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set invalid play format 3 times in a row and then call PlayData()
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with default value from [invalid_play_format]
//!				3. Call SetPlayFormat() with default value from [invalid_play_format]
//!				4. Call SetPlayFormat() with default value from [invalid_play_format]
//!				5. Call PlayData() with valid sound data from [default_file]
//!				6. Call SetPlayFormat() with default value from [default_play_format]
//!				7. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat returns KErrNotSupported every time when executing it 3 times in a row
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		t_format			irate_set		unsupported_play_format
		COMMAND		t_format			iencoding_set		unsupported_play_format
		COMMAND		t_format			ichannels_set		unsupported_play_format
		COMMAND		t_format			ibuffer_size_set	unsupported_play_format
		COMMAND	!Error=-5	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			irate_set		unsupported_play_format
		COMMAND		t_format			iencoding_set		unsupported_play_format
		COMMAND		t_format			ichannels_set		unsupported_play_format
		COMMAND		t_format			ibuffer_size_set	unsupported_play_format
		COMMAND	!Error=-5	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			irate_set		unsupported_play_format
		COMMAND		t_format			iencoding_set		unsupported_play_format
		COMMAND		t_format			ichannels_set		unsupported_play_format
		COMMAND		t_format			ibuffer_size_set	unsupported_play_format
		COMMAND	!Error=-5	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound			PlayData		default_file
		OUTSTANDING
		//!set default play configuration			
		COMMAND		devsound			FlushPlayBuffer
		COMMAND		t_format			irate_set		default_play_format
		COMMAND		t_format			iencoding_set		default_play_format
		COMMAND		t_format			ichannels_set		default_play_format
		COMMAND		t_format			ibuffer_size_set	default_play_format
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7004

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7005
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7005
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetPlayFormat() with valid play format when audio is still playing
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				4. Call PlayData() with valid sound data from [default_file]
//!				5. Call SetPlayFormat() with default value from [default_play_format] while audio is still playing
//!				6. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat in step 4 returns KErrInUse 
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		default_file
		//!set default play configuration			
		COMMAND		t_format			irate_set		default_play_format
		COMMAND		t_format			iencoding_set		default_play_format
		COMMAND		t_format			ichannels_set		default_play_format
		COMMAND		t_format			ibuffer_size_set	default_play_format
		COMMAND	!Error=-14	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7005

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7006
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7006
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetPlayFormat() with valid values but with invalid iEncoding (out of accepted range)
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with default value from [default_play_format_invalid_encoding]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat in step 4 returns KErrNotSupproted
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		default_play_format
		COMMAND		t_format			iencoding_set		default_play_format_invalid_encoding
		COMMAND		t_format			ichannels_set		default_play_format
		COMMAND		t_format			ibuffer_size_set	default_play_format
		COMMAND	!Error=-5	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7006

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7007
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7007
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetPlayFormat() with valid values but with invalid iRate (out of accepted range)
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with default value from [default_play_format_invalid_rate]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat in step 4 returns KErrNotSupproted
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		default_play_format_invalid_rate
		COMMAND		t_format			iencoding_set		default_play_format
		COMMAND		t_format			ichannels_set		default_play_format
		COMMAND		t_format			ibuffer_size_set	default_play_format
		COMMAND	!Error=-5	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7007

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7008
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7008
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetPlayFormat() with valid values but with invalid iBufferSize (out of accepted range)
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with default value from [default_play_format_invalid_buffer_size]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat in step 4 returns KErrNotSupproted
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		default_play_format
		COMMAND		t_format			iencoding_set		default_play_format
		COMMAND		t_format			ichannels_set		default_play_format
		COMMAND		t_format			ibuffer_size_set	default_play_format_invalid_buffer_size
		COMMAND	!Error=-5	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7008

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7009
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7009
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetPlayFormat() with valid values but with invalid iChannels (out of accepted range)
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with default value from [default_play_format_invalid_channels]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat in step 4 returns KErrNotSupproted
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		default_play_format
		COMMAND		t_format			iencoding_set		default_play_format
		COMMAND		t_format			ichannels_set		default_play_format_invalid_channels
		COMMAND		t_format			ibuffer_size_set	default_play_format
		COMMAND	!Error=-5	devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7009

/////////////////////////////////////////////
// Record format changing scenarios
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7011
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7011
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set valid record format without calling FlushRecordBuffer() after RecordData() has been called first.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData() with [record_data_32kb]
//!				4. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				5. Call SetRecordFormat() with default value from [default_record_format]
//!				6. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Calling SetRecordFormat() returns KErrNone in step 4.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			RecordData		record_data_32kb
		OUTSTANDING
		//!set default record configuration			
		COMMAND			devsound			FlushRecordBuffer
		COMMAND		t_format			irate_set		default_record_format
		COMMAND		t_format			iencoding_set		default_record_format
		COMMAND		t_format			ichannels_set		default_record_format
		COMMAND		t_format			ibuffer_size_set	default_record_format
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7011

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7012
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7012
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf {ref});
//!				RMdaDevSound::CancelRecordData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set valid record format without calling FlushRecordBuffer() after RecordData() has been called first,
//!				but instaed call CancelRecordData() while RecordData() is still ongoing
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData() with [record_data_32kb_cancel]
//!				5. Call CancelRecordData()
//!				6. Call SetRecordFormat() with default value from [default_record_format]
//!				7. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Calling SetRecordFormat() returns KErrNone in step 5 and RecordData returns KErrCancel in step 3.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND	!AsyncError=-3	devsound			RecordData		record_data_32kb_cancel
		OUTSTANDING
		//!set default record configuration			
		COMMAND		t_format			irate_set		default_record_format
		COMMAND		t_format			iencoding_set		default_record_format
		COMMAND		t_format			ichannels_set		default_record_format
		COMMAND		t_format			ibuffer_size_set	default_record_format
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7012

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7013
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7013
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf {ref});
//!				RMdaDevSound::CancelRecordData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set valid record format without calling FlushRecordBuffer() after RecordData() has been called first,
//!				but instaed call CancelRecordData() after RecordData()
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call NotifyRecordError() //needed because otherwise RecordData() will not really stop after Outstanding
//!				4. Call RecordData()
//!				5. Call CancelRecordData()
//!				6. Call SetRecordFormat() with default value from [default_record_format]
//!				7. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Calling SetRecordFormat() returns KErrNone in step 5 and RecordData returns KErrNone in step 3.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND !AsyncError=-9	devsound			NotifyRecordError
		COMMAND		devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		devsound			CancelRecordData
		//!set default record configuration			
		COMMAND		t_format			irate_set		default_record_format
		COMMAND		t_format			iencoding_set		default_record_format
		COMMAND		t_format			ichannels_set		default_record_format
		COMMAND		t_format			ibuffer_size_set	default_record_format
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7013

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7014
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7014
//! @SYMAPI			RMdaDevSound::SetPlayFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set invalid record format 3 times in a row and then call RecordData()
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [invalid_record_format]
//!				3. Call SetRecordFormat() with default value from [invalid_record_format]
//!				4. Call SetRecordFormat() with default value from [invalid_record_format]
//!				5. Call RecordData()
//!				6. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				7. Call SetRecordFormat() with default value from [default_record_format]
//!				8. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetRecordFormat returns KErrNotSupported every time when executing it 3 times in a row
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		//!set unsupported record configuration			
		COMMAND		t_format			irate_set		unsupported_record_format
		COMMAND		t_format			iencoding_set		unsupported_record_format
		COMMAND		t_format			ichannels_set		unsupported_record_format
		COMMAND		t_format			ibuffer_size_set	unsupported_record_format
		COMMAND	!Error=-5	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		//!set unsupported record configuration			
		COMMAND		t_format			irate_set		unsupported_record_format
		COMMAND		t_format			iencoding_set		unsupported_record_format
		COMMAND		t_format			ichannels_set		unsupported_record_format
		COMMAND		t_format			ibuffer_size_set	unsupported_record_format
		COMMAND	!Error=-5	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		//!set unsupported record configuration			
		COMMAND		t_format			irate_set		unsupported_record_format
		COMMAND		t_format			iencoding_set		unsupported_record_format
		COMMAND		t_format			ichannels_set		unsupported_record_format
		COMMAND		t_format			ibuffer_size_set	unsupported_record_format
		COMMAND	!Error=-5	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		//!set default record configuration			
		COMMAND		t_format			irate_set		default_record_format
		COMMAND		t_format			iencoding_set		default_record_format
		COMMAND		t_format			ichannels_set		default_record_format
		COMMAND		t_format			ibuffer_size_set	default_record_format
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7014


START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7015
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7015
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetRecordFormat() with valid record format when audio is still being recorded
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData() to record 32kb
//!				4. Call SetRecordFormat() with default value from [default_record_format] while audio is still being recorded
//!				5. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetPlayFormat in step 4 returns KErrInUse 
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format		
		COMMAND		devsound			RecordData		record_data_32kb
		//!set default record configuration			
		COMMAND		t_format			irate_set		default_record_format
		COMMAND		t_format			iencoding_set		default_record_format
		COMMAND		t_format			ichannels_set		default_record_format
		COMMAND		t_format			ibuffer_size_set	default_record_format
		COMMAND	!Error=-14	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7015

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7016
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7016
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetRecordFormat() with valid values but with invalid iEncoding (out of accepted range)
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [default_record_format_invalid_encoding]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetRecordFormat in step 4 returns KErrNotSupproted
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		default_record_format
		COMMAND		t_format			iencoding_set		default_record_format_invalid_encoding
		COMMAND		t_format			ichannels_set		default_record_format
		COMMAND		t_format			ibuffer_size_set	default_record_format
		COMMAND	!Error=-5	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7016

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7017
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7017
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetRecordFormat() with valid values but with invalid iRate (out of accepted range)
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [default_record_format_invalid_rate]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetRecordFormat in step 4 returns KErrNotSupproted
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		default_record_format_invalid_rate
		COMMAND		t_format			iencoding_set		default_record_format
		COMMAND		t_format			ichannels_set		default_record_format
		COMMAND		t_format			ibuffer_size_set	default_record_format
		COMMAND	!Error=-5	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7017

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7018
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7018
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetRecordFormat() with valid values but with invalid iBufferSize (out of accepted range)
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [default_record_format_invalid_buffer_size]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetRecordFormat in step 4 returns KErrNotSupproted
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		default_record_format
		COMMAND		t_format			iencoding_set		default_record_format
		COMMAND		t_format			ichannels_set		default_record_format
		COMMAND		t_format			ibuffer_size_set	default_record_format_invalid_buffer_size
		COMMAND	!Error=-5	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7018

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7019
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7019
//! @SYMAPI			RMdaDevSound::SetRecordFormat(TCurrentSoundFormatBuf {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call SetRecordFormat() with valid values but with invalid iChannels (out of accepted range)
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with default value from [default_record_format_invalid_channels]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	SetRecordFormat in step 4 returns KErrNotSupproted
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		default_record_format
		COMMAND		t_format			iencoding_set		default_record_format
		COMMAND		t_format			ichannels_set		default_record_format_invalid_channels
		COMMAND		t_format			ibuffer_size_set	default_record_format
		COMMAND	!Error=-5	devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7019

/////////////////////////////////////////////
// Playback with different buffer size
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7021
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7021
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play audio with minimal buffer size supported in PCM8
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_settings_pcm8_mono_8khz_32kb_min_buffer]
//!				3. Call PlayData() with valid sound data from [pcm8_mono_8khz_32kb.raw]
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is played without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_pcm8_mono_8khz_32kb_min_buffer
		COMMAND		t_format			iencoding_set		set_settings_pcm8_mono_8khz_32kb_min_buffer
		COMMAND		t_format			ichannels_set		set_settings_pcm8_mono_8khz_32kb_min_buffer
		COMMAND		t_format			ibuffer_size_set	set_settings_pcm8_mono_8khz_32kb_min_buffer
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound  			PlayData		pcm8_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7021

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7022
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7022
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play audio with max buffer size supported in PCM8
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_settings_pcm8_mono_8khz_32kb_max_buffer]
//!				3. Call PlayData() with valid sound data from [pcm8_mono_8khz_32kb.raw]
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is played without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_pcm8_mono_8khz_32kb_max_buffer
		COMMAND		t_format			iencoding_set		set_settings_pcm8_mono_8khz_32kb_max_buffer
		COMMAND		t_format			ichannels_set		set_settings_pcm8_mono_8khz_32kb_max_buffer
		COMMAND		t_format			ibuffer_size_set	set_settings_pcm8_mono_8khz_32kb_max_buffer
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound  			PlayData		pcm8_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7022

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7023
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7023
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play audio with minimal buffer size supported in PCM16
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_settings_pcm16_mono_8khz_32kb_min_buffer]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_8khz_32kb.raw]
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is played without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_pcm16_mono_8khz_32kb_min_buffer
		COMMAND		t_format			iencoding_set		set_settings_pcm16_mono_8khz_32kb_min_buffer
		COMMAND		t_format			ichannels_set		set_settings_pcm16_mono_8khz_32kb_min_buffer
		COMMAND		t_format			ibuffer_size_set	set_settings_pcm16_mono_8khz_32kb_min_buffer
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound  			PlayData		pcm16_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7023

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7024
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7024
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play audio with max buffer size supported in PCM16
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_settings_pcm16_mono_8khz_32kb_max_buffer]
//!				3. Call PlayData() with valid sound data from [pcm16_mono_8khz_32kb.raw]
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is played without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_pcm16_mono_8khz_32kb_max_buffer
		COMMAND		t_format			iencoding_set		set_settings_pcm16_mono_8khz_32kb_max_buffer
		COMMAND		t_format			ichannels_set		set_settings_pcm16_mono_8khz_32kb_max_buffer
		COMMAND		t_format			ibuffer_size_set	set_settings_pcm16_mono_8khz_32kb_max_buffer
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound  			PlayData		pcm16_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7024

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7025
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7025
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play audio with minimal buffer size supported in ALaw
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_settings_alaw8bit_mono_8khz_min_buffer]
//!				3. Call PlayData() with valid sound data from [alaw8bit_mono_8khz_32kb.raw]
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is played without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_alaw8bit_mono_8khz_min_buffer
		COMMAND		t_format			iencoding_set		set_settings_alaw8bit_mono_8khz_min_buffer
		COMMAND		t_format			ichannels_set		set_settings_alaw8bit_mono_8khz_min_buffer
		COMMAND		t_format			ibuffer_size_set	set_settings_alaw8bit_mono_8khz_min_buffer
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound  			PlayData		alaw8bit_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7025

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7026
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7026
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play audio with max buffer size supported in ALaw
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_settings_alaw8bit_mono_8khz_max_buffer]
//!				3. Call PlayData() with valid sound data from [alaw8bit_mono_8khz_32kb.raw]
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is played without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_alaw8bit_mono_8khz_max_buffer
		COMMAND		t_format			iencoding_set		set_settings_alaw8bit_mono_8khz_max_buffer
		COMMAND		t_format			ichannels_set		set_settings_alaw8bit_mono_8khz_max_buffer
		COMMAND		t_format			ibuffer_size_set	set_settings_alaw8bit_mono_8khz_max_buffer
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound  			PlayData		alaw8bit_mono_8khz_32kb.raw
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7026

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7027
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7027
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play audio with minimal buffer size supported in MuLaw
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_settings_mulaw8bit_mono_12khz_min_buffer]
//!				3. Call PlayData() with valid sound data from [mulaw8bit_mono_12khz_32kb.raw]
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is played without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_mulaw8bit_mono_12khz_min_buffer
		COMMAND		t_format			iencoding_set		set_settings_mulaw8bit_mono_12khz_min_buffer
		COMMAND		t_format			ichannels_set		set_settings_mulaw8bit_mono_12khz_min_buffer
		COMMAND		t_format			ibuffer_size_set	set_settings_mulaw8bit_mono_12khz_min_buffer
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound  			PlayData		mulaw8bit_mono_12khz_32kb.raw
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7027

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7028
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7028
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play audio with max buffer size supported in MuLaw
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetPlayFormat() with [set_settings_mulaw8bit_mono_12khz_max_buffer]
//!				3. Call PlayData() with valid sound data from [mulaw8bit_mono_12khz_32kb.raw]
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is played without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_mulaw8bit_mono_12khz_max_buffer
		COMMAND		t_format			iencoding_set		set_settings_mulaw8bit_mono_12khz_max_buffer
		COMMAND		t_format			ichannels_set		set_settings_mulaw8bit_mono_12khz_max_buffer
		COMMAND		t_format			ibuffer_size_set	set_settings_mulaw8bit_mono_12khz_max_buffer
		COMMAND		devsound			SetPlayFormat		BSP-SOUND-DRIVER-SetPlayFormat
		COMMAND		devsound  			PlayData		mulaw8bit_mono_12khz_32kb.raw
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7028

/////////////////////////////////////////////
// Recording with different buffer size
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7031
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7031
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with minimal buffer size supported in PCM8
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [set_settings_pcm8_mono_8khz_32kb_min_buffer_recording]
//!				3. Call RecordData()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_pcm8_mono_8khz_32kb_min_buffer_recording
		COMMAND		t_format			iencoding_set		set_settings_pcm8_mono_8khz_32kb_min_buffer_recording
		COMMAND		t_format			ichannels_set		set_settings_pcm8_mono_8khz_32kb_min_buffer_recording
		COMMAND		t_format			ibuffer_size_set	set_settings_pcm8_mono_8khz_32kb_min_buffer_recording
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound  			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7031

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7032
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7032
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with max buffer size supported in PCM8
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [set_settings_pcm8_mono_8khz_32kb_max_buffer_recording]
//!				3. Call RecordData()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	1000				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_pcm8_mono_8khz_32kb_max_buffer_recording
		COMMAND		t_format			iencoding_set		set_settings_pcm8_mono_8khz_32kb_max_buffer_recording
		COMMAND		t_format			ichannels_set		set_settings_pcm8_mono_8khz_32kb_max_buffer_recording
		COMMAND		t_format			ibuffer_size_set	set_settings_pcm8_mono_8khz_32kb_max_buffer_recording
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound  			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7032

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7033
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7033
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with minimal buffer size supported in PCM16
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [set_settings_pcm16_mono_8khz_32kb_min_buffer_recording]
//!				3. Call RecordData()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_pcm16_mono_8khz_32kb_min_buffer_recording
		COMMAND		t_format			iencoding_set		set_settings_pcm16_mono_8khz_32kb_min_buffer_recording
		COMMAND		t_format			ichannels_set		set_settings_pcm16_mono_8khz_32kb_min_buffer_recording
		COMMAND		t_format			ibuffer_size_set	set_settings_pcm16_mono_8khz_32kb_min_buffer_recording
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound  			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7033

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7034
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7034
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with max buffer size supported in PCM16
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [set_settings_pcm16_mono_8khz_32kb_max_buffer_recording]
//!				3. Call RecordData()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_pcm16_mono_8khz_32kb_max_buffer_recording
		COMMAND		t_format			iencoding_set		set_settings_pcm16_mono_8khz_32kb_max_buffer_recording
		COMMAND		t_format			ichannels_set		set_settings_pcm16_mono_8khz_32kb_max_buffer_recording
		COMMAND		t_format			ibuffer_size_set	set_settings_pcm16_mono_8khz_32kb_max_buffer_recording
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound  			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7034

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7035
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7035
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with minimal buffer size supported in ALaw
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [set_settings_alaw8bit_mono_8khz_min_buffer_recording]
//!				3. Call RecordData()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_alaw8bit_mono_8khz_min_buffer_recording
		COMMAND		t_format			iencoding_set		set_settings_alaw8bit_mono_8khz_min_buffer_recording
		COMMAND		t_format			ichannels_set		set_settings_alaw8bit_mono_8khz_min_buffer_recording
		COMMAND		t_format			ibuffer_size_set	set_settings_alaw8bit_mono_8khz_min_buffer_recording
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound  			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7035

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7036
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7036
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with max buffer size supported in ALaw
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [set_settings_alaw8bit_mono_8khz_max_buffer_recording]
//!				3. Call RecordData()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	1000				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_alaw8bit_mono_8khz_max_buffer_recording
		COMMAND		t_format			iencoding_set		set_settings_alaw8bit_mono_8khz_max_buffer_recording
		COMMAND		t_format			ichannels_set		set_settings_alaw8bit_mono_8khz_max_buffer_recording
		COMMAND		t_format			ibuffer_size_set	set_settings_alaw8bit_mono_8khz_max_buffer_recording
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound  			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7036

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7037
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7037
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with minimal buffer size supported in MuLaw
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [set_settings_mulaw8bit_mono_12khz_min_buffer_recording]
//!				3. Call RecordData()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_mulaw8bit_mono_12khz_min_buffer_recording
		COMMAND		t_format			iencoding_set		set_settings_mulaw8bit_mono_12khz_min_buffer_recording
		COMMAND		t_format			ichannels_set		set_settings_mulaw8bit_mono_12khz_min_buffer_recording
		COMMAND		t_format			ibuffer_size_set	set_settings_mulaw8bit_mono_12khz_min_buffer_recording
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound  			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7037

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7038
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7038
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with max buffer size supported in MuLaw
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [set_settings_mulaw8bit_mono_12khz_max_buffer_recording]
//!				3. Call RecordData()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded without any errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		t_format			irate_set		set_settings_mulaw8bit_mono_12khz_max_buffer_recording
		COMMAND		t_format			iencoding_set		set_settings_mulaw8bit_mono_12khz_max_buffer_recording
		COMMAND		t_format			ichannels_set		set_settings_mulaw8bit_mono_12khz_max_buffer_recording
		COMMAND		t_format			ibuffer_size_set	set_settings_mulaw8bit_mono_12khz_max_buffer_recording
		COMMAND		devsound			SetRecordFormat		BSP-SOUND-DRIVER-SetRecordFormat
		COMMAND		devsound  			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7038

/////////////////////////////////////////////
// Playback and Recording
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7044
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7044
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call PlayData() twice on the same device when audio is still playing
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with valid sound data from [default_file]
//!				4. Call PlayData() with valid sound data from [default_file] when audio is still playing
//!				5. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	PlayData() in step 3 completes with KErrNone and PlayData() in step 4 completes with KERN-EXEC 9
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND		devsound			PlayData		default_file
		COMMAND		devsound			PlayData		default_file
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	!PanicCode=9 !PanicString=KERN-EXEC
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7044

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7045
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7045
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call RecordData() twice on the same device when audio is still recording
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData()
//!				4. Call RecordData() when audio is still recording
//!				5. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	RecordData() in step 3 completes with KErrNone and RecordData() in step 4 completes with KERN-EXEC 9
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			RecordData		record_data_32kb
		COMMAND		devsound			RecordData		record_data_32kb
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 !PanicCode=9 !PanicString=KERN-EXEC
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7045

/////////////////////////////////////////////
// Multiple server sessions
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7061
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7061
//! @SYMAPI			RMdaDevSound::Open(TInt)
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call Open() twice
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call Open() with unit [UnitEnum]
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Open() on step 1 completes without errors, Open() on step 2 raises KErrInUse (-14)
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	RMdaDevSound			devsound1  
		COMMAND		devsound1			new
		COMMAND	!Error=-14	devsound1			Open			UnitEnum
		COMMAND		devsound1  			Close
		COMMAND		devsound1  			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7061

/////////////////////////////////////////////
// Notification tests
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7071
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7071
//! @SYMAPI			RMdaDevSound::NotifyPlayError(TRequestStatus {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call NotifyPlayError() twice
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyPlayError()
//!				3. Call NotifyPlayError()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyPlayError() in steps 3 raises panics KERN-EXEC 9
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			NotifyPlayError
		COMMAND		devsound			NotifyPlayError
		OUTSTANDING
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	!PanicCode=9 !PanicString=KERN-EXEC
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7071

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7072
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7072
//! @SYMAPI			RMdaDevSound::NotifyPlayError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyPlayError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelNotifyPlayError() twice while PlayData() is executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyPlayError()
//!				3. Call GetPlayFormat() and verify from [default_play_format]
//!				4. Call PlayData() with [default_file]
//!				5. Call CancelNotifyPlayError()
//!				6. Call CancelNotifyPlayError()
//!				7. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyPlayError() in step 2 completes with KErrCancel, CancelNotifyPlayError() in steps 5-6 complete without error
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND	!AsyncError=-3	devsound			NotifyPlayError
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND		devsound			PlayData		default_file
		COMMAND		devsound			CancelNotifyPlayError
		COMMAND		devsound			CancelNotifyPlayError
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7072

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7073
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7073
//! @SYMAPI			RMdaDevSound::NotifyPlayError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyPlayError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelNotifyPlayError() twice after PlayData() is executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyPlayError()
//!				3. Call GetPlayFormat() and verify from [default_play_format]
//!				4. Call PlayData() with [default_file]
//!				5. Call CancelNotifyPlayError()
//!				6. Call CancelNotifyPlayError()
//!				7. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyPlayError() in step 2 completes with KErrCancel, CancelNotifyPlayError() in steps 5-6 complete without error
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND	!AsyncError=-3	devsound			NotifyPlayError
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND		devsound			PlayData		default_file
		ASYNC_DELAY	5000
		COMMAND		devsound			CancelNotifyPlayError
		COMMAND		devsound			CancelNotifyPlayError
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7073

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7074
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7074
//! @SYMAPI			RMdaDevSound::NotifyPlayError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyPlayError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelNotifyPlayError() twice without PlayData() executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyPlayError()
//!				3. Call CancelNotifyPlayError()
//!				4. Call CancelNotifyPlayError()
//!				5. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyPlayError() in step 2 completes with KErrCancel, CancelNotifyPlayError() in steps 3-4 complete without error
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND	!AsyncError=-3	devsound		NotifyPlayError
		ASYNC_DELAY	5000
		COMMAND		devsound			CancelNotifyPlayError
		COMMAND		devsound			CancelNotifyPlayError
		OUTSTANDING
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7074

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7075
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7075
//! @SYMAPI			RMdaDevSound::NotifyPlayError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyPlayError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelNotifyPlayError() twice without NotifyPlayError() executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call CancelNotifyPlayError()
//!				3. Call CancelNotifyPlayError()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	CancelNotifyPlayError() in steps 2-3 complete without error
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			CancelNotifyPlayError
		COMMAND		devsound			CancelNotifyPlayError
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7075

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7076
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7076
//! @SYMAPI			RMdaDevSound::NotifyRecordError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyRecordError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelNotifyRecordError() twice while RecordData() is executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyRecordError()
//!				3. Call GetRecordFormat() and verify from [default_record_format]
//!				4. Call RecordData()
//!				5. Call CancelNotifyRecordError()
//!				6. Call CancelNotifyRecordError()
//!				7. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyRecordError() in step 2 completes with KErrCancel, CancelNotifyRecordError() in steps 5-6 complete without error
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND	!AsyncError=-3	devsound			NotifyRecordError
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			RecordData
		COMMAND		devsound			CancelNotifyRecordError
		COMMAND		devsound			CancelNotifyRecordError
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7076

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7077
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7077
//! @SYMAPI			RMdaDevSound::NotifyRecordError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyRecordError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelNotifyRecordError() twice after RecordData() is executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyRecordError()
//!				3. Call GetRecordFormat() and verify from [default_record_format]
//!				4. Call RecordData()
//!				5. Call CancelNotifyRecordError()
//!				6. Call CancelNotifyRecordError()
//!				7. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyRecordError() in step 2 completes with KErrCancel, CancelNotifyRecordError() in steps 5-6 complete without error
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND	!AsyncError=-3	devsound			NotifyRecordError
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new			
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			RecordData
		ASYNC_DELAY	5000
		COMMAND		devsound			CancelNotifyRecordError
		COMMAND		devsound			CancelNotifyRecordError
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7077


START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7078
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7078
//! @SYMAPI			RMdaDevSound::NotifyRecordError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyRecordError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelNotifyRecordError() twice without RecordData() executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call NotifyRecordError()
//!				3. Call CancelNotifyRecordError()
//!				4. Call CancelNotifyRecordError()
//!				5. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyRecordError() in step 2 completes with KErrCancel, CancelNotifyRecordError() in steps 3-4 complete without error
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND	!AsyncError=-3	devsound			NotifyRecordError
		ASYNC_DELAY	5000
		COMMAND		devsound			CancelNotifyRecordError
		COMMAND		devsound			CancelNotifyRecordError
		OUTSTANDING
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7078

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7079
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7079
//! @SYMAPI			RMdaDevSound::NotifyRecordError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyRecordError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelNotifyRecordError() twice without NotifyRecordError() executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call CancelNotifyRecordError()
//!				3. Call CancelNotifyRecordError()
//!				4. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	CancelNotifyRecordError() in steps 2-3 complete without error
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			CancelNotifyRecordError
		COMMAND		devsound			CancelNotifyRecordError
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7079

/////////////////////////////////////////////
// Playback-recording Cancel/Flush tests
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7101
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7101
//! @SYMAPI			RMdaDevSound::FlushPlayBuffer()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call FlushPlayBuffer() without calling PlayData() first
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call FlushPlayBuffer() 
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	FlushPlayBuffer() completes without errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			FlushPlayBuffer
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7101

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7102
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7102
//! @SYMAPI			RMdaDevSound::CancelPlayData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelPlayData() without calling PlayData() first
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call CancelPlayData() 
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	CancelPlayData() completes without errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			CancelPlayData
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7102

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7103
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7103
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::CancelPlayData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelPlayData() 2 times in a row while PlayData() is executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with [default_file_cancel]
//!				4. Call CancelPlayData() 
//!				5. Call CancelPlayData() 
//!				6. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	CancelPlayData() in step 4 and 5 completes without errors, PlayData() in step 3 finished with KErrCancel
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND	!AsyncError=-3	devsound			PlayData		default_file_cancel
		COMMAND		devsound			CancelPlayData
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7103

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7104
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7104
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::FlushPlayBuffer()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call FlushPlayBuffer() 2 times in a row while PlayData() is executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with [default_file_flush]
//!				4. Call FlushPlayBuffer() 
//!				5. Call FlushPlayBuffer() 
//!				6. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	FlushPlayBuffer() in step 4 and 5 completes without errors, PlayData() in step 3 finished with KErrCancel
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND	!AsyncError=-3	devsound			PlayData		default_file_flush
		COMMAND		devsound			FlushPlayBuffer
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7104

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7105
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7105
//! @SYMAPI			RMdaDevSound::FlushRecordBuffer()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call FlushRecordBuffer() without calling RecordData() first
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call FlushRecordBuffer() 
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	FlushRecordBuffer() completes without errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			FlushRecordBuffer
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7105

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7106
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7106
//! @SYMAPI			RMdaDevSound::CancelRecordData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelRecordData() without calling RecordData first
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call CancelRecordData() 
//!				3. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	CancelRecordData() completes without errors
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			CancelRecordData
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7106

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7107
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7107
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::CancelRecordData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call CancelRecordData() 2 times in a row while RecordData() is executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call SetRecordFormat() with [default_record_format]
//!				3. Call RecordData() with [record_data_32kb_cancel]
//!				4. Call CancelRecordData() 
//!				5. Call CancelRecordData() 
//!				6. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	CancelRecordData() in step 4 and 5 completes without errors, RecordData() in step 3 completes with KErrCancel
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND	!AsyncError=-3	devsound			RecordData	record_data_32kb_cancel
		COMMAND		devsound			CancelRecordData
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7107

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7108
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7108
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::FlushRecordBuffer()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call FlushRecordBuffer() 2 times in a row while RecordData() is executed
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData()
//!				4. Call FlushRecordBuffer() 
//!				5. Call FlushRecordBuffer() 
//!				6. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	FlushRecordBuffer() in step 4 and 5 completes without errors, RecordData() in step 3 finished with KErrNone
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			RecordData	record_data_32kb	
		COMMAND		devsound			FlushRecordBuffer
		COMMAND		devsound			FlushRecordBuffer
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7108

/////////////////////////////////////////////
// Volume
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7201
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7201					
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::SetPlayVolume(TInt);
//!				RMdaDevSound::PlayVolume()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set play volume with negative integer value.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat and verify from [default_play_format]
//!				3. Call SetPlayVolume() with negative integer value from [negative_play_volume]
//!				4. Call PlayData() with valid sound data from [default_file]
//!				5. Call PlayVolume() and compare the received value to [min_play_volume]
//!				6. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Setting negative volume value is impossible. PlayVolume in step 4 returns min play volume.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND		devsound			SetPlayVolume		negative_play_volume
		COMMAND		devsound			PlayData		default_file	
		OUTSTANDING
		COMMAND		devsound			PlayVolume		min_play_volume
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7201

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7202
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7202					
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::SetPlayVolume(TInt);
//!				RMdaDevSound::PlayVolume()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set play volume with too big integer value.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat and verify from [default_play_format]
//!				3. Call SetPlayVolume() with too big value from [too_big_play_volume]
//!				4. Call PlayData() with valid sound data from [default_file]
//!				5. Call PlayVolume() and compare the received value to [max_play_volume]
//!				6. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Setting too big volume value is impossible. PlayVolume in step 4 returns max play volume.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND		devsound			SetPlayVolume		too_big_play_volume
		COMMAND		devsound			PlayData		default_file	
		OUTSTANDING
		COMMAND		devsound			PlayVolume		max_play_volume
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7202

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7203
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7203					
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::SetRecordLevel(TInt);
//!				RMdaDevSound::RecordLevel()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set record level with negative integer value.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat and verify from [default_record_format]
//!				3. Call SetRecordLevel() with negative integer value from [negative_record_level]
//!				4. Call RecordData() 
//!				5. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				6. Call RecordLevel() and compare the received value to [min_record_level]
//!				7. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Setting negative volume level value is impossible. RecordLevel in step 4 returns min record level.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			SetRecordLevel		negative_record_level
		COMMAND		devsound			RecordData		record_data_32kb	
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND		devsound			RecordLevel		min_record_level
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7203

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7204
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7204					
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::SetRecordLevel(TInt);
//!				RMdaDevSound::RecordLevel()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Set record level with too big value.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat and verify from [default_record_format]
//!				3. Call SetRecordLevel() with too big value from [too_big_record_level]
//!				4. Call RecordData() 
//!				5. Call FlushRecordBuffer() //needed because otherwise setting format in next step will fail with KErrInUse
//!				6. Call RecordLevel() and compare the received value to [max_record_level]
//!				7. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Setting too big volume level value is impossible. RecordLevel in step 4 returns max record level.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			SetRecordLevel		too_big_record_level
		COMMAND		devsound			RecordData		record_data_32kb	
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND		devsound			RecordLevel		max_record_level
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7204

/////////////////////////////////////////////
// Corrupted audio
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7301
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7301					
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play corrupted audio data.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() with [corrupted_audio_file] 
//!				4. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing audio completes without any errors.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND		devsound			PlayData		corrupted_audio_file
		OUTSTANDING
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7301

/////////////////////////////////////////////
// Combinations of APIs
/////////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7401
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7401					
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::PausePlayBuffer();
//!				RMdaDevSound::ResumePlaying();
//!				RMdaDevSound::SetPlayVolume(TInt);
//!				RMdaDevSound::PlayVolume()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play default audio with default volume, pause playing and set volume to 50% and resume playing. 
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				4. Call PlayData() with [default_audio_file] 
//!				5. Call PausePlayBuffer()
//!				6. Call SetPlayVolume() with 50% volume from [play_volume_quater]
//!				7. Call ResumePlaying()
//!				8. PlayVolume() and compare received value with [play_volume_quater]
//!				9. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Volume received in step 7 is equal to [playback_volume_half].
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		default_file
		COMMAND		devsound			PausePlayBuffer
		COMMAND		devsound			SetPlayVolume		play_volume_quater
		COMMAND		devsound			ResumePlaying
		OUTSTANDING
		COMMAND		devsound			PlayVolume		play_volume_quater
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7401

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7402
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7402					
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::FlushPlayBuffer();
//!				RMdaDevSound::BytesPlayed()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play default audio file. Flush play buffer after that and verify count of bytes played. 
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				4. Call PlayData() with [default_audio_file] 
//!				5. Delay for 1 sec, then BytesPlayed API is being called after the DMA ISR updates the variable
//!				6. Call BytesPlayed() where expected result equals [32_kb_played]
//!				7. Call FlushPlayBuffer()
//!				8. Delay for 1 sec, then BytesPlayed API is being called after the DMA ISR updates the variable
//!				9. Call BytesPlayed() where expected result equals [32_kb_played]
//!				10. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Bytes played count is equal with [32_kb_played] in steps 4 and 6.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		default_file
		OUTSTANDING
		DELAY	5000
		COMMAND		devsound			BytesPlayed		32_kb_played
		COMMAND		devsound			FlushPlayBuffer
		DELAY	5000
		COMMAND		devsound			BytesPlayed		32_kb_played
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7402

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7403
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7403					
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::PausePlayBuffer();
//!				RMdaDevSound::ResumePlaying();
//!				RMdaDevSound::BytesPlayed()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play default audio file. Pause playing and resume again for 3 times. See count of bytes played.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				3. Call PlayData() with [default_audio_file] 
//!				4. Call PausePlayBuffer() 
//!				5. Call ResumePlaying() 
//!				6. Call PausePlayBuffer() 
//!				7. Call ResumePlaying()
//!				8. Call PausePlayBuffer() 
//!				9. Call ResumePlaying()
//!				10. Delay for 1 sec, then BytesPlayed API is being called after the DMA ISR updates the variable
//!				11. Call BytesPlayed() where expected result equals [32_kb_played]
//!				12. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Bytes played count is equal with [32_kb_played] in step 10.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		default_file
		COMMAND		devsound			PausePlayBuffer	
		COMMAND		devsound			ResumePlaying	
		COMMAND		devsound			PausePlayBuffer	
		COMMAND		devsound			ResumePlaying	
		COMMAND		devsound			PausePlayBuffer	
		COMMAND		devsound			ResumePlaying	
		OUTSTANDING
		DELAY		5000
		COMMAND		devsound			BytesPlayed		32_kb_played
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7403


START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7404
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7404					
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::CancelRecordData();
//!				RMdaDevSound::SetRecordLevel(TInt);
//!				RMdaDevSound::RecordLevel()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Record audio with default record format and default record level. Cancel recording in progress. Set Record level to 50%
//!				and start recording again. Verify that record level is 50% after recording is completed.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify from [default_record_format]
//!				3. Call RecordData()  with [record_data_32kb_cancel]
//!				4. Call CancelRecordData()
//!				5. Call FlushRecordBuffer() //needed because otherwise operation in next step will fail with KErrInUse
//!				6. Call SetRecordLevel() with 50% volume from [half_record_level]
//!				7. Call RecordData()
//!				8. Call FlushRecordBuffer() //needed because otherwise operation in next step will fail with KErrInUse
//!				9. RecordLevel() and compare received value with [half_record_level]
//!				10. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Volume received in step 7 is equal to [half_record_level].
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND	!AsyncError=-3	devsound			RecordData	record_data_32kb_cancel
		COMMAND		devsound			SetRecordLevel		half_record_level
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND		devsound			RecordData
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND		devsound			RecordLevel		half_record_level
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7404

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7405
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7405					
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::FlushRecordBuffer()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		FlushRecordBuffer first and then record audio with default record format and then play recorded audio file.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call FlushRecordBuffer()
//!				3. Call GetRecordFormat() and verify from [default_record_format]
//!				4. Call RecordData() to [temp_audio_file]
//!				5. Call GetPlayFormat() and verify from [default_play_format]
//!				6. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				7. Call PlayData() from [temp_audio_file]
//!				8. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded and played properly.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			FlushRecordBuffer
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			RecordData		temp_file		
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		temp_file
		OUTSTANDING
		COMMAND		devsound			utilityDeleteFile	delete_temp_file
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7405

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7406
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7406					
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::PlayData(TRequestStatus {ref}, TDes8 {ref});
//!				RMdaDevSound::CancelRecordData()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		CancelRecordData first and then record audio with default record format and then play recorded audio file.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call CancelRecordData()
//!				3. Call GetRecordFormat() and verify from [default_record_format]
//!				4. Call RecordData() to [temp_audio_file]
//!				5. Call GetPlayFormat() and verify from [default_play_format]
//!				6. Call NotifyPlayError() //needed because otherwise PlayData() will not really stop after Outstanding
//!				7. Call PlayData() from [temp_audio_file]
//!				8. Call Close().
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Audio is recorded and played properly.
//!
//! @SYMTestType		CIT
	START_TEST_BLOCK	100				t_sound			\base\sound\base-bsp-sound-driver.ini
		CREATE_OBJECT	RMdaDevSound			devsound  
		COMMAND		devsound			new
		COMMAND		devsound			Open			UnitEnum
		COMMAND		devsound			CancelRecordData
		CREATE_OBJECT	TCurrentSoundFormat		t_format		
		COMMAND		t_format			new
		COMMAND		devsound			GetRecordFormat		BSP-SOUND-DRIVER-GetRecordFormat
		//!verify default record configuration			
		COMMAND		t_format			irate_get		default_record_format
		COMMAND		t_format			iencoding_get		default_record_format
		COMMAND		t_format			ichannels_get		default_record_format
		COMMAND		t_format			ibuffer_size_get	default_record_format
		COMMAND		devsound			RecordData		temp_file		
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND		devsound			GetPlayFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!verify default play configuration			
		COMMAND		t_format			irate_get		default_play_format
		COMMAND		t_format			iencoding_get		default_play_format
		COMMAND		t_format			ichannels_get		default_play_format
		COMMAND		t_format			ibuffer_size_get	default_play_format
		COMMAND !AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		temp_file
		OUTSTANDING
		COMMAND		devsound			utilityDeleteFile	delete_temp_file
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		
END_TESTCASE			BASE-BSP-SOUND-DRIVER-7406