haitest/bspsvs/suite/bsp/sound/scripts/base-bsp-sound-driver-manual.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-manual.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

///////////////////////////////////////////
// Manual testing
///////////////////////////////////////////

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-6001
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-6001
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::SetPlayVolume(TInt)
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Manual test. Play sound with volume level 50%, then set max volume level 
//!				and play again. User will verify the volume change manually and give feedback
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify it from [default_play_format]
//!				3. Show message "Press affirmative key to start playback with half volume"
//!				4. Call PlayData() with valid sound data from [default_file]
//!				5. Call SetPlayVolume() with max volume from [max_play_volume]
//!				6. Show message "Press affirmative key to start playback with max volume"
//!				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. Request user feedback "Did it sound louder? Press affirmative key if Yes and any other key otherwise"
//!				and store user's feedback in the log file
//!				10. Restore default playback sound volume
//!				11. 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			devsound			utilityPromptMessage	start_playback_half_volume
		COMMAND			devsound			PlayData		default_file
		OUTSTANDING
		COMMAND			devsound			SetPlayVolume		max_play_volume
		COMMAND			devsound			utilityPromptMessage	start_playback_max_volume
		COMMAND			devsound			PlayData		default_file
		OUTSTANDING
		COMMAND			devsound			PlayVolume		max_play_volume
		COMMAND			devsound			utilityPromptMessage	ask_did_it_sound_louder
		//!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-6001

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-6002
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-6002
//! @SYMAPI			RMdaDevSound::RecordData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::PlayData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::SetPlayVolume(TInt);
//!				RMdaDevSound::SetRecordLevel(TInt)
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Manual test. Record sound with volume level 50%. Then play it. Set volume level to max and record again.
//!				Play the last recorded file. User will verify the volume change manually and give feedback
//!				
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetRecordFormat() and verify it from [default_record_format]
//!				3. Show message "Press affirmative key to start recording with half volume level"
//!				4. Call SetRecordLevel() with values from [half_record_level]	
//!				5. Call RecordData() with values from [record_32kb_half_volume]
//!				6. Call SetPlayVolume() with values from [max_play_volume]
//!				7. Call SetPlayFormat() with default value from [default_play_format]
//!				8. Call PlayData() with valid sound data from [record_32kb_half_volume]
//!				9. Show message "Press affirmative key to start recording with max volume level"
//!				10. Call SetRecordLevel() with values from [max_record_level]
//!				11. Call RecordData() with values from [record_32kb_max_volume]
//!				12. Call PlayData() with valid sound data from [record_32kb_max_volume]
//!				13. Request user feedback "Did it sound louder? Press affirmative key if Yes and any other key otherwise"
//!				and store user's feedback in the log file
//!				14. Restore default sound level
//!				15. 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			GetRecordFormat		BSP-SOUND-DRIVER-GetPlayFormat
		//!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			utilityPromptMessage	start_record_half_volume
		COMMAND			devsound			SetRecordLevel		half_record_level
		COMMAND			devsound			RecordData		temp_file
		OUTSTANDING
		COMMAND			devsound			FlushRecordBuffer
		COMMAND			devsound			utilityPromptMessage	start_playing_half_volume
		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		temp_file
		OUTSTANDING
		COMMAND			devsound			utilityDeleteFile	delete_temp_file
		COMMAND			devsound			utilityPromptMessage	start_record_max_volume
		COMMAND			devsound			SetRecordLevel		max_record_level
		COMMAND			devsound			RecordData		temp_file
		OUTSTANDING
		COMMAND			devsound			utilityPromptMessage	start_playing_max_volume
		COMMAND			devsound			PlayData		temp_file
		OUTSTANDING
		COMMAND			devsound			utilityDeleteFile	delete_temp_file
		COMMAND			devsound			utilityPromptMessage	ask_did_it_sound_louder
		//!set back default recording audio level
		COMMAND			devsound			SetRecordLevel		default_record_level
		COMMAND			t_format			~
		COMMAND			devsound  			Close
		COMMAND			devsound  			~
	END_TEST_BLOCK
