commonappservices/alarmservertest/TestMultipleAlarmsSuite/scripts/MultipleModeTests.script
changeset 0 2e3d3ce01487
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/commonappservices/alarmservertest/TestMultipleAlarmsSuite/scripts/MultipleModeTests.script	Tue Feb 02 10:12:00 2010 +0200
@@ -0,0 +1,479 @@
+//
+// Copyright (c) 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:
+//
+//Script file for running Multiple Alarm Notification Mode tests
+
+PRINT Running_Multiple_Alarm_Notification_Mode_Tests
+
+// Load the test
+LOAD_SUITE TestMultipleAlarmsServer -SharedData
+
+// Start alert server in multiple alarms notification mode
+RUN_TEST_STEP 	100 	TestMultipleAlarmsServer	TestStartAlertServerStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	start_multiple_3
+
+// Initial Cleanup
+RUN_TEST_STEP 	100	TestMultipleAlarmsServer	TestCleanupStep
+
+
+START_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-002-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-002-HP-0001
+//! @SYMTestCaseDesc 		Multiple alarms support
+//! @SYMFssID			<App-Services>/<AlarmServer>/038
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Start the Alarm Alert Server passing a value for aMaxAlarms value.
+//!				2.	Create many calendar entries with alarms that have imminent expiry times
+//!				3.	Wait for the alarms to expire.
+//!				4.	Verify that the test code is not notified of more than aMaxAlarms alarms
+//! @SYMTestExpectedResults 	When these alarms expire, the alarms are displayed continuously, without waiting
+//! 				for an action from the test code on the previous alarm.
+//!				Only aMaxAlarms are notified at a time 
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Start alert server in multiple mode, create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_4
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_4mins
+
+// First 3 alarms must be showing (3rd one playing)
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_2
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_3
+
+// 4th one must not be showing/playing. There must not even be an alarm control object for it.
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_4
+
+// Acknowledge the first alarm and wait for a minute
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmClearStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	clear_1
+DELAY 500
+
+// Now the fourth one must be notifying
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_4
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep	
+END_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-002-HP-0001
+
+
+START_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-003-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-003-HP-0001
+//! @SYMTestCaseDesc 		Snooze when number of alarms is equal to MaxAlarms
+//! @SYMFssID			<App-Services>/<AlarmServer>/040
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Create as many armed calendar entries as the value of max alarms
+//!				2.	Wait for the alarms to expire.
+//!				3.	Snooze one of the alarms
+//! @SYMTestExpectedResults 	1.	When these alarms expire, the alarms are displayed continuously, without waiting 
+//! 					for an action from the test code on the previous alarm.
+//!				2.	Only the alarm, on which the snooze request was placed, is snoozed, and the 
+//!					others still keep notifying
+//!				3.	The alarm that was snoozed, is notified again, after the snooze period even if the 
+//!					test code does not respond to the already notifying alarms.
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_3
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_3mins
+
+// All 3 alarms must be showing (3rd one playing)
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_2
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_3
+
+// Snooze 3rd alarm
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmSnoozeStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	snooze_3
+DELAY 500
+
+// 1st and 2nd alarms must be showing (2nd one playing). 3rd alarm is snoozing.
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_2
+// Since alert server must maintain only currently notifying alarms, alarms server asks
+// alert server to remove alarm3 from its list
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	snoozing_3
+
+// Wait for 3rd alarm to wake up again
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_2mins
+
+// All 3 alarms must be showing (3rd one playing)
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_2
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_3
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep
+END_TESTCASE PIM-APPSRV-ALMSRV-PREQ1118-I-003-HP-0001
+
+
+START_TESTCASE PIM-APPSRV-ALMSRV-PREQ1118-I-004-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-004-HP-0001
+//! @SYMTestCaseDesc 		Snooze when number of alarms is greater than MaxAlarms
+//! @SYMFssID			<App-Services>/<AlarmServer>/040
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Create more armed calendar entries than the value of max alarms
+//!				2.	Wait for the alarms to expire.
+//!				3.	Snooze one of the alarms
+//!				4.	Wait till szooze period ends and check that the snoozed alarm queues itself after waking up
+//!				5.	Snooze another alarm and verify that the one that was snoozed previously notifies now.
+//! @SYMTestExpectedResults 	1.	When the alarms expire, the alarms are displayed continuously, without waiting 
+//! 					for an action from the test code on the previous alarm.
+//!				2.	Only the alarm, on which the snooze request was placed, is snoozed, and the 
+//!					others still keep notifying.
+//!				3.	Another alarm which was in queue starts notifying
+//!				4.	After the snooze period ends, the alarm that was snoozed is queued
+//!				4.	When a second alarm is snoozed, the first one notifies.
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_4
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_4mins
+
+// First 3 alarms must be showing (3rd one playing)
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_2
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_3
+
+// Fourth alarm not yet notified
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_4
+
+// Snooze 2nd alarm
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmSnoozeStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	snooze_2
+DELAY 500
+
+// 1st and 3rd alarms must be showing. 2nd one snoozing. The 4th one starts showing and playing.
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+// Since alert server must maintain only currently notifying alarms, alarms server asks
+// alert server to remove alarm2 from its list
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	snoozing_2
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_3
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_4
+
+// Wait for 2nd alarm to wake up again
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_2mins
+
+// 2nd alarm pre-empts the 4th alarm when it wakes up and starts playing. 4th alarm is removed from alert server
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_3
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_2
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_4
+
+// Snooze 1st alarm
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmSnoozeStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	snooze_1
+DELAY 500
+
+// 4th alarm starts showing and playing
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	snoozing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_2
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_3
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_4
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep
+END_TESTCASE PIM-APPSRV-ALMSRV-PREQ1118-I-004-HP-0001 
+
+
+START_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-005-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-005-HP-0001
+//! @SYMTestCaseDesc 		Clear when number of alarms is equal to MaxAlarms
+//! @SYMFssID			<App-Services>/<AlarmServer>/041
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Create as many armed calendar entries as the value of max alarms
+//!				2.	Wait for the alarms to expire.
+//!				3.	Clear one of the alarms
+//! @SYMTestExpectedResults 	1.	When these alarms expire, the alarms are displayed continuously, without waiting 
+//! 					for an action from the test code on the previous alarm.
+//!				2.	Only the alarm, on which the clear requestwas placed, is cleared, and the 
+//!					others still keep notifying
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_3
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_3mins
+
+// All 3 alarms must be showing (3rd one playing)
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_2
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_3
+
+// Clear 3rd alarm
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmClearStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	clear_3
+DELAY 500
+
+// 1st and 2nd alarms must be showing (2nd one playing). 3rd alarm is cleared
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_2
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_3
+
+// Wait for sometime just to check if the same state is maintained.
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_2mins
+
+// 1st and 2nd alarms must be showing (2nd one playing). 3rd alarm is cleared
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_2
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_3
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep
+END_TESTCASE PIM-APPSRV-ALMSRV-PREQ1118-I-005-HP-0001
+
+
+START_TESTCASE PIM-APPSRV-ALMSRV-PREQ1118-I-006-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-006-HP-0001
+//! @SYMTestCaseDesc 		Clear when number of alarms is greater than MaxAlarms
+//! @SYMFssID			<App-Services>/<AlarmServer>/041
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Create more armed calendar entries than the value of max alarms
+//!				2.	Wait for the alarms to expire.
+//!				3.	Clear one of the alarms
+//!				4.	Clear another alarm and verify that another queued one notifies now.
+//! @SYMTestExpectedResults 	1.	When the alarms expire, the alarms are displayed continuously, without waiting 
+//! 					for an action from the test code on the previous alarm.
+//!				2.	Only the alarm, on which the clear request was placed, is cleared, and the 
+//!					others still keep notifying.
+//!				3.	Another alarm which was in queue starts notifying
+//!				4.	When a second alarm is cleared another queued one notifies.
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_5
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_5mins
+
+// First 3 alarms must be showing (3rd one playing)
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_2
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_3
+
+// Fourth and fifth alarms not yet notified
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_4
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_5
+
+// Clear 2nd alarm
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmClearStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	clear_2
+DELAY 500
+
+// 1st and 3rd alarms must be showing. 2nd one cleared. The 4th one starts showing and playing.
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_2
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_3
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_4
+
+// Clear 4th alarm
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmClearStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	clear_4
+DELAY 500
+
+// 1st 3rd and 5th alarms must be showing.(5th one playing) 2nd and 4th ones cleared. 
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_2
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_3
+RUN_TEST_STEP 	!Error=-1	100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_4
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_5
+
+// Wait for sometime just to check if the same state is maintained.
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_2mins
+
+// 1st and 3rd alarms must be showing.(3rd one playing) 2nd and 4th ones cleared. 
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_2
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_3
+RUN_TEST_STEP 	!Error=-1	100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_4
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_5
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep	
+END_TESTCASE PIM-APPSRV-ALMSRV-PREQ1118-I-006-HP-0001
+
+
+START_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-007-2-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-007-2-HP-0001
+//! @SYMTestCaseDesc 		Clear all alarms in multiple alarms mode
+//! @SYMFssID			<App-Services>/<AlarmServer>/041
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Start the Alarm Alert Server passing a value for aMaxAlarms value.
+//!				2.	Create many calendar entries with alarms that have imminent expiry times
+//!				3.	Wait for the alarms to expire.
+//!				4.	Verify that the test code is not notified of more than one alarm at a time. 
+//!				5.	Issue the Clear-all request
+//! @SYMTestExpectedResults 	1.	When the alarms expire, the alarms are displayed continuously, without waiting 
+//! 					for an action from the test code on the previous alarm.
+//!				2.	All the alarms are cleared.
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Start alert server in multiple mode, create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_4
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_4mins
+
+// 1st, 2nd and 3rd alarm must be notifying. (3rd one playing)
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_1
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showing_2
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	showingandplaying_3
+
+// The 4th alarm must not have a corresponding alarm control object.
+RUN_TEST_STEP 	!Error=-1	100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_4
+
+// Issue the clear-all request
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmClearStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	clear_all
+DELAY 500
+
+// All 4 alarms must not have a corresponding alarm control object.
+RUN_TEST_STEP 	!Error=-1	100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_1
+RUN_TEST_STEP 	!Error=-1	100	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_2
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_3
+RUN_TEST_STEP 	!Error=-1	100 	TestMultipleAlarmsServer	TestAlarmControlStateStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	notshowing_4
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep
+END_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-007-2-HP-0001
+
+
+START_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-008-2-AND-009-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-008-2-AND-009-HP-0001
+//! @SYMTestCaseDesc 		Associated Data Multiple Alarms Mode, Reference to Calendar Entry
+//! @SYMFssID			<App-Engines>/<CalInterimAPI>/ EAS 1.0, <App-Engines>/< AgnModel >/EAS 1.1
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Start the Alarm Alert Server passing a value for aMaxAlarms value.
+//!				2.	Create many calendar entries with alarms that have the same expiry time. 
+//!					Set either the 8-bit URL associated data or the MIME associated data for all 
+//!					the calendar entries during creation.
+//!				3.	Wait for the alarms to expire.
+//!				4.	Retreive the Alarm Data from the Alert Server for the notifying alarms
+//!				5.	Retrieve the corresponding Calendar entries' details, e.g., GUID, recurrence id etc. 
+//!					from the Alarm Server for the notifying alarm
+//!				6.	Retrieve the Calendar entries using the information received.
+//!				7.	Retrieve the associated data from the Calendar entries and compare with the original 
+//!					values used for setting them.
+//! @SYMTestExpectedResults 	The associated data is set and retrieved consistently.
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Start alert server in multiple mode, create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_4
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_4mins
+
+// Test the associated data of the notifying alarms
+RUN_TEST_STEP			100	TestMultipleAlarmsServer	TestAssociatedDataStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_4.entry1
+RUN_TEST_STEP			100	TestMultipleAlarmsServer	TestAssociatedDataStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_4.entry2
+RUN_TEST_STEP			100	TestMultipleAlarmsServer	TestAssociatedDataStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_4.entry3
+
+// 4th alarm must not have been notified to alert server
+RUN_TEST_STEP	!Error=-1	100	TestMultipleAlarmsServer	TestAssociatedDataStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_4.entry4
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep
+END_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-008-2-AND-009-HP-0001
+
+
+START_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-010-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-010-HP-0001
+//! @SYMTestCaseDesc 		Associated Data – MIME - Multiple Alarms Mode. Different combinations of alarm sound name 
+//!				and rich data.
+//! @SYMFssID			<App-Engines>/<CalInterimAPI>/EAS 1.0
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Start the Alarm Alert Server without passing a value for aMaxAlarms value.
+//!				2.	Create many calendar entries with alarms that have the same expiry time. 
+//!					Set the MIME associated data for all the calendar entries during creation.
+//!					Try different combinations like, a) no sound name, but has rich data; 
+//!					b) does not have both etc.
+//!				3.	Wait for the alarms to expire.
+//!				4.	Retreive the Alarm Data from the Alert Server for the notifying alarms
+//!				5.	Retrieve the corresponding Calendar entries' details, e.g., GUID, recurrence id etc. 
+//!					from the Alarm Server for the notifying alarm
+//!				6.	Retrieve the Calendar entries using the information received.
+//!				7.	Retrieve the associated data from the Calendar entries and compare with the original 
+//!					values used for setting them.
+//! @SYMTestExpectedResults 	The associated data is set and retrieved consistently. If no alarm sound name was set when 
+//!				creating the entries, the alarm sound name given to the UI by the alert server must be a NULL
+//!				descriptor
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Start alert server in multiple mode, create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_5
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_4mins
+
+// Test the first entry. It neither has sound name, nor has rich data.
+RUN_TEST_STEP			100	TestMultipleAlarmsServer	TestAssociatedDataStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_5.entry1
+
+// Test the associated data of the second and third alarms which has MIME associated data. 
+// Second one does not have sound name. Third one has sound name.
+RUN_TEST_STEP			100	TestMultipleAlarmsServer	TestAssociatedDataStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_5.entry2
+RUN_TEST_STEP			100	TestMultipleAlarmsServer	TestAssociatedDataStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_5.entry3
+
+// Clear one alarm, and give way to the fourth alarm.
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestAlarmClearStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	clear_1
+DELAY 1000
+
+// Test the associated data of the fourth alarm which has MIME associated data too
+RUN_TEST_STEP			100	TestMultipleAlarmsServer	TestAssociatedDataStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	createcalentries_5.entry4
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep
+END_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-010-HP-0001
+
+
+START_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-011-HP-0001
+//! @file			TestMultipleAlarmsSuite.script
+//! @SYMTestCaseID		PIM-APPSRV-ALMSRV-PREQ1118-I-011-HP-0001
+//! @SYMTestCaseDesc 		The time lag between the expiry of the alarm at the alarm server and the notification 
+//!				received from the alert server by the UI application.
+//! @SYMFssID			
+//! @SYMTestStatus 		Implemented
+//! @SYMTestPriority 		High
+//! @SYMTestActions 		1.	Start the Alarm Alert Server passing a value for aMaxAlarms value.
+//!				2.	Create many calendar entries with alarms that have imminent expiry times
+//!					Attach URL or MIME associated data to the entries
+//!				3.	Wait for the alarms to expire.
+//!				4.	Note down the time when alert server notifies the alarm control
+//!				5.	Note down the original expiry time of the alarm
+//!				6.	Compare both the times and check if they do not breach the allowed time
+//!				7.	Similarly measure the time taken for retreiving the associated data
+//! @SYMTestExpectedResults 	The time lag between the expiry of the alarm and the receipt of the notification must 
+//!				not be greater than the allowed time for this (0.5 seconds). Similarly for the time lag 
+//!				between retreiving the associated data.
+//! @SYMTestType 		CIT
+//! @SYMTestCaseDependencies	The test can only run on a TEXTSHELL environment, as the Alert Server is loaded by the test code
+
+// Start alert server in multiple mode, create entries with imminent alarms and wait for the alarms to expire
+RUN_TEST_STEP 			100 	TestMultipleAlarmsServer	TestCreateCalEntriesStep	Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	create_arbitrary
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestWaitStep			Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	wait_4mins
+
+// Test the performance of all alarms
+RUN_TEST_STEP			-1	TestMultipleAlarmsServer	TestPerformanceStep		Z:\TestData\Ini\TestMultipleAlarmsSuite.ini	performance
+
+// Cleanup
+RUN_TEST_STEP 			100	TestMultipleAlarmsServer	TestCleanupStep
+END_TESTCASE	PIM-APPSRV-ALMSRV-PREQ1118-I-011-HP-0001
+
+
+// Kill alert server thread
+RUN_TEST_STEP 	100	TestMultipleAlarmsServer	TestKillAlertServerStep