//
// 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 the License "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:
//
//tups_install
//PRINT Run Basic test cases PREQ1262 for integration test
//
// Prepare various clones of TUPSInteg.exe with different SIDs.
// Don't forget to delete clones at the end of test script.
// but do not delete original one !!!!
RUN_PROGRAM 100 SETCAP TUPSInteg_data.exe 1c000 -SID 80001234 TUPSInteg_2.exe
RUN_PROGRAM 100 SETCAP TUPSInteg_data.exe 1c000 -SID 80002222 TUPSInteg_3.exe
RUN_PROGRAM 100 SETCAP TUPSInteg_data.exe 1c000 -SID 10004444 TUPSInteg_4.exe
RUN_PROGRAM 100 SETCAP TUPSInteg_data.exe 810 -SID 10006666 TUPSInteg_allfiles_readdevice.exe
RUN_PROGRAM 100 SETCAP TUPSInteg_data.exe 10 -SID 10007777 TUPSInteg_readdevice.exe
RUN_PROGRAM 100 SETCAP TUPSInteg_data.exe 20 -SID 10008888 TUPSInteg_writedevice.exe
RUN_PROGRAM 100 SETCAP TUPSInteg_data.exe 1cf00 -SID 101F7790 TUPSInteg_minor.exe
// load suites
LOAD_SUITE TUPSInteg_1
LOAD_SUITE TUPSInteg_unprotected
// load clones
LOAD_SUITE TUPSInteg_2
LOAD_SUITE TUPSInteg_3
LOAD_SUITE TUPSInteg_4
LOAD_SUITE TUPSInteg_allfiles_readdevice
LOAD_SUITE TUPSInteg_readdevice
LOAD_SUITE TUPSInteg_writedevice
LOAD_SUITE TUPSInteg_minor
// Load software step installer.
LOAD_SUITE tups_install
LOAD_SUITE tups_backuprestore
//! @SYMTestCaseID SEC-UPS-MISC-0001
//! @SYMTestCaseDesc Set up properties for policy evaluators and dialog creators, and Delete Existing Database
START_TESTCASE SEC-UPS-MISC-0001
RUN_TEST_STEP 100 TUPSInteg_1 PropertyStep z:\tups\integ\scripts\tups_properties.ini PropertiesToDestroy
// Set up properties for policy evaluators and dialog creators.
RUN_TEST_STEP 100 TUPSInteg_1 PropertyStep z:\tups\integ\scripts\tups_properties.ini PropertiesToCreate
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
END_TESTCASE SEC-UPS-MISC-0001
//********************** SEC-UPS-A : BASIC USER PROMPTING **********************
//! @SYMTestCaseID SEC-UPS-INTEG-A001
//! @SYMTestCaseDesc User prompt service: option “only this session”
//! (only_this_session)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7367, REQ7410, REQ7411, REQ7412, REQ7413, REQ7414, REQ7415, REQ7417, REQ7446
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog that matches the UID of the service
//! offered by the “system server”.
//!
//!
//! Test Actions:
//! • Launch “test client” which tries to connect to a system server and use service.
//! • System server asks for a user prompt to the UPS.
//! • When UPS prompts user, select the “Only this session” option.
//! • Check that now the “test client” can use the intended service from the “system server”.
//! • Check again In same session that client still can use test service without need of user prompt.
//! • Disconnect session and create new one.
//! • Ask “test client” to request again for the same service to the system server. This should cause
//! the service provided to request for a new user prompt.
//! • Select again “Only this session” option.
//! • Check that “test client” can use again the intended service from system server.
//!
//! @SYMTestExpectedResults • User prompt service dialog is displayed correctly in both occasions that “test client”
//! request for authorisation.
//! • Information displayed about the client is complete (see Appendix A).
//! • “Test client” can use service from system server in both occasions after selecting “Only
//! this session”
//! • Information about the “Test client” is displayed correctly by user prompt.
//! • Decision DB is not affected by previous operation as “only this session” is not expected to
//! be stored.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-A001
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini only_this_session
END_TESTCASE SEC-UPS-INTEG-A001
//! @SYMTestCaseID SEC-UPS-INTEG-A002
//! @SYMTestCaseDesc User prompt service: User prompt service: option “never”
//! (never)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7367, REQ7372, REQ7374
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//!
//! Test Actions:
//! • Launch “test client” which tries to connect to a system server and use service.
//! • System server asks for a user prompt to the UPS.
//! • When UPS prompts user, select the “Never” option.
//! • Check that now the “test client” can NOT use the intended service after user selected “never”.
//! • Disconnect session and create new one.
//! • Ask “test client” to request again for the same service to the system server. System server should
//! deny access to “test client” immediately without showing user prompt. Make sure that UPS was invoked
//! again.
//!
//!
//! @SYMTestExpectedResults • User prompt service dialog is displayed correctly.
//! • Security dialog is displayed within one second (1 sec) of client request for service.
//! • Information displayed about the client is complete (see Appendix A).
//! • “Test client” can NOT use service from system server after selecting “Never”
//! • Decision DB is updated correctly with the never decision.
//! • The second time the “Test client” tries to access the service from the system server it
//! should receive a silent denial.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-A002
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini never
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini never_b
END_TESTCASE SEC-UPS-INTEG-A002
//! @SYMTestCaseID SEC-UPS-INTEG-A003
//! @SYMTestCaseDesc User prompt service: option “Always”
//! (always)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7428, REQ7429, REQ7367, REQ7372, REQ7374, REQ7493
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//! • Special: make sure that client have all necessary capabilities in order to test REQ7493
//!
//! Test Actions:
//! • Launch “test client” which tries to connect to a system server and use service.
//! • System server asks for a user prompt to the UPS.
//! • When UPS prompts user, select the “Always” option.
//! • Check in same session that now the “test client” now can use the intended service after user
//! selected “Always”.
//! • Ask “test client” to request again for the same service to the system server. System server should
//! give immediate access to “test client” without showing user prompt (in same session).
//! • Disconnect session and create new one.
//! • Ask “test client” to request again for the same service to the system server. System server should
//! give immediate access to “test client” without showing user prompt. Make sure that UPS was invoked
//! again.
//!
//! @SYMTestExpectedResults • User prompt service dialog is displayed correctly.
//! • Security dialog is displayed within one second (1 sec) of client request for service.
//! • Information displayed about the client is complete (see Appendix A).
//! • “Test client” can use service from system server after selecting “Always”
//! • Decision DB is updated correctly with the Always decision.
//! • The second time the “Test client” tries to access the service from the system server it
//! should receive immediate access.
//! • The response time from UPS for second use of test client is 100 ms (H4 board without demand
//! paging)
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-A003
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini always
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini always_b
END_TESTCASE SEC-UPS-INTEG-A003
//! @SYMTestCaseID SEC-UPS-INTEG-A004
//! @SYMTestCaseDesc User prompt service: “Yes” or “No” selection”
//! (yes_or_no)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7372
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//! • Policy is set to display “yes” or “no” option
//!
//! Test Actions:
//! • Launch “test client” which tries to connect to a system server and use service.
//! • System server asks for a user prompt to the UPS.
//! • When UPS prompts user, select the “yes” option.
//! • Check that now the “test client” now can use the intended service.
//! • In same session that before, request uses service.
//! • UPS should prompt user again. Select yes
//! • Launch “test client” in a new session. When security dialog is displayed select “no”.
//! • Check that test client can not access intended service.
//!
//! @SYMTestExpectedResults • User prompt service dialog is displayed correctly.
//! • Security dialog is displayed within one second (1 sec) of client request for service.
//! • Information displayed about the client is complete (see Appendix A).
//! • Decision DB does not store any new decision.
//! • Access to test service is denied or granted accordingly.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-A004
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini yes_or_no
END_TESTCASE SEC-UPS-INTEG-A004
//********************** SEC-UPS-B : USE CASES FOR UPS INVOLVING CONCURRENCY **********************
//! @SYMTestCaseID SEC-UPS-INTEG-B004
//! @SYMTestCaseDesc Concurrent process can access service despite unattended security dialog.
//! (Unattended_Dialog)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//!
//! Test Actions:
//! • Launch 3 “test client” (A, B & C) which requests use of different system servers. Client A should
//! not have any decision related to it stored in DB, Clients B should have a decision “Always” stored
//! in DB, Client C should have decision “Never” stored in DB. Make sure that Client B & C are launch
//! after security dialog is displayed for Client A.
//! • Do not act in the security dialog for Client A when this one is displayed.
//! • Check that Client B can access intended test service.
//! • Check that Client C can not access intended test service and did receive a denial response.
//! • Act now in security dialog for Client A, select “always”.
//! • Check that Client A can access intended test service.
//!
//! @SYMTestExpectedResults • Final check in Decision DB shows 3 decisions stored: “Always” for Clients A & B, “Never”
//! for Client C.
//! • Accesses to service were granted for Clients A & B.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-B004
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Setup up the Database so that Client B has an 'Always' Decision and Client C has a 'Never' Decision stored
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Unattended_Dialog_ClientB_Setup
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Unattended_Dialog_ClientC_Setup
// Run 3 concurrent clients with a Coordinator to ensure that the Clients are synchronised
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini Unattended_Dialog_Coordinator
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Unattended_Dialog_ClientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Unattended_Dialog_ClientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Unattended_Dialog_ClientC
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini Unattended_Dialog_dbManagementcheck
END_TESTCASE SEC-UPS-INTEG-B004
//! @SYMTestCaseID SEC-UPS-INTEG-B005
//! @SYMTestCaseDesc Cancellation of UPS request in concurrent system server.
//! (concurrent_cancellation)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427, REQ7431, REQ7432
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//!
//! Test Actions:
//! • Launch 2 “test client” (A & B ) which requests use of different system servers. Client A
//! should have a decision “Always” stored in DB, client B should have decision “Never” stored in DB.
//! Client A & B run continuously and they request periodic use of a test service, each of this request
//! should cause UPS to be invoked, UPS should continuously issue an appropriate silence response for A &
//! B.
//! • Launch “test client C” which requests use of different system servers. This client C does not have
//! any related decision stored in DB.
//! • The system server for client C is expected to request UPS for security dialog.
//! • Do not act in security dialog displayed for client C, instead instruct system server for client C
//! to cancel previous request made to UPS.
//! • Make sure that clients A & B can still receive appropriate silent response from UPS despite
//! cancellation of request by system server attending client C.
//! • Launch test client D which should attempt use of same service attempted by client C. Security
//! dialog should be displayed, select “Always”.
//! • Check that client D can access intended service.
//! • Launch client D in new session and check that it received silent acceptance.
//!
//!
//! @SYMTestExpectedResults • Final check in Decision DB shows 2 decisions stored: “Always” for Clients A, “Never” for
//! Client B.
//! • Access to service was granted for Clients A & D.
//! • Access to service was denied for Clients B.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-B005
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientA_setup
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientB_setup
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientC_cancel
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientD
CONSECUTIVE
// Concurrent cancellation with UPS calling the same server, policy evaluator, dialog creator and policy from clients B + D
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientB_samepolicy
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientC_cancel
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_cancellation_clientD_samepolicy
CONSECUTIVE
END_TESTCASE SEC-UPS-INTEG-B005
//! @SYMTestCaseID SEC-UPS-INTEG-B008
//! @SYMTestCaseDesc Early closure of client with concurrent processes, policy evaluator stage
//! (client_dying_at_evaluator_point)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that
//! matches the UID of the service offered by the “system server”.
//!
//! Test Actions:
//! • Launch 2 “test client” (A & B) which requests use of different system servers.
//! Client A should have a decision “Always” stored in DB, client B should have
//! decision “Never” stored in DB. Clients A & B run continuously and they request
//! periodic use of a test service, each of this request should cause UPS to be
//! invoked, UPS should continuously issue an appropriate silence response for A & B.
//! • Launch “test client C” which requests use of a different system server. System
//! server will invoke UPS and this one should invoke a policy evaluator. When
//! policy evaluator is running shut down test client C.
//! • Make sure that Clients A & B can still receive appropriate silent response from UPS.
//!
//! @SYMTestExpectedResults
//! • Final check in Decision DB shows 2 decisions stored: “Always” for Clients A, “Never”
//! for Client B.
//! • Access to service was granted for Clients A.
//! • Access to service was denied for Clients B & C.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-B008
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_client_00a
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_client_00b
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini dying_client_at_evaluator_Coordinator
RUN_TEST_STEP 100 TUPSInteg_minor DyingClient z:\tups\integ\scripts\tups_integ.ini dying_client_at_evaluator
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_client_00a
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_client_00b
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini client_dying_at_evaluator_point_dbManagementCheck
END_TESTCASE SEC-UPS-INTEG-B008
//! @SYMTestCaseID SEC-UPS-B009
//! @SYMTestCaseDesc Early closure of client with concurrent processes, dialog displayed stage
//! (client_dying_at_dialog_point)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that
//! matches the UID of the service offered by the “system server”.
//! Test Actions:
//! • Launch 2 “test client” (A & B) which requests use of different system
//! servers. Client A should have a decision “Always” stored in DB, client B
//! should have decision “Never” stored in DB. Clients A & B run continuously and
//! they request periodic use of a test service, each of this request should cause
//! UPS to be invoked, UPS should continuously issue an appropriate silence response
//! for A & B.
//! • Launch “test client C” which requests use of a different system server. System
//! server will invoke UPS and at some stage a security dialog will be invoked. When
//! security dialog is displayed do not act on this one and shut down test client C.
//! • Make sure that Clients A & B can still receive appropriate silent response from UPS.
//!
//! @SYMTestExpectedResults
//! • Final check in Decision DB shows 2 decisions stored: “Always” for Clients A,
//! “Never” for Client B.
//! • Access to service was granted for Clients A.
//! • Access to service was denied for Clients B & C.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-B009
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_client_00a
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_client_00b
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini dying_client_at_dialog_Coordinator
RUN_TEST_STEP 100 TUPSInteg_minor DyingClient z:\tups\integ\scripts\tups_integ.ini dying_client_at_dialog
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_client_00a
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_client_00b
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini client_dying_at_dialog_point_dbManagementCheck
END_TESTCASE SEC-UPS-B009
//! @SYMTestCaseID SEC-UPS-B010
//! @SYMTestCaseDesc Multiple clients requesting multiple services in concurrent manner.
//! (multiple_client_requests_concurrent)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • As set in test assumptions section on detail description of this test.
//!
//! Test Actions:
//! • Execute test actions as set in “tests sequence part 1” above.
//! • Execute test actions as set in “tests sequence part 2” above.
//! • Reset test clients and test system servers.
//! • Execute test actions as set in “tests sequence part 3” above.
//!
//! @SYMTestExpectedResults Test services are granted/denied accordingly as set in detail test description.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-B010
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client1
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client3
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client4
CONSECUTIVE
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client1
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client3
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client4
CONSECUTIVE
// Close and Reset UPS
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client1
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client3
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini concurrent_multiple_request_client4
CONSECUTIVE
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_24
END_TESTCASE SEC-UPS-B010
//! @SYMTestCaseID SEC-UPS-B011
//! @SYMTestCaseDesc Multiple clients requesting multiple services in non–concurrent manner.
//! (multiple_client_requests_consecutive)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ****
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • As set for test case SEC-UPS-B002C, but each test client and system server do not run concurrently
//! with other tests clients.
//!
//! Test Actions:
//! • Execute test actions as set in “tests sequence part 1” on test case SEC-UPS-B010 above.
//! • Execute test actions as set in “tests sequence part 2” on test case SEC-UPS-B010 above.
//! • Reset test clients and test system servers.
//! • Execute test actions as set in “tests sequence part 3” on test case SEC-UPS-B010 above.
//!
//! @SYMTestExpectedResults Test services are granted/denied accordingly as set in detail test description for test case
//! SEC-UPS-B010 above.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-B011
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client1_Part1
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client2_Part1
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client3_Part1
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client4
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client1_Part2
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client2_Part2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client3_Part2
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client4
// Close and Reset UPS
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client1_Part2
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client2_Part2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client3_Part2
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini multiple_request_client4
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_24
END_TESTCASE SEC-UPS-B011
//! @SYMTestCaseID SEC-UPS-INTEG-B012
//! @SYMTestCaseDesc Concurrent process can access service despite multiple unattended security dialogs.
//! (Multiple_Unattended_Dialogs)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the service offered by the “system
//! server”.
//!
//! Test Actions:
//! • Launch 3 “test client” (A, B & C) which requests use of different system servers. Clients A & B should not have any decision
//! related to it stored in DB, Clients C should have a decision “Always” stored in DB. Make sure that Client B is launched after
//! security dialog is displayed for Client A. Make sure that request for security dialog for client B is made before client C is
//! launched.
//! • Do not act in the security dialog for Client A when this one is displayed.
//! • Check that Client C can access intended test service and UPS did issue a silent acceptance to system server from UPS for the
//! request made for client C.
//! • Act now in security dialog for Client A, select “Never”.
//! • Check that Client A can NOT access intended test service.
//! • Act now in security dialog for Client B, select “Always”.
//! • Check that Client B can access intended test service.
//!
//! @SYMTestExpectedResults • Final check in Decision DB shows 4 decisions stored: “Always” for Clients B & C. “Never” for Client A.
//! • Accesses to service were granted for Clients B & C.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-B012
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Setup up the Database so that Client C has an 'Always' Decision stored
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Multiple_Unattended_Dialogs_ClientC_Setup
// Run 3 concurrent clients with a Coordinator to ensure that the Clients are synchronised
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini Multiple_Unattended_Dialogs_Coordinator
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Multiple_Unattended_Dialogs_ClientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Multiple_Unattended_Dialogs_ClientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Multiple_Unattended_Dialogs_ClientC
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini Multiple_Unattended_Dialogs_dbManagementcheck
END_TESTCASE SEC-UPS-INTEG-B012
//********************** SEC-UPS-C : DIALOG SERIALISATION SPECIFIC TESTS **********************
//! @SYMTestCaseID SEC-UPS-C001
//! @SYMTestCaseDesc Dialog serialisation
//! (Dialog_Serialisation)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7472
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • For each of the services There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the service //! offered by the “system server”.
//!
//! Test Actions:
//! • Launch 3 “test client” (A ,B & C) in turns, these Clients requests use of a system server. System server should request prompt of //! security dialog to UPS. Make sure that requests for the 3 security dialog are made before acting in the first dialog that is expected //! to be displayed.
//! • For first security dialog to be displayed (client A) select “always”.
//! • Check that client A can access intended service.
//! • For second security dialog to be displayed (client B) select “only this session”.
//! • Check that client B can access intended service.
//! • For third security dialog to be displayed (client C) select “never”.
//! • Check that client C can NOT access intended service.
//! • Shut down clients and servers.
//! • Launch client A again, check that it can access test service and UPS is issuing silent acceptance.
//! • Launch client C again, check that it can access test service and UPS is issuing silent denial.
//!
//!
//! @SYMTestExpectedResults • User prompt service dialogs are displayed correctly, and only 1 dialog at any time.
//! • Information displayed about the client is complete (see Appendix A).
//! • Clients A & C can access test service.
//! • Client B can not access test service.
//! •Decision DB is updated correctly with the Always decision.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-C001
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Run 3 concurrent clients with a Coordinator to ensure that the Clients are synchronised
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini Dialog_Serialisation_Coordinator
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Dialog_Serialisation_clientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Dialog_Serialisation_clientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Dialog_Serialisation_clientC
CONSECUTIVE
// Silent acceptance checking for Client A
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Dialog_Serialisation_clientA_DecisionCheck
// Silent denial checking for Client C
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Dialog_Serialisation_clientC_DecisionCheck
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini Dialog_Serialisation_dbManagementcheck
END_TESTCASE SEC-UPS-C001
//! @SYMTestCaseID SEC-UPS-INTEG-C005
//! @SYMTestCaseDesc To ensure that a cancellation of a user prompt dialog (cancel button) does not affect
//! adversatively the behaviour of the UPS.
//! (single_dialog_cancellation)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of
//! the service offered by the “system server”.
//!
//! Test Actions:
//! • Launch a “test client A” which requests use of a system server.
//! • System server asks for a user prompt to the UPS.
//! • When security dialog is displayed, cancel request made from system server to UPS, this should
//! cause cancellation of notifier and therefore cancellation of security dialog.
//! • Close test client A.
//! • Launch test client B which tries to use the same test service.
//! • System server requests security dialog.
//! • When dialog is displayed select “always”
//! • Check that client B can use test service.
//!
//! @SYMTestExpectedResults
//! • User prompt service dialogs is displayed correctly.
//! • Cancellation of security dialog does not cause UPS malfunction.
//! • Decision DB is upgraded with new decision for test client B.
//!
//! @SYMTestType CIT
//!
START_TESTCASE SEC-UPS-INTEG-C005
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Client A is run concurrently with a Coordinator so that the request can be cancelled once the Dialog Creator has been invoked
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini single_dialog_cancellation_Coordinator
RUN_TEST_STEP 100 TUPSInteg_minor CancelPrompt z:\tups\integ\scripts\tups_integ.ini single_dialog_cancellation_ClientA
CONSECUTIVE
// Client B makes an attempt to access the same service as Client A
RUN_TEST_STEP 100 TUPSInteg_minor SimpleRequest z:\tups\integ\scripts\tups_integ.ini single_dialog_cancellation_ClientB
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini single_dialog_cancellation_dbManagementCheck
END_TESTCASE SEC-UPS-INTEG-C005
//! @SYMTestCaseID SEC-UPS-INTEG-C006
//! @SYMTestCaseDesc Cancellation of first dialog from a queue of pending security dialogs.
//! (cancellation_first_dialog)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7431 REQ7432
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • For each of the services there is an appropriate policy, policy evaluator and dialog creator that matches the UID of the service //! offered by the “system server”.
//!
//! Test Actions:
//! • Launch 3 “test client” in turns (A,B & C), these Clients try to use of a test service in system server.
//! • Make sure system server has request security dialog for all clients before acting in any security dialog.
//! • Once user prompt is displayed for client A, induce system server to cancel request to UPS for client A, this should cause security //! dialog for client A to be removed from screen.
//! • Security dialog for client B should appear on screen select “never” and check that application can NOT use intended service.
//! • Security dialog for client C should appear on screen select “always” and check that application can use intended service.
//!
//! @SYMTestExpectedResults • Decision DB is upgraded with new decisions for Clients B (“never”) and C (“always”)
//! • UPS does not malfunction after cancellation of dialog for Client A.
//!
//! @SYMTestType CIT
//!
START_TESTCASE SEC-UPS-INTEG-C006
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Client A, B and C are run concurrently with a Coordinator so that the first dialog (Client A) can be cancelled once all of the service requests
// have been invoked
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini cancellation_first_dialog_Coordinator
RUN_TEST_STEP 100 TUPSInteg_minor CancelPrompt z:\tups\integ\scripts\tups_integ.ini cancellation_first_dialog_ClientA_cancel
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_first_dialog_ClientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_first_dialog_ClientC
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini cancellation_first_dialog_dbManagementCheck
END_TESTCASE SEC-UPS-INTEG-C006
//! @SYMTestCaseID SEC-UPS-INTEG-C007
//! @SYMTestCaseDesc Cancellation of last dialog from a queue of pending security dialogs.
//! (cancellation_last_dialog)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7431 REQ7432
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • For each of the services there is an appropriate policy, policy evaluator and dialog creator that matches the UID of the service //! offered by the “system server”.
//!
//! Test Actions:
//! • Launch 3 “test client” in turns (A, B & C), these Clients try to use of a test service in system server.
//! • Make sure system server has request security dialog for all clients before acting in any security dialog.
//! • Security dialog for client A should appear on screen select “always” and check that application can use intended service.
//! • Security dialog for client B should appear on screen select “never” and check that application can NOT use intended service.
//! • Once user prompt is displayed for client C, induce system server to cancel request to UPS for client C, this should cause security //! dialog for client C to be removed from screen.
//! • In new session ask client A to try to access test service, UPS should grant silent acceptance and client A should have access to //! test service.
//! • In new session ask client B to try to access test service, UPS should grant silent denial and client B should NOT have access to //! test service.
//!
//! @SYMTestExpectedResults • Decision DB is upgraded with new decisions for Clients B (“never”) and
//! A (“always”).
//! • UPS does not malfunction after cancellation of dialog for Client C.
//! @SYMTestType CIT
//!
START_TESTCASE SEC-UPS-INTEG-C007
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Client A, B and C are run concurrently with a Coordinator so that the last dialog (Client C) can be cancelled once all of the service requests
// have been invoked
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini cancellation_last_dialog_Coordinator
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_last_dialog_ClientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_last_dialog_ClientB
RUN_TEST_STEP 100 TUPSInteg_minor CancelPrompt z:\tups\integ\scripts\tups_integ.ini cancellation_last_dialog_ClientC_cancel
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini cancellation_last_dialog_dbManagementCheck
END_TESTCASE SEC-UPS-INTEG-C007
//! @SYMTestCaseID SEC-UPS-INTEG-C008
//! @SYMTestCaseDesc Cancellation of middle position dialog from a queue of pending security dialogs.
//! (cancellation_middle_dialog)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7431 REQ7432
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • For each of the services there is an appropriate policy, policy evaluator and dialog creator that matches the UID of the service //! offered by the “system server”.
//!
//! Test Actions:
//! • Launch 3 “test client” in turns (A, B & C), these Clients try to use of a test service in system server.
//! • Make sure system server has request security dialog for all clients before acting in any security dialog.
//! • Security dialog for client A should appear on screen select “always” and check that application can use intended service.
//! • Once user prompt is displayed for client B, induce system server to cancel request to UPS for client B, this should cause security //! dialog for client B to be removed from screen.
//! • Security dialog for client C should appear on screen select “Always” and check that client can use intended service.
//! • In new session ask client A to try to access test service, UPS should grant silent acceptance and client A should have access to //! test service.
//! • In new session ask client C to try to access test service, UPS should grant silent acceptance and client B should have access to //! test service.
//!
//! @SYMTestExpectedResults • Decision DB is upgraded with 2 new “Always” decisions for Clients A & C.
//! • UPS does not malfunction after cancellation of dialog for Client B.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-C008
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Client A, B and C are run concurrently with a Coordinator so that the middle dialog (Client B) can be cancelled once all of the service requests
// have been invoked
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini cancellation_middle_dialog_Coordinator
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_middle_dialog_ClientA
RUN_TEST_STEP 100 TUPSInteg_minor CancelPrompt z:\tups\integ\scripts\tups_integ.ini cancellation_middle_dialog_ClientB_cancel
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_middle_dialog_ClientC
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini cancellation_middle_dialog_dbManagementCheck
END_TESTCASE SEC-UPS-INTEG-C008
//! @SYMTestCaseID SEC-UPS-INTEG-C009
//! @SYMTestCaseDesc Cancellation of request whilst Policy Evaluator is Generating Fingerprints
//! (cancellation_during_fingerprint_generation)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7431 REQ7432
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • For each of the services there is an appropriate policy, policy evaluator and
//! dialog creator that matches the UID of the service offered by the “system server”.
//! Test Actions:
//! • Launch 3 “test client” in turns (A, B & C), these Clients try to use of a test
//! service in system server.
//! • Make sure system server has request security dialog for all clients to UPS before
//! acting in any security dialog. At this stage client A should be hold with security
//! dialog open (on display), client B need to be hold while its request is at
//! “GenerateFingerPrints” stage, client C can be hold at display queuing stage.
//! • Once all clients have reached stages described above cancel request from client B,
//! consecutively let other two clients requests (A & C) run normally to competition.
//! • Check that request for A and C can be served normally by UPS.
//! • Check that request for client B received a “KerrCancel” from UPS.
//!
//! @SYMTestExpectedResults • Decisions for client A and C are correctly stored in decision DB.
//! • No decision was stored for client B.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-C009
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Client A, B and C are run concurrently with a Coordinator so that the middle dialog (Client B) can be cancelled whilst the policy evaluator is generating
// fingerprints
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini cancellation_during_fingerprint_generation_Coordinator
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_during_fingerprint_generation_ClientA
RUN_TEST_STEP 100 TUPSInteg_minor CancelPrompt z:\tups\integ\scripts\tups_integ.ini cancellation_during_fingerprint_generation_ClientB_cancel
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_during_fingerprint_generation_ClientC
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini cancellation_during_fingerprint_generation_dbManagementCheck
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_2
END_TESTCASE SEC-UPS-INTEG-C009
//! @SYMTestCaseID SEC-UPS-INTEG-C010
//! @SYMTestCaseDesc Cancellation of request whilst Dialog Creator is Preparing a Dialog
//! (cancellation_during_prepare_dialog)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7431 REQ7432
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • For each of the services there is an appropriate policy, policy evaluator and
//! dialog creator that matches the UID of the service offered by the “system server”.
//! Test Actions:
//! • Launch 3 “test client” in turns (A, B & C), these Clients try to use of a test
//! service in system server.
//! • Make sure system server has request security dialog for all clients to UPS before
//! acting in any security dialog. At this stage client A should be hold with security
//! dialog open (on display), client B need to be hold while its request is at
//! “PrepareDialog” stage, client C can be hold at display queuing stage.
//! • Once all clients have reached stages described above cancel request from client B,
//! consecutively let other two clients requests (A & C) run normally to competition.
//! • Check that request for A and C can be served normally by UPS.
//! • Check that request for client B received a “KerrCancel” from UPS.
//!
//! @SYMTestExpectedResults • Decisions for client A and C are correctly stored in decision DB.
//! • No decision was stored for client B.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-C010
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Client A, B and C are run concurrently with a Coordinator so that the middle dialog (Client B) can be cancelled whilst the dialog creator is preparing
// a dialog
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSCoordinatorStep z:\tups\integ\scripts\tups_integ.ini cancellation_during_prepare_dialog_Coordinator
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_during_prepare_dialog_ClientA
RUN_TEST_STEP 100 TUPSInteg_minor CancelPrompt z:\tups\integ\scripts\tups_integ.ini cancellation_during_prepare_dialog_ClientB_cancel
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini cancellation_during_prepare_dialog_ClientC
CONSECUTIVE
// Database Management Checks
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini cancellation_during_prepare_dialog_dbManagementCheck
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_2
END_TESTCASE SEC-UPS-INTEG-C010
//********************** SEC-UPS-D : DECISION DATABASE SPECIFIC TESTS **********************
//! @SYMTestCaseID SEC-UPS-INTEG-D003
//! @SYMTestCaseDesc Deletion of decision DB after DB corruption
//! (BD_corruption)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ0
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • For each of the services there is an appropriate policy, policy evaluator and
//! dialog creator that matches the UID of the service offered by the “system server”.
//!
//! Test Actions:
//! • Launch 2 “test client” in turns (A & B) these Clients try to use of a system server.
//! • System server asks for a user prompt to the UPS for each of the Clients.
//! • For the first 2 test clients (A & B) select “Always” option.
//! • Check that “test client” A & B can now use the intended service from the system server.
//! • Close client, system servers and UPS
//! • Change some bytes in decision DB file that will be interpreted as DB corruption.
//! • Launch again test clients A & B, as the decision DB is expected to have been deleted,
//! it is expected that 2 user prompts will be displayed again for A & B.
//! • Select “Never” for A and “always” for B.
//! • Check that A can access intended service and B can NOT.
//! @SYMTestExpectedResults • The decision DB is deleted after corruption and replaced with new one.
//! • A new DB is created with “”Never” decision for client A and “Always” decision for client B.
//! • Corruption of decision DB does not cause failure in UPS.
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-D003
// First attempt of corruption
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini BD_corruption_adddecisions
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini BD_corruption_checkdecisions
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// replaces database with corrupted database
RUN_UTILS CopyFile z:\tups\integ\corrupted_db_integ\ups_corrupted1.db c:\private\10283558\database\ups.db
RUN_UTILS MakeReadWrite c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini BD_corruption_adddecisions
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini BD_corruption_checkdecisions
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// second attempt of corruption
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini BD_corruption_adddecisions
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini BD_corruption_checkdecisions
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// replaces database with corrupted database
RUN_UTILS CopyFile z:\tups\integ\corrupted_db_integ\ups_corrupted2.db c:\private\10283558\database\ups.db
// The database file is deliberately left as read only (DEF122590).
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini BD_corruption_adddecisions
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini BD_corruption_checkdecisions
END_TESTCASE SEC-UPS-INTEG-D003
//! @SYMTestCaseID SEC-UPS-D004
//! @SYMTestCaseDesc Removal of single decision from DB by user operation.
//! (remove_single_db_decision)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7379
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • For each of the services There is an appropriate policy, policy evaluator and dialog creator that matches the UID //! of the service offered by the “system server”.
//!
//! Test Actions:
//! • Populate decision DB for 3 test clients (A, B, C) with “Never” decisions for 3 Clients.
//! • Remove individual decision for Client B from DB using decision DB management API.
//! • Launch test clients (A, B, C) which should try to use service from system server.
//! • System server requests UPS for security for user security prompting, at this point UPS should give silent denial //! for Client A & C, but should prompt user security dialog for Client B.
//! • Select “Always” for test client B when security dialog is displayed.
//! • Check that Client B can now use the intended service.
//!
//! @SYMTestExpectedResults • Only decision for test client B changes; final state of decision DB should show decisions for A & C as
//! “never”, decision for C as “Always”.
//! • Test client B is granted access to intended service.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-D004
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// * STAGE 1 - CONSECUTIVE REMOVAL OF DECISIONS FROM DATABASE
// Populate decisions in the database and close off sessions
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_setup_clientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_setup_clientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_setup_clientC
// Initial check on the decisions for denial from UPS
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_initialCheck_clientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_initialCheck_clientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_initialCheck_clientC
// Initial Database Management Record Check and Count
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_initialDBCheck
// Remove database decisions for client B using the UPS DB Management API
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_removeDecision_clientB
// UPS DB Management checking on records and Execute Decision Count
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_postClientRemovalDBCheck
// Remove database decisions for Policy Evaluator 2 using the UPS DB Management API
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_removeDecision_evaluator2
// UPS DB Management checking on records and Execute Decision Count
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_postEvaluatorRemovalDBCheck
// Relaunch clients checking that clients A & C requesting PE 1 or 3 return denials and others require a User Prompt of which
// Always is selected
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_checkAndRepopulate_clientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_checkAndRepopulate_clientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_checkAndRepopulate_clientC
// Final check on the decisions from UPS
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_finalCheck_clientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_finalCheck_clientB
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_finalCheck_clientC
// Final Stage of UPS DB Management checking on records and Execute Decision Count
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_single_db_decision_finalDBCheck
// * STAGE 2 - CONCURRENT OPERATIONS ON UPS WHILST REMOVING DECISIONS FROM DATABASE
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with sample inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample2
// Perform initial checking on sample decisions
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
// Concurrently check the decisions of clients B & C whilst remove select decisions from the Database for Client A
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_decisions_concurrent_clientA
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
CONSECUTIVE
// UPS DB Management checking on records and Execute Decision Count
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_decisions_concurrent_dbCheck
END_TESTCASE SEC-UPS-D004
//! @SYMTestCaseID SEC-INTEG-UPS-D006
//! @SYMTestCaseDesc Removal of decision from DB by uninstalling client.
//! (client_removal)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7387
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • For each of the services There is an appropriate policy, policy evaluator and dialog
//! creator that matches the UID of the service offered by the “system server”.
//! • The test clients used for this test case were installed with a SIS file that did not
//! install the policy or policy evaluator mapped to these test clients.
//! • There is more than one decision stored for test applications.
//!
//! Test Actions:
//! • Populate decision DB for 3 test clients (A, B, C) with “Always” decisions for 3 Clients.
//! • Uninstall test client B.
//! • Launch test clients (A & C), these two Clients should have normal access to test service
//! without need for security dialog prompt.
//!
//! @SYMTestExpectedResults • Decision for test client B was removed from decision DB. Decisions for test clients
//! A & C are still present in DB with value “always”
//! • Test client A & C are granted access to test service.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-D006
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// Installs new client via swi (tupsinteg_post1)
RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_post1
LOAD_SUITE tupsinteg_post1
// creates decision for new installed client.
// This odd jump to another script is indispensable in this situation.
RUN_SCRIPT z:\tups\integ\scripts\tups_integ_post1.script
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// Unsinstall new client via swi (tupsinteg_post1)
RUN_TEST_STEP 100 tups_install UninstallStep z:\tups\integ\scripts\tups_integ.ini uninstall_post1
CONSECUTIVE
// Need to reinstall client to be able to check decisions
RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_post1
// creates decision for new installed client.
// This odd jump to another script is indispensable in this situation.
RUN_SCRIPT z:\tups\integ\scripts\tups_integ_post1.script
// decisions for other clients are expected to be unchanged.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// Last Unsinstall of new client via swi (tupsinteg_post1) (clean up)
RUN_TEST_STEP 100 tups_install UninstallStep z:\tups\integ\scripts\tups_integ.ini uninstall_post1
END_TESTCASE SEC-INTEG-UPS-D006
//! @SYMTestCaseID SEC-INTEG-UPS-D007
//! @SYMTestCaseDesc Removal of decision from DB by upgrading client.
//! (client_update)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7387 REQ7470
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • For each of the services There is an appropriate policy, policy evaluator
//! and dialog creator that matches the UID of the service offered by the “system server”.
//! • The test clients used for this test case were installed with a SIS file that did not
//! install the policy or policy evaluator mapped to these test clients.
//! • More than 1 decision is associated to test client.
//! Test Actions:
//! • Populate decision DB for 3 test clients (A, B, C) with “Always” decisions for 3 Clients.
//! • Upgrade test client B by using SIS file. This SIS file should replace EXE file associated
//! to test client B.
//! • Launch test clients (A, B, C), A & C should have normal access to test service without
//! need for security dialog prompt. UPS should display security dialog for Client B, select “Never”.
//!
//! @SYMTestExpectedResults • Decision for test client B was changed in the decision DB from “Always” to “Never”.
//! Decisions for test clients A & C are still present in DB with value “always”
//! • Test client A & C are granted access to test service.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-D007
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// Installs new client via swi (tupsinteg_post1)
RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_post1
// creates decision for new installed client.
// This odd jump to another script is indispensable in this situation.
RUN_SCRIPT z:\tups\integ\scripts\tups_integ_post1.script
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// Reinstall client via swi, this counts as an upgrate (tupsinteg_post1)
RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_post1
CONSECUTIVE
// creates decision for new installed client.
// This odd jump to another script is indispensable in this situation.
RUN_SCRIPT z:\tups\integ\scripts\tups_integ_post1_check.script
// decisions for other clients are expected to be unchanged.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// Last Unsinstall of new client via swi (tupsinteg_post1) (clean up)
RUN_TEST_STEP 100 tups_install UninstallStep z:\tups\integ\scripts\tups_integ.ini uninstall_post1
END_TESTCASE SEC-INTEG-UPS-D007
//! @SYMTestCaseID SEC-INTEG-UPS-D009
//! @SYMTestCaseDesc Removal of decision from DB by uninstalling policy file
//! (policy_removal)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7397 REQ7399 REQ7400
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • For each of the services there is an appropriate policy, policy evaluator and dialog creator
//! that matches the UID of the service offered by the “system server”.
//! • The SIS file used to install test policy did NOT install any executable client that could be
//! mapped to this policy.
//! Test Actions:
//! • Populate decision DB for 3 test clients (A, B, C) with “Always” decisions for 3 Clients.
//! • Uninstall policy mapped to Client B.
//! • Launch test clients (A, B, C). Clients A & C should have normal access test service.
//! • For Client B, test system server should receive a KErrUpsMissingPolicyFile form UPS.
//! • Check that Client A & C can access test service.
//!
//! @SYMTestExpectedResults • Decision DB contains only “Always” decision stored for Clients A & C, Client B
//! should not have any decision associated to it.
//! • Test client A & C are granted access to test service.
//! • Test client B is granted not granted service.
//! • KErrUpsMissingPolicyFile issued to system server when request security dialog for client B.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-D009
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// installs policy file version 1
RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_policies1v1
// populates decisions related to policy just installed
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_populate
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_check
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
// uninstall policy file.
RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini un_install_policies1v1
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
END_TESTCASE SEC-INTEG-UPS-D009
//! @SYMTestCaseID SEC-INTEG-UPS-D010
//! @SYMTestCaseDesc Removal of decision from DB by upgrading policy file
//! (policy_update)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7397 REQ7399 REQ7400
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! Preconditions:
//! • For each of the services There is an appropriate policy, policy evaluator and
//! dialog creator that matches the UID of the service offered by the “system server”.
//! • The SIS file used to install test policy did NOT install any executable client that
//! could be mapped to this policy.
//! Test Actions:
//! • Populate decision DB for 3 test clients (A, B, C) with “Always” decisions for 3 Clients.
//! • Upgrade policy mapped to Client B via SWI.
//! • Launch test clients (A, B, C). Clients A & C should have normal access test service (no
//! prompting). For Client B, UPS should prompt again for user permission, select “never” option.
//! • Check that Client A & C can access test service.
//! @SYMTestExpectedResults • Decision DB contains only “Always” decision stored for Clients A & C, for Client
//! B the decision stored now is “never”.
//! • Test client A & C are granted access to test service.
//! • Policy files were installed in private directory
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-D010
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// installs policy file version 1
RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_policies1v1
// populates decisions related to policy just installed
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_populate
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_check
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
// installs policy file version 2, this should cause decisions to be deleted
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_policies1v2
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_inflight_change
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
CONSECUTIVE
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
// Cleanup
RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini un_install_policies1v2
//////////// repeats same test sequence but without concurrency /////////////////////////
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// installs policy file version 1
RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_policies1v1
// populates decisions related to policy just installed
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_populate
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_check
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
// installs policy file version 2, this should cause decisions to be deleted.
RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_policies1v2
// populates decisions that are expected to be deleted.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_populate
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_check
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
// Cleanup
RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini un_install_policies1v2
END_TESTCASE SEC-INTEG-UPS-D010
//********************** SEC-UPS-E : SECURITY POLICIES AND POLICY EVALUATOR PLUG-INS **********************
//! @SYMTestCaseID SEC-UPS-INTEG-E001
//! @SYMTestCaseDesc To ensure that when a single bit is set in the “options” no security
//! dialog will be prompted to user.
//! (single_bit_set)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7391, REQ7392, REQ7433
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Test A: Set only ‘EYes’ bit to true in test policy for“test client”.
//! Induce UPS invocation by using a “test client”
//! Check if test client can access intended service.
//! Test B: Set only ‘ENo’ bit to true in test policy for“test client”.
//! Induce UPS invocation by using a “test client”
//! Check if test client can access intended service.
//! Test C: Set only ‘ESession’ bit to true in test policy for“test client”.
//! Induce UPS invocation by using a “test client”
//! Check if test client can access intended service.
//! Test D: Set only ‘EAlways’ bit to true in test policy for“test client”.
//! Induce UPS invocation by using a “test client”
//! Check if test client can access intended service.
//! Test E: Set only ‘ENever’ bit to true in test policy for“test client”.
//! Induce UPS invocation by using a “test client”
//! Check if test client can access intended service.
//!
//! @SYMTestExpectedResults Only for tests A, C & D the test service will be able to access
//! intended service.
//! For all of the tests (A to E), no decision is stored in decision DB.
//! No security dialog is displayed (all decisions are silent).
//!
//! @SYMTestType CIT
//
START_TESTCASE SEC-UPS-INTEG-E001
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini single_bit_set
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini single_bit_set_b
END_TESTCASE SEC-UPS-INTEG-E001
//! @SYMTestCaseID SEC-UPS-INTEG-E002
//! @SYMTestCaseDesc To ensure that a default policy evaluator will be invoked if a service
//! requested do not match any existing policy in the phone
//! (no_matching_policy)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ0
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions: There is not matching policy for the test client to
//! be used for this test case.
//! Test Actions:
//! - Launch test client which tries to access test service, system server
//! should invoke UPS.
//! - A “Yes” or “No” dialog should be displayed select “YES
//! Check that access is granted to test service.
//! - Launch again same test client, a “Yes” or “Not” dialog should be displayed
//! select “No”.
//! - Check that access is NOT granted to test service.
//! - Launch again same test client, a “Yes” or “Not” dialog should be displayed
//! select “Yes”.
//! - Check that access is granted to test service.
//!
//! @SYMTestExpectedResults Yes” or “No” dialog is displayed every time that test client
//! request service access.
//!
//! @SYMTestType CIT
//
START_TESTCASE SEC-UPS-INTEG-E002
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep Z:\tups\integ\scripts\tups_integ.ini no_matching_policy
END_TESTCASE SEC-UPS-INTEG-E002
//! @SYMTestCaseID SEC-UPS-INTEG-E004
//! @SYMTestCaseDesc To ensure that UPS will return an appropriate error if the policy
//! evaluator set in the “policy evaluator” field is not present in the phone
//! (missing_policy_evaluator)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7444
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions there is an appropriate policy, policy evaluator
//! and dialog creator that matches the UID of the service offered by the
//! “system server”. However the policy evaluator referred in the “policy
//! evaluator UID field” is not present in the phone.
//! Actions: Launch test client which tries to use test service, system server should invoke UPS.
//! UPS should return KErrUpsMissingPolicyEvaluator to system server.
//!
//! @SYMTestExpectedResults System server receives KErrUpsMissingPolicyEvaluator
//! and test client can not use intended service
//!
//! @SYMTestType CIT
//
START_TESTCASE SEC-UPS-INTEG-E004
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini missing_policy_evaluator
END_TESTCASE SEC-UPS-INTEG-E004
//! @SYMTestCaseID SEC-UPS-INTEG-E006
//! @SYMTestCaseDesc To ensure that UPS will return appropriate error if dialog creator referred
//! by “Dialog creator UID” field in policy is not present in phone
//! (missing_dialog_creator)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7444
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions preconditions There is an appropriate policy, policy evaluator that matches
//! the UID of the service offered by the “system server”. However the dialog
//! creator referred in the “Dialog creator UID field” is not present in the phone.
//! Launch test client which tries to access test service, system server should
//! invoke UPS. Launch test client which tries to use test service, system server
//! should invoke UPS.
//!
//! @SYMTestExpectedResults System server receives KErrUpsMissingDialogCreator
//! and test client can not use intended service
//!
//! @SYMTestType CIT
//
START_TESTCASE SEC-UPS-INTEG-E006
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini missing_dialog_creator
END_TESTCASE SEC-UPS-INTEG-E006
//! @SYMTestCaseID SEC-UPS-INTEG-E007
//! @SYMTestCaseDesc Matching destination by wild card, asterisk symbols – limited range.
//! (asterisk_limited)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ0
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator
//! that matches the UID of the service offered by the “system server”.
//! The value for “destination” in policy file contains asterisk.
//! Test Actions:
//! • Launch test client A which tries to access test service. The service
//! requested by this Client is a phone connection to a 0900 number.
//! (The policy associated to this service states that all 0900* should be
//! prompted for user decision)
//! • System server asks for a user prompt to the UPS.
//! • When UPS prompts user, select the “Always” option. Check that Client
//! A can access intended service.
//! • Launch Client A in a new session, check that Client A receives a silent
//! acceptance and can access the intended service.
//! • Launch test client B which tries to access test service. The service
//! requested by this Client is an internet connection to a “.RU” address.
//! (The policy associated to this service states that all “.RU” addresses
//! should be blocked).
//! • System server asks for a user prompt to the UPS.
//! • UPS should reply with a silent denial. Check that Client B can not
//! access intended service.
//!
//! @SYMTestExpectedResults • An “Always” decision is stored in decision DB for Client A.
//! • Client A can access intended service.
//! • No decision is stored for Client B in decision DB.
//! • Client B can NOT access intended service.
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-E007
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini asterisk_limited
END_TESTCASE SEC-UPS-INTEG-E007
//! @SYMTestCaseID SEC-UPS-INTEG-E008
//! @SYMTestCaseDesc Matching destination by wild card, asterisk symbols – All option.
//! (asterisk_all)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ0
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator
//! that matches the UID of the service offered by the “system server”.
//! The value for “destination” in policy file contains asterisk.
//! Test Actions:
//! • Launch test client A with which tries to access test service.
//! The service requested by this Client is a phone connection to a 0500 number.
//! (The policy associated to this service states that all destinations should be prompted
//! for user decision, “*” in destination)
//! • System server asks for a user prompt to the UPS.
//! • When UPS prompts user, select the “Always” option. Check that Client A can
//! access intended service.
//! • Launch Client A in a new session, check that Client A receives a silent acceptance
//! and can access the intended service.
//! • Launch test client B which tries to access test service. The service requested by this
//! Client is an internet connection to a “.RU” address. (The policy associated to this service
//! states that all “.RU” addresses should be blocked).
//! • System server asks for a user prompt to the UPS.
//! • UPS should reply with a silent denial. Check that Client B can not access intended service.
//!
//!
//! @SYMTestExpectedResults • An “Always” decision is stored in decision DB for Client A.
//! • Client A can access intended service.
//! • No decision is stored for Client B in decision DB.
//! • Client B can NOT access intended service.
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-E008
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini asterisk_all
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini asterisk_all_b
END_TESTCASE SEC-UPS-INTEG-E008
//! @SYMTestCaseID SEC-UPS-INTEG-E009
//! @SYMTestCaseDesc Matching destination by wild card, question mark symbols.
//! (question_mark_card)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ0
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that
//! matches the UID of the service offered by the “system server”. The value
//! for “destination” in policy file contains question mark symbols.
//! Test Actions:
//! • Launch test client A which tries to access test service. The service requested
//! by this Client is a phone connection to a 0900 number. (The policy associated to
//! this service states that all 0?00 should be prompted for user decision)
//! • System server asks for a user prompt to the UPS.
//! • When UPS prompts user, select the “Always” option. Check that Client A can access
//! intended service.
//! • Launch Client A in a new session, check that Client A receives a silent acceptance
//! and can access the intended service.
//! • Launch test client B which tries to access test service. The service requested by
//! this Client is an phone call to 118 500. (The policy associated to this service states
//! that all 118??? Phone numbers should be blocked).
//! • System server asks for a user prompt to the UPS.
//! • UPS should reply with a silent denial. Check that Client B can not access intended
//! service.
//!
//!
//! @SYMTestExpectedResults • An “Always” decision is stored in decision DB for Client A.
//! • Client A can access intended service.
//! • No decision is stored for Client B in decision DB.
//! • Client B can NOT access intended service.
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-E009
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini question_mark_card
END_TESTCASE SEC-UPS-INTEG-E009
//! @SYMTestCaseID SEC-INTEG-UPS-E017
//! @SYMTestCaseDesc Post manufacture install of Policy Evaluator
//! (policy_evaluator_install)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7408
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • There a policy file associated to test service, however the policy evaluator specified
//! in the “Policy evaluator field” is not present in the phone
//! Test Actions:
//! • Using SIS file install new policy evaluator that is listed in policy file (This SIS file
//! only installs policy evaluator plug-in, it does NOT install policy file).
//! • Launch test client which uses policy file that invokes use of new policy evaluator, verify
//! that UPS invokes the new policy evaluator, use test client to store new “never” and “always”
//! decisions.
//! • Uninstall the policy evaluator that was just previously installed, re-install again the same
//! policy evaluator; as decisions are not expected to be deleted verify that the decisions are
//! still there in database.
//! • Run the previous test sequence concurrently with other clients using decisions stored in DB not
//! related to new policy evaluator, check that these decisions are not affected by installation
//! and removal of policy evaluator.
//!
//! @SYMTestExpectedResults • Newly installed policy evaluator is used after installation by SIS file.
//! • Decisions in DB are not affected by installation/removal of policy evaluator.
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E017
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// installs new policy evaluator
RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_evaluator5
// Delay added to alow new plugin to be scaned by some magic entity in the phone
DELAY 8000
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini newevaluator5
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// uninstall policy file.
RUN_TEST_STEP 100 tups_install UninstallStep z:\tups\integ\scripts\tups_integ.ini uninstall_evaluator5
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_30
END_TESTCASE SEC-INTEG-UPS-E017
//! @SYMTestCaseID SEC-INTEG-UPS-E018
//! @SYMTestCaseDesc Post manufacture install of dialog creator
//! (dialog_creator_install)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7408
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • Existence of SIS file that can install new dialog creator and policy file.
//! Test Actions:
//! • Using SIS file install new dialog creator and policy file.
//! • Request specific services to test system server that will invoke ups for
//! authorization and using the new dialog creator and policy file installed. Make
//! sure that an “always” and “never” decisions are stored in DB.
//! • Uninstall the SIS file, check the new decisions related to previously installed
//! dialog creator were removed for DB.
//!
//! @SYMTestExpectedResults
//! • Newly installed dialog and policy are used by UPS after installation by
//! SIS file.
//! • New decisions related to new dialog creator and policy file are stored correctly
//! into decision DB.
//! • Decisions related to policy file (installed by the same SIS file) are removed
//! from DB.
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E018
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// installs new policy evaluator
RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_dialog7
// Delay Allows new plugin to be scanned by ECOM
DELAY 8000
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini newdialog7
// uninstall policy file.
RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini uninstall_dialog7
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
END_TESTCASE SEC-INTEG-UPS-E018
//! @SYMTestCaseID SEC-INTEG-UPS-E024
//! @SYMTestCaseDesc Security Policy Authorisation - EAlwaysCheck
//! (alwayscheck_authoristion)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7389
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • Policy file related to test service to be used has property “authorisationPolicy” set
//! to “EAlwaysCheck”.
//! Test Actions:
//! • Request use of the service that matches policy file mentioned in “preconditions”.
//! Test system server should invoke UPS.
//! • Use different values for “aServerCheckOk” parameter in “Authorise” methods (ETrue
//! and EFalse)
//! • Check that UPS invokes correct policy evaluator and dialog creator as set in policy
//! file.
//!
//! @SYMTestExpectedResults
//! • All new requests made to UPS for test service will cause a user prompt from UPS.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E024
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini alwayscheck_platsec_true
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini alwayscheck_platsec_false
END_TESTCASE SEC-INTEG-UPS-E024
//! @SYMTestCaseID SEC-INTEG-UPS-E025
//! @SYMTestCaseDesc Security Policy Authorisation - ECheckPostManufacture
//! (checkpostmanufacture_authoristion)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7389
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • Policy file related to test service to be used has property “authorisationPolicy”
//! set to “ECheckPostManufacture”.
//! Test Actions:
//! • Request use of the service that matches policy file mentioned in “preconditions”.
//! Test system server should invoke UPS.
//! • Use different values for “aServerCheckOk” parameter in “Authorise” methods (ETrue
//! and EFalse).
//! • Use different types of applications to request the same service including: applications
//! with protected SID on Z drive, unprotected SID on Z drive, protected SID on C drive and
//! unprotected SID on C drive.
//!
//! @SYMTestExpectedResults Only requests made from applications with protected SID running from Z drive having
//! passed system server checks should receive immediate access approval, any other type
//! should cause a security user prompt.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E025
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// CLIENT WITH PROTECTED SID ON Z
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkpostmanufacture_platsec_true_zdrive_protect
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkpostmanufacture_platsec_false_zdrive_protect
// CLIENT WITH UNPROTECTED SID ON Z
RUN_TEST_STEP 100 TUPSInteg_unprotected UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkpostmanufacture_platsec_true_zdrive_unprotect
RUN_TEST_STEP 100 TUPSInteg_unprotected UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkpostmanufacture_platsec_false_zdrive_unprotect
// CLIENT WITH PROTECTED SID ON C
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkpostmanufacture_platsec_true_cdrive_protect
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkpostmanufacture_platsec_false_cdrive_protect
// CLIENT WITH UNPROTECTED SID ON C
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkpostmanufacture_platsec_true_cdrive_unprotect
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkpostmanufacture_platsec_false_cdrive_unprotect
END_TESTCASE SEC-INTEG-UPS-E025
//! @SYMTestCaseID SEC-INTEG-UPS-E026
//! @SYMTestCaseDesc Security Policy Authorisation - ECheckUnprotectedSids
//! (checkunprotectedsids_authoristion)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7389
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • Policy file related to test service to be used has property “authorisationPolicy”
//! set to “ECheckUnprotectedSids”.
//! Test Actions:
//! • Request use of the service that matches policy file mentioned in “preconditions”.
//! Test system server should invoke UPS.
//! • Use different values for “aServerCheckOk” parameter in “Authorise” methods (ETrue
//! and EFalse).
//! • Use different types of applications to request the same service including:
//! applications with protected SID on Z drive, unprotected SID on Z drive, protected
//! SID on C drive and unprotected SID on C drive.
//!
//! @SYMTestExpectedResults
//! • Any request for tests services made from clients with protected SID should receive
//! immediate silent approval from UPS.
//! • Request for tests services made from clients with unprotected SID should cause user
//! security dialog from UPS.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E026
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// CLIENT WITH PROTECTED SID ON Z
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkunprotectedsids_platsec_true_zdrive_protect
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkunprotectedsids_platsec_false_zdrive_protect
// CLIENT WITH UNPROTECTED SID ON Z
RUN_TEST_STEP 100 TUPSInteg_unprotected UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkunprotectedsids_platsec_true_zdrive_unprotect
RUN_TEST_STEP 100 TUPSInteg_unprotected UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkunprotectedsids_platsec_false_zdrive_unprotect
// CLIENT WITH PROTECTED SID ON C
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkunprotectedsids_platsec_true_cdrive_protect
RUN_TEST_STEP 100 TUPSInteg_4 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkunprotectedsids_platsec_false_cdrive_protect
// CLIENT WITH UNPROTECTED SID ON C
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkunprotectedsids_platsec_true_cdrive_unprotect
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkunprotectedsids_platsec_false_cdrive_unprotect
END_TESTCASE SEC-INTEG-UPS-E026
//! @SYMTestCaseID SEC-INTEG-UPS-E027
//! @SYMTestCaseDesc Security Policy Authorisation - ECheckIfFailed
//! (checkiffailed_authoristion)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7389
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • Policy file related to test service to be used has property
//! “authorisationPolicy” set to “ECheckIfFailed”.
//! Test Actions:
//! • Request use of the service that matches policy file mentioned in
//! “preconditions”. Test system server should invoke UPS.
//! • Use different values for “aServerCheckOk” parameter in “Authorise”
//! request (ETrue and EFalse).
//! @SYMTestExpectedResults
//! • Only requests made with “aServerCheckOk” parameter set to Efalse should cause
//! UPS to display user security dialog, otherwise UPS should return silent approval.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E027
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkiffailed_platsec_true
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini checkiffailed_platsec_false
END_TESTCASE SEC-INTEG-UPS-E027
//! @SYMTestCaseID SEC-INTEG-UPS-E028
//! @SYMTestCaseDesc Security Policy Authorisation - ENeverCheck
//! (nevercheck_authoristion)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7389
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • Policy file related to test service to be used has property “authorisationPolicy” set
//! to “ENeverCheck”.
//! Test Actions:
//! • Request use of the service that matches policy file mentioned in “preconditions”. Test
//! system server should invoke UPS.
//! • Use different values for “aServerCheckOk” parameter in “Authorise” request (ETrue and
//! EFalse).
//!
//! @SYMTestExpectedResults
//! • UPS shouldn’t display any security dialog, UPS should return silent acceptance server
//! checks passed, UPS should return silent denial server checks failed.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E028
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini nevercheck_platsec_true
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini nevercheck_platsec_false
END_TESTCASE SEC-INTEG-UPS-E028
//! @SYMTestCaseID SEC-INTEG-UPS-E029
//! @SYMTestCaseDesc System server with no policy files
//! (no_policy_files_server)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is NO policy file at all related to the system server been used for test purpose
//!
//! Test Actions:
//! • Launch “test clients” which tries to use of system servers. System server should request UPS for
//! user security dialog. Set plat sec check to ETrue in request to UPS.
//! • Launch “test clients” which tries to use of system servers. System server should request UPS for
//! user security dialog. Set plat sec check to EFalse in request to UPS.
//!
//! @SYMTestExpectedResults • System server shuold receive a EDecisionYes for first request
//! • System server shuold receive a EDecisionNo for second request
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E029
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini no_policy_files_server
END_TESTCASE SEC-INTEG-UPS-E029
//! @SYMTestCaseID SEC-INTEG-UPS-E030
//! @SYMTestCaseDesc Option session returned for always decision stored.
//! (session_overwrites_always)
//!
//!
//! @SYMTestPurpose To check that if a policy includes the “session” option for an “always” decision already stored,
//! then UPS will reply with “ESession” every time this decision is queried
//!
//! @SYMPREQ
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • The UPS policy stated for the test service to be used allows at least the options “ESession”
//! and “EAlways”
//!
//! Test Actions:
//! • Launch “test client” which tries to connect to a system server and use service.
//! • System server asks for a user prompt to the UPS.
//! • When UPS prompts user, select the “Always” option.
//! • Check that UPS returned “ESession” to system server.
//! • In a new session request the same service and destination, check that UPS returns an “ESession”
//! silent reply to system server. Check that the correct policy evaluator was invoked but no dialog
//! creator was invoked.
//!
//!
//! @SYMTestExpectedResults • UPS returns “ESession” even if an “Always” decision was selected by the use.
//! • A new “Always” decision was added to decision DB.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E030
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini session_overwrites_always
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini session_overwrites_always_b
END_TESTCASE SEC-INTEG-UPS-E030
//! @SYMTestCaseID SEC-UPS-E031
//! @SYMTestCaseDesc To check that UPS can handle client entities of a max length of 32 bytes
//! (client_entity)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7374
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • Policy evaluator used for test can populate “CClientEntity” object at will.
//! • Appropriate policy file, policy evaluator and dialog creator are present in phone for test service
//! to be requested
//!
//! Test Actions:
//! • Make request to ups for security user prompt for some arbitrary destinations. For these destination
//! instruct policy evaluator to create different CClientEntity lengths including:
//! - 0 bytes.
//! - 1 bytes.
//! - 32 bytes.
//! - 33 bytes.
//!
//! • For the previous requests select “Always” or “Never” when security dialog is displayed.
//!
//! @SYMTestExpectedResults • For client entities of length 0, 1 or 32 bytes a corresponding decision is expected to be
//! created in decision database. The client entity value is reported correctly in DB.
//!
//! • For CClientEntity of 33 bytes length, the constructor is expected to return
//! KErrUpsBadClientEntityLength and no decision is created in database.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-E031
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini client_Entity
END_TESTCASE SEC-UPS-E031
//! @SYMTestCaseID SEC-UPS-E032
//! @SYMTestCaseDesc Force prompt – decision removed
//! (force_prompt_decision_removed)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ0
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy file for the test service to be use.
//! • Policy evaluator has the ability to force prompt at run time. Policy evaluator increases by
//! one the value of “evaluator info” every time that a security dialog is prompted for a particular
//! decision in the DB.
//!
//! Test Actions:
//! • Part 1: Test client A has two pre-stored decision as “Always”.
//! • Instruct client A to request access to test service that matches its pre-stored decisions,
//! instruct policy evaluator to force prompt new security dialog for these decisions.
//! • When new security dialogs appear select “yes” for one of the pre-stored decisions and select
//! “no” for the other decision”.
//! • Check that both pre-stored decision for client A were removed from DB.
//!
//! • Part 2: Test client B has two pre-stored decision as “Never”.
//! • Instruct client B to request access to test service that matches its pre-stored decisions,
//! instruct policy evaluator to force prompt new security dialog for these decisions.
//! • When new security dialogs appear select “yes” for one of the pre-stored decisions and select
//! “no” for the other decision”.
//! • Check that both pre-stored decision for client B were removed from DB.
//!
//! @SYMTestExpectedResults • Decisions in database where updated correctly in DB.
//! • “client info” field was increased by two at the end of test.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-E032
//* PART 1
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Client A setup of pre-stored decisions
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientA_setup
// Initial check to ensure that DB decision acceptance is issued by UPS
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientA_initialCheck
// Check decision database state before force prompting
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientA_intitalDbCheck
// Force the dialog prompt on the Decisions stored about Client A in the Database
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientA_forcePrompt
// Check that decisions have been removed and that new options can be chosen
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientA_noDecisionCheck
// Check for No Decisions using Database Management Step
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientA_dbManagementCheck
// * PART 2
// Client B setup of pre-stored decisions
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientB_setup
// Initial check to ensure that DB decision denial is issued by UPS
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientB_initialCheck
// Check decision database state before force prompting
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientB_intitalDbCheck
// Force the dialog prompt on the Decisions stored about Client B in the Database
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientB_forcePrompt
// Check that decisions have been removed and that new options can be chosen
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientB_noDecisionCheck
// Check for No Decisions using Database Management Step
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_decision_removed_clientB_dbManagementCheck
END_TESTCASE SEC-UPS-E032
//**************************************************************************************************************
//! @SYMTestCaseID SEC-UPS-E033
//! @SYMTestCaseDesc Force prompt – multiple fingerprints- record overwritten
//! (force_prompt_multifingerprint_overwriterecord)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7409 REQ7403
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy file for the test service to be use.
//! • Policy evaluator has the ability to force prompt at run time. Policy evaluator increases by one
//! the value of “evaluator info” every time that a security dialog is prompted for a particular
//! decision in the DB.
//! • Policy evaluator generates 3 fingerprints FP1, FP2 & FP3 which are checked by UPS in decision DB
//! in that order (FP1 would be the first match if all 3 fingerprints exist in decision DB.
//!
//! Test Actions:
//! • Part 1: Test client A has 3 pre-stored decision as “Always” matching FP1, FP2 & FP3.
//! • Instruct client A to request access to test service that matches FP1. Test system server should
//! invoke UPS for decision check. When policy evaluator is invoked instruct this one to generate FP1,
//! FP2 & FP3.
//! • At dialog display stage select “never” for fingerprint FP3.
//! • Check that finger print FP1 was removed from DB, FP2 remain unchanged, FP3 was replaced with a
//! Never Decision
//! • “Evaluator info is increased by 1.
//!
//! • Part 2: Reset test so it remains in original conditions (3 “always” decisions for FP1, FP2 & FP3
//! in decision DB).
//! • Instruct client A to request access to test service that matches FP1. Test system server should
//! invoke UPS for decision check. When policy evaluator is invoked instruct this one to generate FP1,
//! FP2 &FP3.
//! • At dialog display stage select “always” for fingerprint FP3.
//! • Check that finger print FP1 was removed from DB, FP2 & FP3 remain unchanged.
//! • “Evaluator info is increased by 1.
//!
//! @SYMTestExpectedResults • First matching fingerprint FP1 is deleted from DB as this one is not selected by user in
//! dialog creator stage.
//! • FP3 is replaced with a “never” decision in case 1 but remains unchanged for case 2
//! (“always” decision)
//! • Evaluator info is increased by one in both cases.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-E033
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
//* PART 1
// Client setup of pre-stored 'ALWAYS' decisions using the 3 different fingerprints
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_setup
// Initial check to ensure that DB decisions stored for the 3 fingerprints return the expected result
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_initialCheck
// Check decision database state before force prompting
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_initialDbCheck
// Force the dialog prompt on decision FingerPrint 1, and 'NEVER' decision selected for FingerPrint 3 chosen at Dialog
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_forcePrompt_part1
// Check that decisions within DB have been altered/removed/added as necessary using Database Management Step
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_dbManagementCheck_part1
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
//* PART 2
// Client setup of pre-stored 'ALWAYS' decisions using the 3 different fingerprints
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_setup
// Initial check to ensure that DB decisions stored for the 3 fingerprints return the expected result
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_initialCheck
// Check decision database state before force prompting
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_initialDbCheck
// Force the dialog prompt on decision FingerPrint 1, and 'ALWAYS' decision selected for FingerPrint 3 chosen at Dialog
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_forcePrompt_part2
// Check that decisions within DB have been altered/removed/added as necessary using the Database Management Step
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_overwriterecord_dbManagementCheck_part2
END_TESTCASE SEC-UPS-E033
//! @SYMTestCaseID SEC-UPS-E034
//! @SYMTestCaseDesc Force prompt – multiple fingerprints - new record
//! (force_prompt_multifingerprint_newrecord)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7409 REQ7403
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy file for the test service to be use.
//! • Policy evaluator has the ability to force prompt at run time. Policy evaluator increases by one
//! the value of “evaluator info” every time that a security dialog is prompted for a particular
//! decision in the DB.
//! • Policy evaluator generates 3 fingerprints FP1, FP2 & FP3 which are checked by UPS in decision DB
//! in that order (FP1 would be the first match if all 3 fingerprints exist in decision DB.
//!
//! Test Actions:
//! • Part 1: Test client A has 2 pre-stored decision as “Always” matching FP1 & FP2.
//! • Instruct client A to request access to test service that matches FP1. Test system server should
//! invoke UPS for decision check. When policy evaluator is invoked instruct this one to generate FP1,
//! FP2 &FP3.
//! • At dialog display stage select “never” for fingerprint FP3.
//! • Check that finger print FP1 was removed from DB, FP2 remain unchanged, new FP3 is created in
//! decision DB (with never decision).
//! • “Evaluator info is increased by 1.
//!
//! • Part 2: Reset test so it remains in original conditions (2 “always” decisions for FP1& FP2).
//! • Instruct client A to request access to test service that matches FP1. Test system server should
//! invoke UPS for decision check. When policy evaluator is invoked instruct this one to generate FP1,
//! FP2 &FP3.
//! • At dialog display stage select “always” for fingerprint FP3.
//! • Check that finger print FP1 was removed from DB, FP2 remain unchanged, new FP3 is created in
//! decision DB (with always decision).
//! • “Evaluator info is increased by 1.
//!
//! @SYMTestExpectedResults • In both cases decision related to FP1 are removed from DB.
//! • FP3 is created with a “never” decision in case 1 and with an “always” in cases 2.
//! • Evaluator info is increased by one in both cases.
//!
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-E034
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
//* PART 1
// Client setup of pre-stored 'ALWAYS' decisions using 2 of the 3 fingerprints
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_setup
// Initial check to ensure that DB decisions stored for the 2 fingerprints return the expected result
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_initialCheck
// Check decision database state before force prompting
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_intitalDbCheck
// Force the dialog prompt on decision FingerPrint 1, and 'NEVER' decision selected for FingerPrint 3 chosen at Dialog
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_forcePrompt_part1
// Check that decisions within DB have been altered/removed/added as necessary using the Database Management Step
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_dbManagementCheck_part1
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
//* PART 2
// Client setup of pre-stored 'ALWAYS' decisions using 2 of the 3 fingerprints
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_setup
// Initial check to ensure that DB decisions stored for the 2 fingerprints return the expected result
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_initialCheck
// Check decision database state before force prompting
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_intitalDbCheck
// Force the dialog prompt on decision FingerPrint 1, and 'ALWAYS' decision selected for FingerPrint 3 chosen at Dialog
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_forcePrompt_part2
// Check that decisions within DB have been altered/removed/added as necessary using the Database Management Step
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini force_prompt_multifingerprint_newrecord_dbManagementCheck_part2
END_TESTCASE SEC-UPS-E034
//! @SYMTestCaseID SEC-UPS-E035
//! @SYMTestCaseDesc Invocation of Default Symbian policy evaluator
//! (invoke_default_policy_evaluator)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//!
//! @SYMTestExpectedResults Preconditions:
//! • There is an appropriate policy file for the test service to be use, but in the header of
//! the policy file there is NO mention of policy evaluator.
//! • Note: It is expected that the Symbian policy evaluator will generate a NULL value
//! fingerprint.
//! • Dialog creator specified by policy evaluator is present.
//!
//! Test Actions:
//! • Case 1: Request service to test system server, this one is expected to invoke UPS.
//! • Check that Symbian default policy evaluator was invoked.
//! • When security dialog is invoked select “Always”.
//! • Check that decision is stored correctly.
//!
//! • Case 2: Request service to test system server, this one is expected to invoke UPS.
//! • Check that Symbian default policy evaluator was invoked.
//! • When security dialog is invoked select “never”.
//! • Check that decision is stored correctly.
//!
//! • Extra Checking: Use dumpupsdb.exe tool to export and re-import UPS database, check
//! consistency of imported database.
//!
//! @SYMTestExpectedResults • Two new decisions where created: 1 “never” and 1 ”always” which are expected to have NULL
//! value fingerprints.
//! • Decision database with null value fingerprint can be exported and re-imported correctly.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-E035
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Case 1:
// Client call to UPS invoking the defualt policy evaluator and selecting 'ALWAYS' from the dialog
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Always
// Initial check to ensure that DB contains an ALWAYS decision for the client with a NULL fingerprint
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Alaways_initalCheck
// Database Management Checking to ensure that each value in the decision is what is expected
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Alaways_dbManagementCheck
// Case 2:
// Client call to UPS invoking the defualt policy evaluator and selecting 'NEVER' from the dialog
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Never
// Initial check to ensure that DB contains an additional NEVER decision for the client with a NULL fingerprint
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Never_initalCheck
// Database Management Checking to ensure that each value in the decision is what is expected
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Never_dbManagementCheck
// Database Import/Export Checking:
// Shutdown UPS Server
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// Dump contents of the database
RUN_PROGRAM dumpupsdb.exe -e -db \private\10283558\database\ups.db -f c:\exportdb.db -s
// Delete Existing UPS Database
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Reimport Database Contents
RUN_PROGRAM dumpupsdb.exe -i -db \private\10283558\database\ups.db -f c:\exportdb.db -s
// Delete Temporary Export File
RUN_UTILS DeleteFile c:\exportdb.db
// Re Check the NULL fingerprint Decisions Imported into the Database
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Alaways_initalCheck
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Never_initalCheck
// Final Datbase Management Check to ensure that the values of the Decision are still as expected
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini invoke_default_policy_evaluator_Never_dbManagementCheck
END_TESTCASE SEC-UPS-E035
//! @SYMTestCaseID SEC-INTEG-UPS-E036
//! @SYMTestCaseDesc System Server Security
//! (System_Server_Security)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7408
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • There is an appropriate policy file in the phone that uses SystemServerSecurity
//! property set with different values for individual policies including
//! ESystemServerSecurityPassedOrFailed, ESystemServerSecurityFailed and
//! ESystemServerSecurityPassed.
//! Test Actions:
//! • Case 1: Request set services to a test system server to ensure that an individual
//! policy set with ESystemServerSecurityPassedOrFailed is invoked, use different
//! values for platSecPass parameter in authorize request.
//! • Case 2: : Request set services to a test system server to ensure that an
//! individual policy set with ESystemServerSecurityFailed is invoked, use values
//! for platSecPass parameter as EFalse in authorize request.
//! • Case 3: : Request set services to a test system server to ensure that an
//! individual policy set with ESystemServerSecurityPassed is invoked, use values for
//! platSecPass parameter as ETrue in authorize request.
//!
//! @SYMTestExpectedResults
//! • On each case the appropriate individual policy is invoked.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-E036
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// case 1
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini ESystemServerSecurityPassedOrFailed
// case 2
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini ESystemServerSecurityFailed
// case 3
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini ESystemServerSecurityPassed
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_8
END_TESTCASE SEC-INTEG-UPS-E036
//********************** SEC-UPS-G : NEGATIVE TEST CASES **********************
//! @SYMTestCaseID SEC-INTEG-UPS-G001
//! @SYMTestCaseDesc Policy installation via SWI signed with CA certificate non present in certstore.
//! (policy_file_ca_not_in_store)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7398
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • Policy to be installed does not currently exist in phone
//! • The SIS file to attempt a policy file installation has been signed with
//! a CA certificate is not present in the SWI CA store.
//! Test Actions:
//! • Install sis that installs policy.
//!
//! @SYMTestExpectedResults
//! • SWI should reject SIS file for security reasons.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-G001
RUN_TEST_STEP_RESULT -10254 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini ca_cert_no_stored
END_TESTCASE SEC-INTEG-UPS-G001
//! @SYMTestCaseID SEC-INTEG-UPS-G002
//! @SYMTestCaseDesc Tamper attempt in policy files backup and restore
//! (tampered_policy_file_backup_restore)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ4701
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • There is a set of static policies already present in phone.
//! • The policy files installed via SIS file to be used for test purpose was flagged
//! with “VERIFY” in the package file.
//! Test Actions:
//! • Install policy file flagged with “VERIFY”, populate decisions in database.
//! • Back up policy files.
//! • Delete policy file form private directory.
//! • Try to restore static policies from a backed up archive that is different that the
//! one obtained originally.
//!
//!
//! @SYMTestExpectedResults
//! • Restore operation should fail and tampered archive rejected.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-G002
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_UTILS MakeReadWrite c:\tswi\tbackuprestore\backup10285777.1
RUN_UTILS DeleteFile C:\tswi\tbackuprestore\backup10285777.1
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// installs policy file with VERIFY flag
RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_policies1v2
// populates decisions related to policy just installed
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_populate
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_check
// backs up policy file
RUN_TEST_STEP 100 tups_backuprestore BACKUP z:\tups\integ\scripts\tups_integ.ini backup_policy_file2
// deletes valid backup files
RUN_UTILS MakeReadWrite c:\tswi\tbackuprestore\backup10285777.1
RUN_UTILS DeleteFile c:\tswi\tbackuprestore\backup10285777.1
//copies altered backup files to replace the valid ones.
RUN_UTILS CopyFile z:\tups\integ\tampered_backup\backup10285777.1 c:\tswi\tbackuprestore\backup10285777.1
RUN_UTILS MakeReadWrite c:\tswi\tbackuprestore\backup10285777.1
//Deletes current policy file been used by
RUN_UTILS DeleteFile c:\private\10283558\policies\ups_101f7f1f_ff000001.rsc
// restores policy file
RUN_TEST_STEP_RESULT -1 100 tups_backuprestore RESTORE z:\tups\integ\scripts\tups_integ.ini backup_policy_file2
// uninstall SIS files previously installed
RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini un_install_policies1v2
END_TESTCASE SEC-INTEG-UPS-G002
//! @SYMTestCaseID SEC-UPS-INTEG-G004
//! @SYMTestCaseDesc Non ProtServ capability system server
//! (no_protser_cap)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//! • The system server request prompt to UPS does NOT have ProtServ capability.
//!
//! Test Actions:
//! • Launch “test client” which tries to connect to a system server and use service.
//! • System server asks for a user prompt to the UPS (Authorise method).
//! • UPS should deny the request from system server.
//!
//! @SYMTestExpectedResults • System server receives a KErrPermissionDenied from Ups.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-G004
RUN_TEST_STEP 100 TUPSInteg_1 NonProtServAuthorisation z:\tups\integ\scripts\tups_integ.ini no_protser_cap
// test variation: server has no capabilities but plat sec test passed
// Note: nop decision is stored or dialog prompted.
RUN_TEST_STEP 100 TUPSInteg_1 NonProtServAuthorisation z:\tups\integ\scripts\tups_integ.ini no_protser_cap_b
END_TESTCASE SEC-UPS-INTEG-G004
//! @SYMTestCaseID SEC-UPS-INTEG-G006
//! @SYMTestCaseDesc Non AllFiles capability CA
//! (no_allfiles_cap_ca)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7398
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • Policy to be installed does not currently exist in phone.
//! • The SIS file to attempt a policy file installation has been
//! signed with a CA certificate but this CA certificate has not Installation via SWI of policy file signed with a CA certificate with no All_files capabilities.
//!
//! Test Actions:
//! • Install non CA signed sis that installs policy.
//!
//! @SYMTestExpectedResults • System server receives a KErrSecurityError from SWI.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-G006
RUN_TEST_STEP_RESULT -10254 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini no_allfiles_ca
END_TESTCASE SEC-UPS-INTEG-G006
//! @SYMTestCaseID SEC-UPS-G007
//! @SYMTestCaseDesc Protected deletion and update of decisions.
//! (remove_update_capabilityChecking)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7381
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • Existence of test application 1 without AllFiles capabilities.
//! • Existence of test application 2 without WriteDeviceData capabilities.
//!
//! Test Actions:
//! • Instruct test application 1 to attempt a record update in decision database using UpsManagement.
//! • Instruct test application 2 to attempt a record delete in decision database using UpsManagement.
//!
//! @SYMTestExpectedResults • Test application1 should not be able to update record.
//! • Test application2 should not be able to delete record.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-G007
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with sample inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample2
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample2
// Perform initial checking on sample decisions
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
// * STAGE 1 - UPDATE RECORD CAPABILITY TEST (AllFiles Required)
// Perform attempt to update a decision "WITHOUT" the appropriate capabilities
RUN_TEST_STEP !Result=-46 100 TUPSInteg_writedevice UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_update_capabilityChecking_Update
// Run Database Management Checking for Unauthorised Update
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_update_capabilityChecking_unauthorisedUpdate_DBCheck
// Perform attempt to update a decision "WITH" the appropriate capabilities
RUN_TEST_STEP 100 TUPSInteg_allfiles_readdevice UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_update_capabilityChecking_Update
// Run Database Management Checking for authorised Update
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_update_capabilityChecking_authorisedUpdate_DBCheck
// * STAGE 2 - REMOVE RECORD CAPABILITY TEST (WriteDeviceData Required)
// Perform attempt to remove a decision "WITHOUT" the appropriate capabilities
RUN_TEST_STEP !Result=-46 100 TUPSInteg_allfiles_readdevice UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_update_capabilityChecking_Remove
// Run Database Management Checking for Unauthorised Remove
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_update_capabilityChecking_unauthorisedRemove_DBCheck
// Perform attempt to remove a decision "WITH" the appropriate capabilities
RUN_TEST_STEP 100 TUPSInteg_writedevice UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_update_capabilityChecking_Remove
// Run Database Management Checking for authorised Remove
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini remove_update_capabilityChecking_authorisedRemove_DBCheck
END_TESTCASE SEC-UPS-G007
//! @SYMTestCaseID SEC-UPS-INTEG-G008
//! @SYMTestCaseDesc Policy Evaluator Leaving
//! (policy_evaluator_leave)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//! • Test Client doesn’t have any decision stored in DB related to service about to be used by test
//! client.
//!
//! Test Actions:
//! • Launch “test clients” which tries to use of system servers. System server should request UPS for
//! user security dialog.
//! • When UPS invokes policy evaluator, induce a “leave” in policy evaluator.
//! • UPS should process this leave from policy evaluator and reply with a silent denial to system
//! server.
//!
//! @SYMTestExpectedResults • System server receives a silent denial from UPS.
//!
//! @SYMTestType CIT
//Delete Current Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
START_TESTCASE SEC-UPS-INTEG-G008
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policyevaluator_leave_session
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policyevaluator_leave_always
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policyevaluator_leave_never
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policyevaluator_leave_yes
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policyevaluator_leave_no
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policyevaluator_leaving_concurrent
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policyevaluator_always_concurrent
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policyevaluator_never_concurrent
CONSECUTIVE
END_TESTCASE SEC-UPS-INTEG-G008
//! @SYMTestCaseID SEC-UPS-INTEG-G009
//! @SYMTestCaseDesc Dialog Creator Leaving
//! (dialog_creator_leave)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//! • Test Client doesn’t have any decision stored in DB related to service about to be used by test
//! client.
//!
//! Test Actions:
//! • Launch “test clients” which tries to use of system servers. System server should request UPS for
//! user security dialog.
//! • When UPS invokes dialog, induce a “leave” in dialog creator.
//! • UPS should process this leave from policy evaluator and reply with a silent denial to system
//! server.
//!
//! @SYMTestExpectedResults • System server receives a silent denial from UPS.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-G009
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini dialogcreator_leave_session
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini dialogcreator_leave_always
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini dialogcreator_leave_never
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini dialogcreator_leave_yes
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini dialogcreator_leave_no
CONCURRENT
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini dialogcreator_leaving_concurrent
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini dialogcreator_always_concurrent
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini dialogcreator_never_concurrent
CONSECUTIVE
END_TESTCASE SEC-UPS-INTEG-G009
//! @SYMTestCaseID SEC-UPS-G010
//! @SYMTestCaseDesc Protected reading of decisions
//! (readDecision_capabilityChecking)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7492
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There are some previous decisions stored in decision data base.
//! • Test application does not have ReadDeviceData but it has WriteDeviceData capabilities.
//!
//! Test Actions:
//! • Try to use test application with not ReadDeviceData capabilities to read existing entry from decision DB.
//!
//! @SYMTestExpectedResults • Reading of entry fails, test application is returned error.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-G010
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with sample inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample2
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample2
// Perform initial checking on sample decisions
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample2
// Perform attempt to read a decision "WITHOUT" the appropriate capabilities
RUN_TEST_STEP !Result=-46 100 TUPSInteg_writedevice UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini readDecision_capabilityChecking_dbRead
// Perform attempt to update a decision "WITH" the appropriate capabilities
RUN_TEST_STEP 100 TUPSInteg_readdevice UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini readDecision_capabilityChecking_dbRead
END_TESTCASE SEC-UPS-G010
//********************** SEC-UPS-H : MISCELLANEOUS **********************
//! @SYMTestCaseID SEC-INTEG-UPS-H008
//! @SYMTestCaseDesc Eclipsing of policy via SWI.
//! (policy_file_eclipse)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7393 REQ7498
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • There is a policy file in ROM that matches the UID of the service offered by
//! the “system server”. (uses policy evaluator A)
//! • The policy to be deployed via SWI to eclipse the policy above maps the policy to
//! a different policy evaluator. (uses policy evaluator B). New policy is written in
//! system drive.
//! • There are some decisions stored in DB related to policy file about to be eclipsed.
//! Test Actions:
//! • Launch “test client” which tries to use system servers. System server should invoke
//! UPS to display security dialog.
//! • Select “always” option on security dialog, make sure that “policy evaluator A” was
//! invoked, check that test client can access intended service.
//! • Deploy new policy using SIS file to eclipse existing ROM policy.
//! • Check that previous entries related to policy file were deleted from DB.
//! • Launch the same test client again, the security dialog should be displayed again as the
//! existing “always” decision stored in DB is expected to be deleted.
//! • Select “always” option on security dialog, make sure that “policy evaluator B” was
//! invoked, check that test client can access intended service.
//!
//!
//! @SYMTestExpectedResults
//! • After deployment of new policy a different policy evaluator is invoked for system
//! server.
//! • Related decisions were removed after eclipsing.
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-H008
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini pre_eclipse
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_30
// SIS file eclipses policy file from ROM
RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_eclipse1
// Eclipsing of policy file is expected to remove some decisions
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
// cheks new policy file (on C drive)
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini post_eclipse
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_32
// uninstall last eclipse.
RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini uninstall_eclipse1
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
END_TESTCASE SEC-INTEG-UPS-H008
//! @SYMTestCaseID SEC-INTEG-UPS-H009
//! @SYMTestCaseDesc Policy files backup and restore.
//! (policy_file_backup_restore)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ4701
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions
//! Preconditions:
//! • There is a set of static policies already present in phone.
//! • The policy files installed via SIS file to be used for test purpose was flagged
//! with “VERIFY” in the package file.
//! Test Actions:
//! • Install policy file flagged with “VERIFY”, populate decisions in database.
//! • Back up static policies.
//! • Uninstall the policy file.
//! • Try to restore static policies.
//! • Verify that policy files can be reused correctly, verify correctness of decision
//! database.
//!
//!
//! @SYMTestExpectedResults
//! • Restore operation does not show any problem in operation.
//! • Policy file restored is equal to policy file backed up.
//! @SYMTestType CIT
START_TESTCASE SEC-INTEG-UPS-H009
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_UTILS MakeReadWrite c:\tswi\tbackuprestore\backup10285777.1
RUN_UTILS DeleteFile C:\tswi\tbackuprestore\backup10285777.1
// populate decision database with some inital values.
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
// installs policy file with VERIFY flag
RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini install_policies1v2
// populates decisions related to policy just installed
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_populate
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_check
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
// backs up policy file
RUN_TEST_STEP 100 tups_backuprestore BACKUP z:\tups\integ\scripts\tups_integ.ini backup_policy_file2
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// uninstall the augmentation before trying to restore the policy file
RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini un_install_policies1v2
// restores policy file
RUN_TEST_STEP 100 tups_backuprestore RESTORE z:\tups\integ\scripts\tups_integ.ini backup_policy_file2
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
// uninstall SIS files previously installed
RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini un_install_policies1v2
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
END_TESTCASE SEC-INTEG-UPS-H009
//! @SYMTestCaseID SEC-UPS-INTEG-H010
//! @SYMTestCaseDesc Simple request cancelation
//! (simple_cancel)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7427
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Preconditions:
//! • There is an appropriate policy, policy evaluator and dialog creator that matches the UID of the
//! service offered by the “system server”.
//! • Test Client doesn’t have any decision stored in DB related to service about to be used by test
//! client.
//!
//! Test Actions:
//! • Launch “test clients” which tries to use of system servers. System server should request UPS for
//! user security dialog.
//! • When server requests UPS authorisation, cancel the request using CancelPrompt method.
//!
//! @SYMTestExpectedResults • System server receives a KErrCancel from Ups.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-H010
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini simple_cancel
END_TESTCASE SEC-UPS-INTEG-H010
//! @SYMTestCaseID SEC-UPS-H011
//! @SYMTestCaseDesc Reversible decision DB export by dumpupsdb
//! (Export_Import_DBDumpTool)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7443 REQ7442
//!
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Test Actions:
//! • Populate decision database with a reasonable number of decisions.
//! • Check correct behaviour of UPS with this decision DB.
//! • Stop UPS server running and use “dumpupsdb.exe” to export database to temporary file.
//! • Using dumpupsdb.exe” re-import this temporary file into the decision DB (ups.db).
//! • Check that re-imported decision database contains the same records that the original and UPS
//! behaves normally when using it.
//!
//! @SYMTestExpectedResults • There is no functional difference between the original decision database and the
//! re-imported one.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-H011
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Run the initial data entry step to populate the database with entries
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Export_Import_DBDumpTool_Setup
// Check the newly created Decisions within the UPS Database
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Export_Import_DBDumpTool_Verify
// Shutdown UPS Server
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// Dump contents of the database
RUN_PROGRAM dumpupsdb.exe -e -db \private\10283558\database\ups.db -f c:\exportdb.db -s
RUN_PROGRAM dumpupsdb.exe -e -db \private\10283558\database\ups.db -f c:\exportdba.txt -s
// Delete Existing UPS Database
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Reimport Database Contents
RUN_PROGRAM dumpupsdb.exe -i -db \private\10283558\database\ups.db -f c:\exportdb.db -s
RUN_PROGRAM dumpupsdb.exe -e -db \private\10283558\database\ups.db -f c:\exportdbb.txt -s
// Delete Temporary Export File
RUN_UTILS DeleteFile c:\exportdb.db
// Rerun service requests using Reimported Database
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Export_Import_DBDumpTool_Verify
/////////// repeats same test sequence with (-b) flag in dumpupsdb.exe
// Delete Existing Database
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Run the initial data entry step to populate the database with entries
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Export_Import_DBDumpTool_Setup
// Check the newly created Decisions within the UPS Database
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Export_Import_DBDumpTool_Verify
// Shutdown UPS Server
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// Dump contents of the database
RUN_PROGRAM dumpupsdb.exe -e -db \private\10283558\database\ups.db -f c:\exportdb.db -s -b
// Delete Existing UPS Database
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
// Reimport Database Contents
RUN_PROGRAM dumpupsdb.exe -i -db \private\10283558\database\ups.db -f c:\exportdb.db -s -b
// Delete Temporary Export File
RUN_UTILS DeleteFile c:\exportdb.db
// Rerun service requests using Reimported Database
RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini Export_Import_DBDumpTool_Verify
END_TESTCASE SEC-UPS-H011
//! @SYMTestCaseID SEC-UPS-INTEG-H012
//! @SYMTestCaseDesc UPS sub-session in different thread
//! (ups_session_shared)
//!
//! @SYMPREQ PREQ1262
//! @SYMREQ REQ7446
//! @SYMTestPriority Critical
//! @SYMTestStatus Implemented
//! @SYMTestActions Test Actions:
//! • Open an UPS session from a test server.
//! • Create a new thread and share UPS session with this new thread.
//! • From this new thread create a sub-session to ups, request authorisation to UPS
//! using this sub-session.
//! • Check that UPS behaves like normal and the appropriate decision is stored in DB.
//!
//! @SYMTestExpectedResults • Authorize method for UPS can be used successfully for thread different that
//! the one owning the UPS session.
//!
//! @SYMTestType CIT
START_TESTCASE SEC-UPS-INTEG-H012
// Shutdown UPS Server
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// Delete Existing UPS Database
RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
RUN_TEST_STEP 100 TUPSInteg_minor Multithread z:\tups\integ\scripts\tups_integ.ini ups_session_shared
RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_2
// Shutdown UPS Server
RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
// Dump contents of the database
RUN_PROGRAM dumpupsdb.exe -e -db \private\10283558\database\ups.db -f c:\multithread.db -s -b
END_TESTCASE SEC-UPS-INTEG-H012
//! @SYMTestCaseID SEC-UPS-MISC-0002
//! @SYMTestCaseDesc Clears off properties previously set for policy evaluators and dialog creators.
START_TESTCASE SEC-UPS-MISC-0002
RUN_TEST_STEP 100 TUPSInteg_1 PropertyStep z:\tups\integ\scripts\tups_properties.ini PropertiesToDestroy
END_TESTCASE SEC-UPS-MISC-0002
PRINT Complete_TUPS_Tests