END_TESTCASE			BASE-BSP-SOUND-DRIVER-6002

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7041
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7041
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::RecordData(TRequestStatus {ref}, const TDesC8 {ref})
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Play default audio file with default format and at the same time record audio to different sound file.
//! @SYMTestActions		1. Call Open() with unit [UnitEnum]
//!				2. Call GetPlayFormat() and verify from [default_play_format]
//!				3. Call PlayData() to play [default_audio_file]
//!				4. Call SetRecordFormat() with [default_record_format]
//!				5. Call RecordData to record audio to [temp_audio_file]
//!				6. Call PlayData() to play [temp_audio_file]
//!				7. Ask user if recorded audio is what was played
//!				8. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Playing and recording completes without any errors and recorded audio is what it should supposed to be.
//!
//! @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
		COMMAND		devsound			utilityPromptMessage	start_record_and_playing_simultaneously
		COMMAND		devsound			PlayData		default_file
		COMMAND		devsound			RecordData		temp_file
		OUTSTANDING
		COMMAND		devsound			utilityPromptMessage	start_playing_audio_recorded_in_previous_step
		COMMAND		devsound			PlayData		temp_file
		OUTSTANDING
		COMMAND		devsound			utilityDeleteFile	delete_temp_file
		COMMAND		devsound			utilityPromptMessage	was_recorded_audio_correct
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7041

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7042
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7042
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::RecordData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::NotifyPlayError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyPlayError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call NotifyPlayError before playing file. Play default audio file with default format and at the same time record audio 
//!				to different sound file. Call CancelNotifyPlayError before playing recorded audio.
//! @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 NotifyPlayError()
//!				5. Call PlayData() to play [default_audio_file]
//!				6. Call RecordData to record audio to [temp_audio_file]
//!				7. Call CancelNotifyPlayError()
//!				8. Call PlayData() to play [temp_audio_file]
//!				9. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyPlayError() in step 3 completes with KErrUnderflow. Recording completes without any errors and recorded audio 
//!				can be played. Playdata in step 4 completes with KErrNone. CancelNotifyPlayError completes 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
		COMMAND		devsound			CancelRecordData
		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
		COMMAND		devsound			utilityPromptMessage	start_record_and_playing_simultaneously
		COMMAND	!AsyncError=-10	devsound			NotifyPlayError
		COMMAND		devsound			PlayData		default_file		
		COMMAND		devsound			RecordData		temp_file
		OUTSTANDING
		COMMAND		devsound			CancelNotifyPlayError
		COMMAND		devsound			utilityPromptMessage	start_playing_audio_recorded_in_previous_step
		COMMAND		devsound			PlayData		temp_file
		OUTSTANDING
		COMMAND		devsound			utilityDeleteFile	delete_temp_file
		COMMAND		devsound			utilityPromptMessage	was_recorded_audio_correct
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK		 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7042

START_TESTCASE 			BASE-BSP-SOUND-DRIVER-7043
//! @SYMTestCaseID		BASE-BSP-SOUND-DRIVER-7043
//! @SYMAPI			RMdaDevSound::PlayData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::RecordData(TRequestStatus {ref}, const TDesC8 {ref});
//!				RMdaDevSound::NotifyRecordError(TRequestStatus {ref});
//!				RMdaDevSound::CancelNotifyRecordError()
//! @SYMAuthor			Vassili Tsvetkov
//! @SYMCreationDate		15/06/2008
//! @SYMTestCaseDesc		Call NotifyRecordError before recording file. Play default audio file with default format and at the same time 
//!				record audio to different sound file. Call CancelNotifyRecordError after recording.
//! @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 NotifyRecordError()
//!				5. Call PlayData() to play [default_audio_file]
//!				6. Call RecordData to record audio to [temp_audio_file]
//!				7. Call CancelNotifyRecordError()
//!				8. Call Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	NotifyRecordError() in step 5 completes with KErrOverflow. Recording in step 6 completes with KErrNone. 
//!				Playing in step 3 completes with KErrNone. CancelNotifyRecordError completes 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
		COMMAND		devsound			CancelRecordData
		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
		COMMAND		devsound			utilityPromptMessage	start_record_and_playing_simultaneously
		COMMAND	!AsyncError=-9	devsound			NotifyRecordError
		COMMAND		devsound			PlayData		default_file		
		COMMAND		devsound			RecordData		temp_file
		OUTSTANDING
		COMMAND		devsound			CancelNotifyRecordError
		COMMAND		devsound			utilityPromptMessage	start_playing_audio_recorded_in_previous_step
		COMMAND		devsound			PlayData		temp_file
		OUTSTANDING
		COMMAND		devsound			utilityDeleteFile	delete_temp_file
		COMMAND		devsound			utilityPromptMessage	was_recorded_audio_correct
		COMMAND		t_format			~
		COMMAND		devsound  			Close
		COMMAND		devsound  			~
	END_TEST_BLOCK	 
END_TESTCASE 			BASE-BSP-SOUND-DRIVER-7043