commonappservices/alarmservertest/TestMultipleAlarmsSuite/scripts/MultipleModeTests.script
//
// 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