//
// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of "Eclipse Public License v1.0"
// which accompanies this distribution, and is available
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
//
// Initial Contributors:
// Nokia Corporation - initial contribution.
//
// Contributors:
//
// Description:
//
//! @file
//! @SYMTestSuiteName		GRAPHICS-WSERV-Session-PublicApi
//! @SYMScriptTestEnvironment	This test script requires a basic ROM.

///////////////////////////////////////////////////////////////////////////////
// GRAPHICS-WSERV-Session-PublicApi.script
//
// Tests all public elements of the RWsSession class
// as a means of confidence that the API works as expected.
//
// The purpose is to provide a regression test suite of PublishedAll APIs for
// RWsSession related classes.
// Negative testing is performed to confirm that correct errors are returned
// when incorrect parameters are given.
//
// The tests are fully automated.
///////////////////////////////////////////////////////////////////////////////


LOAD_SUITE	T_GraphicsWservAPI


// ****************************************************************************
// RWsSession
// ****************************************************************************



START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0001
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0001
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		RWsSession(): create a RWsSession object by C++ defaut constructor
//!				Uses API elements: RWsSession()
//! @SYMTestActions		simply execute new() a RWsSession to create the object
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	RWsSession object was created without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0001

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0003
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0003
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		Close():Closes the window server session
//!				Uses API elements: RWsSession::Connect & Close
//! @SYMTestActions		Create and connect a RWsSession using pre-constructed file server
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Connect() method returns KErrNone without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0003

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0004
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0004
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		ResourceCount():Gets the number of objects that the server has allocated for that client.
//!				Uses API elements: Connect() ,PurgePointerEvents() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use ResourceCount() to get the number of objects
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	all pointer events waiting remove
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		ResourceCount			GRAPHICS-WSERV-Session-PublicApi-0004-0001-ResourceCount_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0004


START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0005
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0005
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		Flush(): sends all pending commands in the buffer to the window server
//!				Uses API elements: RWsSession::Connnect & Flush & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. To send all pending commands in the buffer to the window server
//!				3. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	sends all pending commands in the buffer to the window server
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		Flush
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0005

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0006
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0006
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetAutoFlush(TBool aState): set auto-flush state of a RWsSession
//!				Uses API elements: RWsSession::Connnect & SetAutoFlush & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. SetAutoFlush to TRUE, and check the return value should be FALSE (previous value the default)
//!				3. SetAutoFlush to FALSE, and check the return value should be TRUE (previous value)
//!				4. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Set auto-flush state without causing panic, and the return value is its previous value as expected if provided
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Session-PublicApi-0006-0001-SetAutoFlush_command003
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Session-PublicApi-0006-0001-SetAutoFlush_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0006

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0007
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0007
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetBufferSizeL(TInt aBufSize): set both the buffer size and maximum buffer size for queuing commands to send to the Windows Server
//!				Uses API elements: RWsSession::Connnect & SetBufferSizeL & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. set minimum buffer size to 640 bytes
//!				3. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the minimum buffer size to be set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetBufferSizeL			GRAPHICS-WSERV-Session-PublicApi-0007-0001-SetBufferSizeL_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0007

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0008
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0008
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetBufferSizeL(TInt aBufSize) & SetMaxBufferSizeL(TInt aMaxBufSize): set both the buffer size and maximum buffer size for queuing commands to send to the Windows Server
//!				Uses API elements: RWsSession::Connnect & SetBufferSizeL & SetMaxBufferSizeL & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. set minimum buffer size to 640 bytes
//!				3. set maximum buffer size to 16384 bytes
//!				4. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	both the minimum buffer size and maximum buffer size for queuing commands to be set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetBufferSizeL			GRAPHICS-WSERV-Session-PublicApi-0008-0001-SetBufferSizeL_command003
		COMMAND		ws		SetMaxBufferSizeL		GRAPHICS-WSERV-Session-PublicApi-0008-0001-SetMaxBufferSizeL_command004
		COMMAND		ws		Close
	END_TEST_BLOCK	
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0008

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0009
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0009
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetDefaultFadingParameters(TUint8 aBlackMap, TUint8 aWhiteMap): set the default fading parameters
//!				SetSystemFaded(TBool aFaded):all windows in the system as faded or unfaded, using the default fading parameters
//!				Uses API elements: RWsSession::Connnect & SetDefaultFadingParameters & SetSystemFaded & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses SetDefaultFadingParameters to set the mapping values of black map fading parameter to 0
//!				3. Uses SetDefaultFadingParameters to set the mapping values of white map fading parameter to 255
//!				4. Uses SetSystemFaded to all windows in the system as faded or unfaded, using the default fading parameters
//!				5. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the mapping values of black map and white fading parameter to be set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetDefaultFadingParameters	GRAPHICS-WSERV-Session-PublicApi-0009-0001-SetDefaultFadingParameters_command003
		COMMAND		ws		SetSystemFaded			GRAPHICS-WSERV-Session-PublicApi-0009-0001-SetSystemFaded_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0009

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0010
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0010
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetDefaultFadingParameters(TUint8 aBlackMap, TUint8 aWhiteMap): set the default fading parameters
//!				SetSystemFaded(TBool aFaded, TUint8 aBlackMap, TUint8 aWhiteMap):set all windows in the system as faded or unfaded, overriding the default fading parameters 
//!				Uses API elements: RWsSession::Connnect & SetDefaultFadingParameters & SetSystemFaded & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses SetDefaultFadingParameters to set the mapping values of black map fading parameter to 0
//!				3. Uses SetDefaultFadingParameters to set the mapping values of white map fading parameter to 255
//!				4. Uses SetSystemFaded to set ETrue to fade all windows
//!				5. Uses SetSystemFaded to set the mapping values of black map fading parameter to 10
//!				6. Uses SetSystemFaded to set the mapping values of black map fading parameter to 244
//!				7. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the default fading parameters and  all windows in the system as faded or unfaded, overriding the default fading parameters to be set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetDefaultFadingParameters	GRAPHICS-WSERV-Session-PublicApi-0010-0001-SetDefaultFadingParameters_command003
		COMMAND		ws		SetSystemFaded			GRAPHICS-WSERV-Session-PublicApi-0010-0001-SetSystemFaded_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0010

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0011
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0011
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetShadowVector(const TPoint &aVector): set the shadow vector
//!				ShadowVector():get the current value of the shadow vector
//!				Uses API elements: RWsSession::Connnect & SetShadowVector & ShadowVector & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses SetShadowVector to set the mapping values of black map fading parameter to 0
//!				3. Uses SetShadowVector to set the mapping values of white map fading parameter to 255
//!				4. Uses ShadowVector to set ETrue to fade all windows
//!				5. Uses ShadowVector to set the mapping values of black map fading parameter to 10
//!				6. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	get the current value of the shadow vector correctly
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetShadowVector			GRAPHICS-WSERV-Session-PublicApi-0011-0001-SetShadowVector_command003
		COMMAND		ws		ShadowVector			GRAPHICS-WSERV-Session-PublicApi-0011-0001-ShadowVector_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0011

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0012
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0012
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorArea(const TPoint &aVector): set the shadow vector
//!				PointerCursorArea():get the current value of the shadow vector
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorArea & PointerCursorArea & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TRect's object to set the horizontal co-ordinate of the left hand side of the rectangle  to -90,
//!					the vertical co-ordinate of the top of the rectangle to -51,the horizontal co-ordinate of the right hand side of the rectangle to 696 and the vertical co-ordinate of the bottom of the rectangle to 312
//!				3. Uses TRect's object as parameter for SetPointerCursorArea to set the area of the screen in which the virtual cursor can be used while in relative mouse mode, for the first screen display mode
//!				4. Uses SetShadowVector to set the mapping values of white map fading parameter to 255
//!				5. Uses PointerCursorArea to set ETrue to fade all windows
//!				6. Uses ShadowVector to set the mapping values of black map fading parameter to 10
//!				7. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the new shadow vector to be set and get the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetPointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0012-0001-SetPointerCursorArea_command003
		COMMAND		ws		PointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0012-0001-PointerCursorArea_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0012

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0013
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0013
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorArea(TInt aScreenSizeMode, const TRect &aArea): set the area of the screen in which the virtual cursor can be used while in relative mouse mode, for a specified screen display mode
//!				PointerCursorArea(TInt aScreenSizeMode) const:get the current value of the shadow vector
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorArea & PointerCursorArea & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TRect's object to set the horizontal co-ordinate of the left hand side of the rectangle  to -90,
//!					the vertical co-ordinate of the top of the rectangle to -51,the horizontal co-ordinate of the right hand side of the rectangle to 696 and the vertical co-ordinate of the bottom of the rectangle to 312
//!				3. Uses TRect's object as parameter for SetPointerCursorArea to set the area of the screen in which the virtual cursor can be used while in relative mouse mode, for a specified screen display mode
//!				4. Set the screen mode to which the new area applies to 0
//!				5. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the new shadow vector to be set and get the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetPointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0013-0001-SetPointerCursorArea_command003
		COMMAND		ws		PointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0013-0001-PointerCursorArea_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0013

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0014
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0014
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorMode(TPointerCursorMode aMode): set the current mode for the pointer cursor
//!				PointerCursorMode(TInt aScreenSizeMode) const:get the current mode for the pointer cursor
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorMode & PointerCursorMode & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TPointerCursorMode's object to define the current cursor mode as EPointerCursorNormal
//!				3. Uses TPointerCursorMode's object as parameter for SetPointerCursorMode to set the current mode for the pointer cursor
//!				4. Uses PointerCursorMode to get the current mode for the pointer cursor
//!				5. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the current mode for the pointer cursor to be set as the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0014-0001-new_command003
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0014-0001-Construct_command004
		COMMAND		ws		SetPointerCursorMode		GRAPHICS-WSERV-Session-PublicApi-0014-0001-SetPointerCursorMode_command005
		COMMAND		ws		PointerCursorMode		GRAPHICS-WSERV-Session-PublicApi-0014-0001-PointerCursorMode_command006
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0014

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0015
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0015
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetClientCursorMode(TPointerCursorMode aMode): set the current mode for the pointer cursor
//!				Uses API elements: RWsSession::Connnect & SetClientCursorMode & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TPointerCursorMode's object to define the current cursor mode as EPointerCursorNormal
//!				3. Uses TPointerCursorMode's object as parameter for SetClientCursorMode to set the current mode for the pointer cursor
//!				4. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the current mode for the pointer cursor to be set as the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetClientCursorMode		GRAPHICS-WSERV-Session-PublicApi-0015-0001-SetClientCursorMode_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0015

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0016
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0016
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorPosition(const TPoint &aPosition): set the pointer cursor position
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorPosition & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TPoint's object to define the pointer cursor X position as 6 and Y position as 0
//!				3. Uses PointerCursorPosition() to get the pointer cursor position
//!				4. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the current mode for the pointer cursor to be set as the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetPointerCursorPosition	GRAPHICS-WSERV-Session-PublicApi-0016-0001-SetPointerCursorPosition_command003
		COMMAND		ws		PointerCursorPosition		GRAPHICS-WSERV-Session-PublicApi-0016-0001-PointerCursorPosition_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0016

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0017
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0017
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetKeyboardRepeatRate(const TTimeIntervalMicroSeconds32 &aInitialTime, const TTimeIntervalMicroSeconds32 &aTime): set the system-wide keyboard repeat rate
//!				Uses API elements: RWsSession::Connnect & SetKeyboardRepeatRate & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Get the current values of the Keyboard Repeat Rate and store it
//!				3. Set values to the Keyboard Repeat Rate
//!				4. Get the Keyboard Repeat Rate and verify that the are the values used in Set
//!				5. Restore the previous values to the Keyboard Repeat Rate
//!				6. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the current mode for the pointer cursor to be set as the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		GetKeyboardRepeatRate		GRAPHICS-WSERV-Session-PublicApi-0017-0001-GetKeyboardRepeatRate_command003
		COMMAND		ws		SetKeyboardRepeatRate		GRAPHICS-WSERV-Session-PublicApi-0017-0001-SetKeyboardRepeatRate_command004
		COMMAND		ws		GetKeyboardRepeatRate		GRAPHICS-WSERV-Session-PublicApi-0017-0001-GetKeyboardRepeatRate_command005
		COMMAND		ws		SetKeyboardRepeatRate		GRAPHICS-WSERV-Session-PublicApi-0017-0001-SetKeyboardRepeatRate_command006
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0017

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0018
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0018
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		Close():Closes the window server session
//!				Uses API elements: RWsSession::Connect & Close
//! @SYMTestActions		Create and connect a RWsSession using pre-constructed file server
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Connect() method returns KErrNone without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetDoubleClick			GRAPHICS-WSERV-Session-PublicApi-0018-0001-SetDoubleClick_command003
		COMMAND		ws		GetDoubleClickSettings		GRAPHICS-WSERV-Session-PublicApi-0018-0001-GetDoubleClickSettings_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0018

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0019
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0019
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		Close():Closes the window server session
//!				Uses API elements: RWsSession::Connect & Close
//! @SYMTestActions		Create and connect a RWsSession using pre-constructed file server
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Connect() method returns KErrNone without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect				GRAPHICS-WSERV-Session-PublicApi-0019-0001-Connect_command002
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0019

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0020
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0020
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		Version(): get the connected WSERV version
//!				Uses API elements: RWsSession::Connnect & Version & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Get the version of the RWsSession connected WSERV
//!				3. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Get WSERV version without causing panic, returned version matches the expected if provided
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		Version				GRAPHICS-WSERV-Session-PublicApi-0020-0001-Version_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0020

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0021
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0021
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		WindowGroupList(RArray< TWindowGroupChainInfo > *aWindowList): get a list of identifier of window group and parent identifier of window group of all window groups in all window server sessions via RArray
//!				Uses API elements: RWsSession::Connnect & WindowGroupList & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. use NumWindowGroups() to get the total number of window groups currently
//!				3. get a list of identifier of window group via RArray
//!				4. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Get WSERV version without causing panic, returned version matches the expected if provided
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0021-0001-WindowGroupList_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0021

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0022
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0022
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		SetDefaultSystemPointerCursor(): set the default system pointer cursor
//!				Uses API elements: RWsSession::Connnect & ClaimSystemPointerCursorList & SetDefaultSystemPointerCursor & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses ClaimSystemPointerCursorList to gain access to the list,
//!				4. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The system pointer cursor should be owned by the UI and fail with error KErrInUse(-14)
//! @SYMTestType		CIT
	START_TEST_BLOCK		10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT		RWsSession	ws
		COMMAND			ws		new
		COMMAND			ws		Connect
		COMMAND	!Error=-14	ws		ClaimSystemPointerCursorList
		COMMAND			ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0022

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0024
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0024
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		WindowGroupList(CArrayFixFlat< TInt > *aWindowList) to get a list of identifiers of all window groups in all window server sessions
//!				SetWindowGroupOrdinalPosition(): set the ordinal position of a window group
//!				Uses API elements: RWsSession::Connnect & WindowGroupList & SetWindowGroupOrdinalPosition & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!						2. Create and construct a window group
//!						3. Set the window group's identifier.
//!						4. Use SetWindowGroupOrdinalPosition to set the window group's position
//!						5. Close the RWindowGroup
//!						6. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	window group ordinal position is set and no panic.
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
        COMMAND		wingrp	new								GRAPHICS-WSERV-Session-PublicApi-0024-0001-new_command003
		COMMAND		wingrp	Construct						GRAPHICS-WSERV-Session-PublicApi-0024-0001-Construct_command004
        COMMAND		wingrp	Identifier
		COMMAND		ws		SetWindowGroupOrdinalPosition	GRAPHICS-WSERV-Session-PublicApi-0024-0001-SetWindowGroupOrdinalPosition_command005
		COMMAND		wingrp	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0024

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0025
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0025
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		1/08/2006
//! @SYMTestCaseDesc 		Gets a list of identifiers of all window groups in all window server sessions
//!				Uses API elements: Connect(),SetAutoFlush(), WindowGroupList(),and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. set the state to TRUE to active the auto flush if it needs to flush
//!				4. use NumWindowGroups() to get the total number of window groups currently
//!				5. use WindowGroupList() to get a list of identifiers of all window groups
//!				6. set the array buffer as CArrayFixFlat< TInt >
//!				7. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Display a list of identifiers of all window groups in all window server sessions
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Session-PublicApi-0025-0001-SetAutoFlush_command004
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		WindowGroupList		GRAPHICS-WSERV-Session-PublicApi-0025-0001-WindowGroupList_command006
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0025

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0026
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0026
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		1/08/2006
//! @SYMTestCaseDesc 		Gets a list of identifiers of all window groups in all window server sessions
//!				Uses API elements: Connect(),SetAutoFlush(),GetWindowGroupClientThreadId(),and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. set the state to TRUE to active the auto flush if it needs to flush
//!				4. use NumWindowGroups() to get the total number of window groups currently
//!				5. use WindowGroupList() to get a list of identifiers of all window groups
//!				6. use GetWindowGroupClientThreadId() to get the thread ID of the client that owns the window group specified by the window group identifier.
//!				7. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Session-PublicApi-0026-0001-SetAutoFlush_command003
		COMMAND		ws		NumWindowGroups
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0026-0001-new_command005
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0026-0001-Construct_command006
		COMMAND		ws		NumWindowGroups			GRAPHICS-WSERV-Session-PublicApi-0026-0001-NumWindowGroups_command007
		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0026-0001-WindowGroupList_command008
		COMMAND		ws		GetWindowGroupClientThreadId	GRAPHICS-WSERV-Session-PublicApi-0026-0001-GetWindowGroupClientThreadId_command009
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK

END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0026

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0027
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0027
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		1/08/2006
//! @SYMTestCaseDesc 		Gets a list of identifiers of all window groups in all window server sessions
//!				Uses API elements: Connect(),SetAutoFlush(),FindWindowGroupIdentifier(),and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. set the state to TRUE to active the auto flush if it needs to flush
//!				4. use FindWindowGroupIdentifier() to get all window groups whose names match a given string
//!				5. use '*e*' as match string
//!			  	6. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Session-PublicApi-0027-0001-SetAutoFlush_command004
		COMMAND		ws		FindWindowGroupIdentifier	GRAPHICS-WSERV-Session-PublicApi-0027-0001-FindWindowGroupIdentifier_command005
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0027

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0028
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0028
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		1/08/2006
//! @SYMTestCaseDesc 		Gets the total number of window groups currently running in the window server.
//!				Uses API elements: Connect(), NumWindowGroups(),and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use NumWindowGroups() to get the total number of window groups currently
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Display the total number of window groups
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0028

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0029
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0029
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		1/08/2006
//! @SYMTestCaseDesc 		SetFocusScreen(TInt aScreenNumber):Sets the focus screen
//!				GetFocusScreen():Gets focus screen
//!				Uses API elements: Connect(),SetFocusScreen(), GetFocusScreen(),and Close()
//! @SYMTestActions		1. Uses new() to create a RWsSession object
//!				2. Uses Connect() to make a connection with window server
//!				3. Uses SetFocusScreen to set focus screen 
//!				4. Uses GetFocusScreen() to get the focus screen
//!				5. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	return KErrNone while SetFocusScreen and get the screen number of current focus screen 
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetFocusScreen			GRAPHICS-WSERV-Session-PublicApi-0029-0001-SetFocusScreen_command004
		COMMAND		ws		GetFocusScreen			GRAPHICS-WSERV-Session-PublicApi-0029-0001-GetFocusScreen_command005
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0029

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0030
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0030
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		1/08/2006
//! @SYMTestCaseDesc 		Set up and get the background color
//!				Uses API elements: Connect() ,SetAutoFlush(),SetBackgroundColor(),GetBackgroundColor()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. set the state to TRUE to active the auto flush if it needs to flush
//!				4. set the background color as Red(255),Green(245)and Blue(245)
//!				5. get the background color to verify
//!				6. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Set auto-flush state without causing panic, and the return the value of background color  as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Session-PublicApi-0030-0001-SetAutoFlush_command004
		COMMAND		ws		SetBackgroundColor		GRAPHICS-WSERV-Session-PublicApi-0030-0001-SetBackgroundColor_command005
		COMMAND		ws		GetBackgroundColor		GRAPHICS-WSERV-Session-PublicApi-0030-0001-GetBackgroundColor_command006
		COMMAND		ws		GetDefaultOwningWindow		GRAPHICS-WSERV-Session-PublicApi-0030-0001-GetDefaultOwningWindow_command007
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0030

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0031
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0031
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		Set up and get the background color
//!				Uses API elements: Connect() ,NumWindowGroups()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use NumWindowGroups() to get the total number of window groups currently running in the window server and include all the groups running in all sessions
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	return the total number of window groups currently running as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0031-0001-WindowGroupList_command005
		COMMAND		ws		GetWindowGroupOrdinalPriority	GRAPHICS-WSERV-Session-PublicApi-0031-0001-GetWindowGroupOrdinalPriority_command006
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0031

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0032
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0032
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		Set up and get the background color
//!				Uses API elements: Connect() ,SetBufferSizeL()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use SetBufferSizeL() to set the buffer size and maximum buffer size for
//!					queuing commands to send to the Windows Server
//!				4. use NumWindowGroups() to get the total number of window groups currently
//!				5. use WindowGroupList() to get a list of identifiers of all window groups in all window server	sessions with RArray
//!				6. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	allocate the required memory without any leave code or panic code
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetBufferSizeL			GRAPHICS-WSERV-Session-PublicApi-0032-0001-SetBufferSizeL_command004
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0032-0001-WindowGroupList_command006
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0032

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0033
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0033
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		Set up and get the background color
//!				Uses API elements: Connect() ,SetMaxBufferSizeL()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use SetMaxBufferSizeL() to set the buffer size and maximum buffer size for
//!					queuing commands to send to the Windows Server
//!		   		4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	allocate the required memory without any leave code or panic code
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetMaxBufferSizeL		GRAPHICS-WSERV-Session-PublicApi-0033-0001-SetMaxBufferSizeL_command004
		COMMAND		ws		Close
	END_TEST_BLOCK

END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0033

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0038
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0038
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		RequestOffEvents(TBool aOn, RWindowTreeNode *aWin=0):Requests the window server to send OFF events to a window
//!				Uses API elements: Connect() ,RequestOffEvents()and Close()
//! @SYMTestActions		1.	use new() to create a RWsSession object
//!				2.	use Connect() to make a connection with window server
//!				3.	new and Construct a RWindowGroup within the RWsSession
//!				4.	Execute RequestOffEvents() with FALSE to make WSERV switch back to powering down the machine itself
//!				5.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	allocate the required memory without any leave code or panic code
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0038-0001-new_command01
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0038-0001-Construct_command02
		COMMAND		ws		RequestOffEvents		GRAPHICS-WSERV-Session-PublicApi-0038-0001-RequestOffEvents_command003
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0038

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0039
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0039
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		RequestOffEvents(TBool aOn, RWindowTreeNode *aWin=0):Requests the window server to send OFF events to a window
//!				Uses API elements: Connect() ,RequestOffEvents()and Close()
//! @SYMTestActions		1.	use new() to create a RWsSession object
//!				2.	use Connect() to make a connection with window server
//!				3.	new and Construct a RWindowGroup within the RWsSession
//!				4.	Execute RequestOffEvents() with TRUE to request WSERV to send OFF events to the RWindowGroup
//!				5.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Error KErrAlreadyExists(-11) expected as the system should already have a window assigned for off events
//! @SYMTestType		CIT
	START_TEST_BLOCK		10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT		RWsSession	ws
		CREATE_OBJECT		RWindowGroup	wingrp
		COMMAND			ws		new
		COMMAND			ws		Connect
		COMMAND			wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0039-0001-new_command01
		COMMAND			wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0039-0001-Construct_command02
		COMMAND !Error=-11	ws		RequestOffEvents		GRAPHICS-WSERV-Session-PublicApi-0039-0001-RequestOffEvents_command003
		COMMAND			wingrp		Close
		COMMAND			ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0039

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0040
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0040
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		NumWindowGroups(TInt aPriority):Gets the number of window groups of a given window group priority running in all sessions in the window server.
//!				Uses API elements: Connect() ,NumWindowGroups()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use NumWindowGroups() to get the number of window groups of a given window group priority running in all sessions
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		NumWindowGroups			GRAPHICS-WSERV-Session-PublicApi-0040-0001-NumWindowGroups_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0040

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0041
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0041
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		WindowGroupList(TInt aPriority, CArrayFixFlat< TInt > *aWindowList):							Lists the number of window groups of a given window group priority running in all window server sessions
//!				GetWindowGroupHandle(TInt aIdentifier):Gets the handle of the window specified by the window group identifier
//!				Uses API elements: Connect() ,WindowGroupList(),GetWindowGroupHandle() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use NumWindowGroups() to get the total number of window groups currently
//!				4. use WindowGroupList() to Lists the number of window groups of a given window group priority
//!				5. use GetWindowGroupHandle() to get the handle of the window specified by the window group identifier
//!				6. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0041-0001-new_command003
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0041-0001-Construct_command004
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0041-0001-WindowGroupList_command006
		COMMAND		ws		GetWindowGroupHandle		GRAPHICS-WSERV-Session-PublicApi-0041-0001-GetWindowGroupHandle_command007
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0041

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0044
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0044
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		FetchMessage(TUid &aUid, TPtr8 &aParams, const TWsEvent &aMessageEvent):causes a flush of the window server buffer
//!				Uses API elements: Connect() ,FetchMessage()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use FetchMessage() to cause a flush of the window server buffer
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Error KErrNotFound(-1) as no events have been triggered
//! @SYMTestType		CIT
	START_TEST_BLOCK		10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT		RWsSession	ws
		COMMAND			ws		new
		COMMAND			ws		Connect
		COMMAND 		ws		FetchMessage
		COMMAND			ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0044

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0045
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0045
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		SetHotKey(THotKey aType,TUint aKeyCode,TUint aModifierMask,TUint aModifier):sets the hot keys
//!				Uses API elements: Connect() ,SetHotKey()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use SetHotKey() to set the hot key to EHotKeyIncBrightness and key code to EKeyLeftAlt
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	hot key and key code can be set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetHotKey			GRAPHICS-WSERV-Session-PublicApi-0045-0001-SetHotKey_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0045

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0046
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0046
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		ClearHotKeys(THotKey aType):Clears all mappings for the specified hotkey, including the default mapping
//!				Uses API elements: Connect() ,ClearHotKeys()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use ClearHotKeys() to clear all mappings
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	clear all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		ClearHotKeys			GRAPHICS-WSERV-Session-PublicApi-0046-0001-ClearHotKeys_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0046

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0047
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0047
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		RestoreDefaultHotKey(THotKey aType):Restores the default mapping for a hot key
//!				Uses API elements: Connect() ,RestoreDefaultHotKey()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use RestoreDefaultHotKey() to restore the default mapping
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		RestoreDefaultHotKey		GRAPHICS-WSERV-Session-PublicApi-0047-0001-RestoreDefaultHotKey_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0047

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0048
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0048
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		RestoreDefaultHotKey(TEventModifier aModifier, TModifierState aState):sets the state of the modifier keys
//!				Uses API elements: Connect() ,SetModifierState()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use SetModifierState() to set the state of the modifier keys
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetModifierState		GRAPHICS-WSERV-Session-PublicApi-0048-0001-SetModifierState_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0048

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0049
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0049
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetDefaultOwningWindow():gets the identifier of the current default owning window group
//!				Uses API elements: Connect() ,GetDefaultOwningWindow()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetDefaultOwningWindow() to get the identifier of the current default owning window group
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		GetDefaultOwningWindow		GRAPHICS-WSERV-Session-PublicApi-0049-0001-GetDefaultOwningWindow_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0049

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0050
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0050
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetDefaultOwningWindow(TInt aScreenNumber):gets the identifier of the current default owning window group on a specified screen
//!				Uses API elements: Connect() ,GetDefaultOwningWindow()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetDefaultOwningWindow() to get the identifier of the current default owning window group on a specified screen
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		GetDefaultOwningWindow		GRAPHICS-WSERV-Session-PublicApi-0050-0001-GetDefaultOwningWindow_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0050

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0051
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0051
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		NumWindowGroups(TInt aScreenNumber, TInt aPriority):gets the number of window groups of a given window group priority running on a specified screen
//!				Uses API elements: Connect() ,NumWindowGroups()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use NumWindowGroups() to get the number of window groups of a given window group priority running on a specified screen
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Number of window groups of priority on the specified screen
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		NumWindowGroups			GRAPHICS-WSERV-Session-PublicApi-0051-0001-NumWindowGroups_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0051

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0052
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0052
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetFocusWindowGroup(TInt aScreenNumber):gets the identifier of the window group on a specified screen that currently has the keyboard focus
//!				Uses API elements: Connect() ,GetFocusWindowGroup()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetFocusWindowGroup() to get the identifier of the window group on a specified screen that currently has the keyboard focus
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	return the identifier of window group with keyboard focus
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Session-PublicApi-0052-0001-new_command003
		COMMAND		scrdev		Construct
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0052-0001-new_command005
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0052-0001-Construct_command006
		COMMAND		ws		GetFocusWindowGroup		GRAPHICS-WSERV-Session-PublicApi-0052-0001-GetFocusWindowGroup_command007
		COMMAND		wingrp		Close
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0052

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0053
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0053
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		WindowGroupList(CArrayFixFlat< TInt > *aWindowList, TInt aScreenNumber, TInt aPriority=EAllPriorities):Lists the number of window groups of a given window group priority running on a specified screen
//!				Uses API elements: Connect() ,WindowGroupList()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use NumWindowGroups() to get the total number of window groups currently
//!				4. use WindowGroupList() to get the number of window groups of a given window group priority
//!				5. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	return KErrNone from calling the method WindowGroupList
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0053-0001-WindowGroupList_command005
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0053

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0054
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0054
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		20/09/2006
//! @SYMTestCaseDesc 		SetCustomTextCursor(TInt aIdentifier, const TArray< TSpriteMember > &aSpriteMemberArray, TUint aSpriteFlags, TCustomTextCursorAlignment aAlignment):adds a custom text cursor to the server's list of cursors
//!				Uses API elements: RWsSession::Connect & Close, CFbsBitmap::Load
//! @SYMTestActions		1.	use new() to create a RWsSession object
//!				2.	use Connect() to make a connection with window server
//!				3.	new and Load() a CFbsBitmap to construct custom text cursor
//!	   			4.	use SetCustomTextCursor() to add custom text cursor of identifier 100, flag=ESpriteNoShadows, alignment=ECustomTextCursorAlignTop
//!	   				with one SpriteMember of the specified bitmap, drawmode=EDrawModeAND, and offset (5,5)
//!				5.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	call SetCustomTextCursor() without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CFbsBitmap	fbsbmp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		fbsbmp		new
		COMMAND		fbsbmp		Load				GRAPHICS-WSERV-Session-PublicApi-0054-0001-Load_command001
		COMMAND		ws		SetCustomTextCursor		GRAPHICS-WSERV-Session-PublicApi-0054-0001-SetCustomTextCursor_command002
		COMMAND		fbsbmp	~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0054

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0055
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0055
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetPriorityKey(TWsPriorityKeyEvent &aEvent):Gets the completed priority key event from the window server session
//!				PriorityKeyReady(TRequestStatus *aStat):Requests priority key events from the window server
//!				Uses API elements: Connect() ,GetPriorityKey()and Close()
//! @SYMTestActions		1.	Create and construct a RWindowGroup to receive the priority key event
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a RWindowGroup within the RWsSession
//!				2.	Use CaptureKey() to request key capture of RWindowGroup for the specified key, e.g. keycode=EKeyF1
//!				3.	Use AddPriorityKey() to add a priority key of the RWindowGroup, e.g. keycode=EKeyF1
//!				4.	Use PriorityKeyReady() to request priority key events from WSERV
//!				5.	Use SimulateKeyEvent() to simulate a key event (with the same keycode and modifier of the specified priority key)
//!				6.	Use Flush() to send all pending commands in the buffer to WSERV
//!				7.	Use OUTSTANDING to wait for a priority key event
//!				8.	when event obtained, execute GetPriorityKey to retrieve the priority key event
//!				9.	Use Key() to get and check if the returned key event is the same as expected
//!				10.	Close and destruct all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	PriorityKeyReady() and GetPriorityKey() called without causing panic, and receive the priority key event as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	TWsPriorityKeyEvent	we
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Session-PublicApi-0055-0001-new_command04
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Session-PublicApi-0055-0001-Construct_command05
		COMMAND		wingrp		CaptureKey		GRAPHICS-WSERV-Session-PublicApi-0055-0001-CaptureKey_command006
		COMMAND		wingrp		AddPriorityKey		GRAPHICS-WSERV-Session-PublicApi-0055-0001-AddPriorityKey_command007
		COMMAND		ws		PriorityKeyReady
		COMMAND		ws		SimulateKeyEvent	GRAPHICS-WSERV-Session-PublicApi-0055-0001-SimulateKeyEvent_command008
		COMMAND		ws		Flush
		OUTSTANDING
		COMMAND		we		new
		COMMAND		ws		GetPriorityKey		GRAPHICS-WSERV-Session-PublicApi-0055-0001-GetPriorityKey_command009
		COMMAND		we		Key			GRAPHICS-WSERV-Session-PublicApi-0055-0001-Key_command010
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0055

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0056
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0056
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetPriorityKey(TWsPriorityKeyEvent &aEvent):Gets the completed priority key event from the window server session
//!				PriorityKeyReadyCancel():Cancels a priority key event request
//!				Uses API elements: Connect() ,GetPriorityKey(),PriorityKeyReady(),PriorityKeyReadyCancel()  and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetPriorityKey() to get the completed priority key event
//!				4. use PriorityKeyReady() to request priority key events
//!				5. use PriorityKeyReadyCancel() to cancel a priority key event request
//!				6. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	KErrCancel(-3)
//! @SYMTestType		CIT
	START_TEST_BLOCK		10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT		RWsSession	ws
		COMMAND			ws		new
		COMMAND			ws		Connect
		COMMAND !AsyncError=-3	ws		PriorityKeyReady	
		COMMAND			ws		PriorityKeyReadyCancel
		OUTSTANDING
		COMMAND			ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0056

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0057
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0057
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetRedraw(TWsRedrawEvent &aEvent):Gets the redraw event from the session.
//!				Uses API elements: RWsSession::Connect & RedrawReady & GetRedraw, RWindowGroup::Construct, RWindowBase::Activate, RWindow::Construct & SetExtent, TWsRedrawEvent::Rect
//! @SYMTestActions		1.	Create and construct a RWindow to receive the redraw event
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a RWindowGroup within the RWsSession
//!					1.3	New and construct a RWindow as the child of the RWindowGroup
//!					1.4	Set the extent of RWindow to (5,6) and height=15, width=10
//!					1.5	Activate RWindow to display and enable it to receive event
//!				2.	Use RedrawReady to request redraw events from WSERV
//!				3.	Use OUTSTANDING to wait for a redraw event
//!				4.	when event obtained, exexute GetRedraw to retrieve the redraw event
//!				5.	Execute Rect() to get and check if the returned rectangle is the same as expected
//!				6.	Close and destruct all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	RedrawReady() and GetRedraw() called without causing panic, and receive redraw event as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		CREATE_OBJECT	TWsRedrawEvent	we
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Session-PublicApi-0057-0001-new_command01
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Session-PublicApi-0057-0001-Construct_command02
		COMMAND		win		new			GRAPHICS-WSERV-Session-PublicApi-0057-0001-new_command01
		COMMAND		win		Construct		GRAPHICS-WSERV-Session-PublicApi-0057-0001-Construct_command003
		COMMAND		win		SetExtent		GRAPHICS-WSERV-Session-PublicApi-0057-0001-SetExtent_command004
		COMMAND		win		Activate
		COMMAND		ws		RedrawReady
		OUTSTANDING
		COMMAND		we		new
		COMMAND		ws		GetRedraw		GRAPHICS-WSERV-Session-PublicApi-0057-0001-GetRedraw_command005
		COMMAND		we		Rect			GRAPHICS-WSERV-Session-PublicApi-0057-0001-Rect_command006
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0057

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0058
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0058
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetRedraw(TWsRedrawEvent &aEvent):Gets the redraw event from the session.
//!				RedrawReady(TRequestStatus *aStat):Requests redraw events from the window server
//!				RedrawReadyCancel():Cancels a redraw event request
//!				Uses API elements: Connect() ,RedrawReady(),GetRedraw(),RedrawReadyCancel()  and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use RedrawReady() to request redraw events from the window server
//!				4. use RedrawReadyCancel() to cancel a redraw event request
//!				5. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	KErrCancel(-3)
//! @SYMTestType		CIT
	START_TEST_BLOCK		10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT		RWsSession	ws
		COMMAND			ws		new
		COMMAND			ws		Connect
		COMMAND !AsyncError=-3	ws		RedrawReady
		COMMAND			ws		RedrawReadyCancel
		OUTSTANDING
		COMMAND			ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0058

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0059
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0059
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		FindWindowGroupIdentifier(TInt aPreviousIdentifier, TThreadId aThreadId):Gets the identifiers of window groups belonging to a client 
//!				Uses API elements: Connect() ,WindowGroupList(),GetWindowGroupHandle(),FindWindowGroupIdentifier() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use NumWindowGroups() to get the total number of window groups currently
//!				4. use WindowGroupList() to Lists the number of window groups of a given window group priority
//!				5. use GetWindowGroupHandle() to get the handle of the window specified by the window group identifier
//!				6. use FindWindowGroupIdentifier() to get the id of window group belonging to a client
//!				7. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	return next window group identifier after the one identified by aPreviousIdentifier 
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0059-0001-new_command003
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0059-0001-Construct_command004
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0059-0001-WindowGroupList_command006
		COMMAND		ws		GetWindowGroupHandle		GRAPHICS-WSERV-Session-PublicApi-0059-0001-GetWindowGroupHandle_command007
		COMMAND		ws		FindWindowGroupIdentifier	GRAPHICS-WSERV-Session-PublicApi-0059-0001-FindWindowGroupIdentifier_command008
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0059

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0061
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0061
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		10/04/2007
//! @SYMTestCaseDesc 		Clear the redraw store for all windows in the system
//!				Uses API elements: Connect(), ClearAllRedrawStores()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use ClearAllRedrawStores() to clear the redraw store for all windows
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Clear the redraw store for all windows in the system without any leave code or panic code
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		ClearAllRedrawStores
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0061

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0063
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0063
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		10/04/2007
//! @SYMTestCaseDesc 		Releases the system pointer cursor list and deletes all the entries in it
//!				Uses API elements: Connect(), FreeSystemPointerCursorList() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use FreeSystemPointerCursorList() to release the system pointer cursor list and deletes all the entries in it
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Releases the system pointer cursor list and deletes all the entries in it
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		FreeSystemPointerCursorList
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0063

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0064
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0064
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		10/04/2007
//! @SYMTestCaseDesc 		Sets the mode used to control process priorities to the desired mode
//!				Uses API elements: Connect(), ComputeMode() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use ComputeMode() to set the mode used to control process priorities
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Sets the mode used to control process priorities to the desired mode
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		ComputeMode		GRAPHICS-WSERV-Session-PublicApi-0064-0001-ComputeMode_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0064

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0066
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0066
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		10/04/2007
//! @SYMTestCaseDesc 		Send all pending commands in the buffer to the window server
//!				Uses API elements: Connect(), Flush() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use Flush() to send all pending commands in the buffer to the window server
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	All pending commands in the buffer are sent to the window server
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		Flush
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0066

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0068
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0068
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		10/04/2007
//! @SYMTestCaseDesc 		Get the identifier of the window group that currently has the keyboard focus
//!				Uses API elements: Connect(), GetFocusWindowGroup() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetFocusWindowGroup() to get the identifier of the window group that currently has the keyboard focus
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The identifier we obtained should match the expected ID
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0068-0001-new_command003
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0068-0001-Construct_command004
		COMMAND		ws		GetFocusWindowGroup
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0068

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0069
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0069
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		20/05/2007
//! @SYMTestCaseDesc 		Get the state of the modifier keys
//!				Uses API elements: Connect(), GetModifierState() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetModifierState() to get the state of the modifier keys
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The modifier state we obtained should match the expected state
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		GetModifierState
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0069

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0070
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0070
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		20/05/2007
//! @SYMTestCaseDesc 		Get the list of available colour modes
//!				Uses API elements: Connect(), GetColorModeList() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetColorModeList() to get the list of available colour modes
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Get the list of available colour modes and the number of available colour modes should match the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		GetColorModeList		GRAPHICS-WSERV-Session-PublicApi-0070-0001-GetColorModeList_command003
		COMMAND		ws		GetColorModeList		GRAPHICS-WSERV-Session-PublicApi-0070-0001-GetColorModeList_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0070

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0071
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0071
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		22/05/2007
//! @SYMTestCaseDesc 		Get the number of colours available in the richest supported colour mode, and the number of grays available in the richest gray mode, then return the default display mode
//!				Uses API elements: Connect(), GetDefModeMaxNumColors() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetDefModeMaxNumColors() to get the number of colours available in the richest supported colour mode, and the number of grays available in the richest gray mode, then return the default display mode
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The number of colours/grays available in the richest supported mode should match the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		GetDefModeMaxNumColors		GRAPHICS-WSERV-Session-PublicApi-0071-0001-GetDefModeMaxNumColors_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0071

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0073
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0073
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		23/05/2007
//! @SYMTestCaseDesc 		Get the heap count
//!				Uses API elements: Connect(), HeapCount() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use HeapCount() to get the heap count
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The heap count should be greater than expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		HeapCount			GRAPHICS-WSERV-Session-PublicApi-0073-0001-HeapCount_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0073

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0075
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0075
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		23/05/2007
//! @SYMTestCaseDesc 		Get the pointer cursor area for the specified screen display mode
//!				Uses API elements: Connect(), PointerCursorArea() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use PointerCursorArea() to get the pointer cursor area for the specified screen display mode
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The pointer cursor area we obtained should match the expected TRect
//! @SYMTestType		CIT

	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		PointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0075-0001-PointerCursorArea_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0075

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0076
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0076
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		23/05/2007
//! @SYMTestCaseDesc 		Get the pointer cursor area for the first screen display mode
//!				Uses API elements: Connect(), PointerCursorArea() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use PointerCursorArea() to get the pointer cursor area for the first screen display mode
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The pointer cursor area we obtained should match the expected TRect
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		PointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0076-0001-PointerCursorArea_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0076

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0077
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0077
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		23/05/2007
//! @SYMTestCaseDesc 		Get the current mode for the pointer cursor
//!				Uses API elements: Connect(), PointerCursorMode() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use PointerCursorMode() to get the current mode for the pointer cursor
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The pointer cursor mode we obtained should match the expected mode
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		PointerCursorMode		GRAPHICS-WSERV-Session-PublicApi-0077-0001-PointerCursorMode_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0077

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0078
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0078
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		23/05/2007
//! @SYMTestCaseDesc 		Get the pointer cursor position
//!				Uses API elements: Connect(), PointerCursorPosition() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use PointerCursorPosition() to get the current mode for the pointer cursor
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Get the pointer cursor position and display it. The position should stay at the origin (0,0) at the beginning
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		PointerCursorPosition		GRAPHICS-WSERV-Session-PublicApi-0078-0001-PointerCursorPosition_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0078

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0079
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0079
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		24/05/2007
//! @SYMTestCaseDesc 		Prepare for switch off
//!				Uses API elements: Connect(), PrepareForSwitchOff() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use PrepareForSwitchOff() to stop the window server heart beat timer if running
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	This stops the window server heart beat timer if running
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		PrepareForSwitchOff
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0079

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0080
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0080
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		24/05/2007
//! @SYMTestCaseDesc 		Allows the window server client to enable or disable logging of window server events. For logging to work, the wsini.ini file has
//!				to specify the type of logging required and the DLLs for that type of logging must have been correctly installed.
//!				Uses API elements: Connect(), LogCommand() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use LogCommand() to set the logging status
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The logging status is set to desired mode
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		LogCommand			GRAPHICS-WSERV-Session-PublicApi-0080-0001-LogCommand_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0080

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0081
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0081
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		24/05/2007
//! @SYMTestCaseDesc 		Adds a message to the window server debug log if one is currently in operation
//!				Uses API elements: Connect(), LogMessage() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use LogMessage() to add a log message
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The message is added to the window server debug log
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		LogMessage			GRAPHICS-WSERV-Session-PublicApi-0081-0001-LogMessage_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0081

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0082
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0082
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetColorModeList(TInt aScreenNumber, CArrayFixFlat< TInt > *aModeList) const:Gets the list of available colour modes on a particular screen
//!				Uses API elements: Connect() ,GetColorModeList() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetColorModeList() to get the list of colour modes
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		NumberOfScreens		GRAPHICS-WSERV-Session-PublicApi-0082-0001-NumberOfScreens_command004
		COMMAND		ws		GetFocusScreen		GRAPHICS-WSERV-Session-PublicApi-0082-0001-GetFocusScreen_command005
		COMMAND		ws		GetColorModeList	GRAPHICS-WSERV-Session-PublicApi-0082-0001-GetColorModeList_command006
		COMMAND		ws		GetColorModeList	GRAPHICS-WSERV-Session-PublicApi-0082-0001-GetColorModeList_command007
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0082

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0083
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0083
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetColorModeList(TInt aScreenNumber, CArrayFixFlat< TInt > *aModeList) const:Gets the list of available colour modes on a particular screen
//!				Uses API elements: Connect() ,GetColorModeList() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetColorModeList() to get the list of colour modes
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws	
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		GetColorModeList	GRAPHICS-WSERV-Session-PublicApi-0083-0001-GetColorModeList_command004
		COMMAND		ws		GetColorModeList	GRAPHICS-WSERV-Session-PublicApi-0083-0001-GetColorModeList_command005
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0083

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0085
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0085
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		PurgePointerEvents():Removes all pointer events waiting to be delivered to this session
//!				Uses API elements: Connect() ,PurgePointerEvents() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use PurgePointerEvents() to remove all pointer events waiting
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	all pointer events waiting remove
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI			\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		PurgePointerEvents
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0085

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0086
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0086
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		GetDefModeMaxNumColors(TInt aScreenNumber, TInt &aColor, TInt &aGray):Gets the number of colours available in the richest supported colour mode on the specified screen.
//!				Uses API elements: Connect() ,PurgePointerEvents() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use GetDefModeMaxNumColors() to get the number of colours available in the richest supported colour mode
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	return the default display mode
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI			\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		GetDefModeMaxNumColors			GRAPHICS-WSERV-Session-PublicApi-0086-0001-GetDefModeMaxNumColors_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0086

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0087
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0087
//! @SYMAPI			RWsSession
//! @SYMAuthor			Felix Chen
//! @SYMCreationDate		10/04/2007
//! @SYMTestCaseDesc 		Sets the mode used to control process priorities to the desired mode
//!				Uses API elements: Connect(), ComputeMode() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use ComputeMode() to set the mode used to control process priorities
//!				4. Close RWsSession object by using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Sets the mode used to control process priorities to the desired mode
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		ComputeMode		GRAPHICS-WSERV-Session-PublicApi-0087-0001-ComputeMode_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0087

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0088
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0088
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		FindWindowGroupIdentifier(TInt aPreviousIdentifier, TThreadId aThreadId):Gets the identifiers of window groups belonging to a client 
//!				Uses API elements: Connect() ,WindowGroupList(),GetWindowGroupHandle(),FindWindowGroupIdentifier() and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use NumWindowGroups() to get the total number of window groups currently
//!				4. use WindowGroupList() to Lists the number of window groups of a given window group priority
//!				5. use GetWindowGroupHandle() to get the handle of the window specified by the window group identifier
//!				6. use FindWindowGroupIdentifier() to get the id of window group belonging to a client
//!				7. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	return next window group identifier after the one identified by aPreviousIdentifier 
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0088-0001-new_command003
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0088-0001-Construct_command004
		COMMAND		ws		NumWindowGroups
		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0088-0001-WindowGroupList_command006
		COMMAND		ws		GetWindowGroupHandle		GRAPHICS-WSERV-Session-PublicApi-0088-0001-GetWindowGroupHandle_command007
		COMMAND		ws		FindWindowGroupIdentifier	GRAPHICS-WSERV-Session-PublicApi-0088-0001-FindWindowGroupIdentifier_command008
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0088


START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0090
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0090
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorArea(TInt aScreenSizeMode, const TRect &aArea): set the area of the screen in which the virtual cursor can be used while in relative mouse mode, for a specified screen display mode
//!				PointerCursorArea(TInt aScreenSizeMode) const:get the current value of the shadow vector
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorArea & PointerCursorArea & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TRect's object to set the horizontal co-ordinate of the left hand side of the rectangle  to -90,
//!					the vertical co-ordinate of the top of the rectangle to -51,the horizontal co-ordinate of the right hand side of the rectangle to 696 and the vertical co-ordinate of the bottom of the rectangle to 312
//!				3. Uses TRect's object as parameter for SetPointerCursorArea to set the area of the screen in which the virtual cursor can be used while in relative mouse mode, for a specified screen display mode
//!				4. Set the screen mode to which the new area applies to 0
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The test result !PanicCode=54 !PanicString=WSERV occure and is catched
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetPointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0090-0001-SetPointerCursorArea_command003
		COMMAND		ws		PointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0090-0001-PointerCursorArea_command004
	END_TEST_BLOCK !PanicCode=54 !PanicString=WSERV
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0090

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0091
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0091
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		RequestOffEvents(TBool aOn, RWindowTreeNode *aWin=0):Requests the window server to send OFF events to a window
//!				Uses API elements: Connect() ,RequestOffEvents()and Close()
//! @SYMTestActions		1.	use new() to create a RWsSession object
//!				2.	use Connect() to make a connection with window server
//!				3.	new and Construct a RWindowGroup within the RWsSession
//!				4.	use SetBufferSizeL() to set the buffer size as -1
//!				5.	Execute RequestOffEvents() with FALSE to make WSERV switch back to powering down the machine itself
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The test result !PanicCode=54 !PanicString=WSERV occure and is catched
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0091-0001-new_command01
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0091-0001-Construct_command02
		COMMAND		ws		SetBufferSizeL			GRAPHICS-WSERV-Session-PublicApi-0091-0001-SetBufferSizeL_command003
		COMMAND		ws		RequestOffEvents		GRAPHICS-WSERV-Session-PublicApi-0091-0001-RequestOffEvents_command004
	END_TEST_BLOCK !PanicCode=51 !PanicString=WSERV
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0091

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0092
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0092
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		RestoreDefaultHotKey(THotKey aType):Restores the default mapping for a hot key
//!				Uses API elements: Connect() ,RestoreDefaultHotKey()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use RestoreDefaultHotKey() to restore the default mapping for hot key -1
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	RestoreDefaultHotKey to fail with error KErrArgument(-6)
//! @SYMTestType			CIT
	START_TEST_BLOCK		10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT		RWsSession	ws
		COMMAND			ws		new
		COMMAND			ws		Connect
		COMMAND	!Error=-6	ws		RestoreDefaultHotKey		GRAPHICS-WSERV-Session-PublicApi-0092-0001-RestoreDefaultHotKey_command004
		COMMAND			ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0092

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0093
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0093
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetAutoFlush(TBool aState): set auto-flush state of a RWsSession
//!				Uses API elements: RWsSession::Connnect & SetAutoFlush & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. SetAutoFlush to FALSE, and check the return value should be TRUE (previous value)
//!				3. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Set auto-flush state without causing panic, and the return value is its previous value as expected if provided
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Session-PublicApi-0093-0001-SetAutoFlush_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0093

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0094
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0094
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		1/08/2006
//! @SYMTestCaseDesc 		Set up and get the background color
//!				Uses API elements: Connect() ,SetBufferSizeL(),SetBackgroundColor(),GetBackgroundColor()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use SetBufferSizeL() to set the buffer size as 131072
//!				3. use SetMaxBufferSizeL() to set the maximum as 635
//!				4. set the background color as Red(-1),Green(-1)and Blue(-1)
//!				5. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Set auto-flush state without causing panic, and the return the value of background color  as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetBufferSizeL			GRAPHICS-WSERV-Session-PublicApi-0094-0001-SetBufferSizeL_command003
		COMMAND		ws		SetMaxBufferSizeL			GRAPHICS-WSERV-Session-PublicApi-0094-0001-SetMaxBufferSizeL_command004
		COMMAND		ws		SetBackgroundColor		GRAPHICS-WSERV-Session-PublicApi-0094-0001-SetBackgroundColor_command005

		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0094

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0096
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0096
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetClientCursorMode(TPointerCursorMode aMode): set the current mode for the pointer cursor
//!				Uses API elements: RWsSession::Connnect & SetClientCursorMode & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TPointerCursorMode's object to define the current cursor mode as EPointerCursorNormal
//!				3. Uses TPointerCursorMode's object as parameter for SetClientCursorMode to set the current mode for the pointer cursor
//!				4. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the current mode for the pointer cursor to be set as the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetClientCursorMode		GRAPHICS-WSERV-Session-PublicApi-0096-0001-SetClientCursorMode_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0096

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0097
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0097
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		20/09/2006
//! @SYMTestCaseDesc 		SetCustomTextCursor(TInt aIdentifier, const TArray< TSpriteMember > &aSpriteMemberArray, TUint aSpriteFlags, TCustomTextCursorAlignment aAlignment):adds a custom text cursor to the server's list of cursors
//!				Uses API elements: RWsSession::Connect & Close, CFbsBitmap::Load
//! @SYMTestActions		1.	use new() to create a RWsSession object
//!				2.	use Connect() to make a connection with window server
//!				3.	new and Load() a CFbsBitmap to construct custom text cursor
//!	   			4.	use SetCustomTextCursor() to add custom text cursor of identifier -1, flag=ESpriteNoShadows, alignment=ECustomTextCursorAlignTop
//!	   				with one SpriteMember of the specified bitmap, drawmode=EDrawModeAND, and offset (-1,-1)
//!				5.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	call SetCustomTextCursor() without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CFbsBitmap	fbsbmp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		fbsbmp		new
		COMMAND		fbsbmp		Load				GRAPHICS-WSERV-Session-PublicApi-0097-0001-Load_command001
		COMMAND 	ws		SetCustomTextCursor		GRAPHICS-WSERV-Session-PublicApi-0097-0001-SetCustomTextCursor_command002
		COMMAND		fbsbmp	~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0097

START_TESTCASE GRAPHICS-WSERV-Session-PublicApi-0098
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0098
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetDefaultFadingParameters(TUint8 aBlackMap, TUint8 aWhiteMap): set the default fading parameters
//!				SetSystemFaded(TBool aFaded):all windows in the system as faded or unfaded, using the default fading parameters
//!				Uses API elements: RWsSession::Connnect & SetDefaultFadingParameters & SetSystemFaded & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses SetDefaultFadingParameters to set the mapping values of black map fading parameter to -1
//!				3. Uses SetDefaultFadingParameters to set the mapping values of white map fading parameter to -255
//!				4. Uses SetSystemFaded to all windows in the system as faded or unfaded, using the default fading parameters
//!				5. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the mapping values of black map and white fading parameter to be set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetDefaultFadingParameters	GRAPHICS-WSERV-Session-PublicApi-0098-0001-SetDefaultFadingParameters_command003
		COMMAND		ws		SetSystemFaded			GRAPHICS-WSERV-Session-PublicApi-0098-0001-SetSystemFaded_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0098

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0099
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0099
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		Close():Closes the window server session
//!				Uses API elements: RWsSession::Connect & Close
//! @SYMTestActions		Create and connect a RWsSession using pre-constructed file server
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Connect() method returns KErrNone without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetDoubleClick			GRAPHICS-WSERV-Session-PublicApi-0099-0001-SetDoubleClick_command003
		COMMAND		ws		GetDoubleClickSettings		GRAPHICS-WSERV-Session-PublicApi-0099-0001-GetDoubleClickSettings_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0099

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0100
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0100
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		SetHotKey(THotKey aType,TUint aKeyCode,TUint aModifierMask,TUint aModifier):sets the hot keys
//!				Uses API elements: Connect() ,SetHotKey()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use SetHotKey() to set the hot key to EHotKeyIncBrightness and key code to EKeyLeftAlt
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	hot key and key code can be set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetHotKey			GRAPHICS-WSERV-Session-PublicApi-0100-0001-SetHotKey_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0100

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0102
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0102
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		RestoreDefaultHotKey(TEventModifier aModifier, TModifierState aState):sets the state of the modifier keys
//!				Uses API elements: Connect() ,SetModifierState()and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use SetModifierState() to set the state of the modifier keys
//!				4. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	restore all mapping hotkey
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetModifierState		GRAPHICS-WSERV-Session-PublicApi-0102-0001-SetModifierState_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0102

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0103
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0103
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorArea(const TPoint &aVector): set the shadow vector
//!				PointerCursorArea():get the current value of the shadow vector
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorArea & PointerCursorArea & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TRect's object to set the horizontal co-ordinate of the left hand side of the rectangle  to -90,
//!					the vertical co-ordinate of the top of the rectangle to -51,the horizontal co-ordinate of the right hand side of the rectangle to -696 and the vertical co-ordinate of the bottom of the rectangle to -312
//!				3. Uses TRect's object as parameter for SetPointerCursorArea to set the area of the screen in which the virtual cursor can be used while in relative mouse mode, for the first screen display mode
//!				4. Uses SetShadowVector to set the mapping values of white map fading parameter to 255
//!				5. Uses PointerCursorArea to set ETrue to fade all windows
//!				6. Uses ShadowVector to set the mapping values of black map fading parameter to 10
//!				7. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the new shadow vector to be set and get the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetPointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0103-0001-SetPointerCursorArea_command003
		COMMAND		ws		PointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0103-0001-PointerCursorArea_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0103

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0104
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0104
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorArea(TInt aScreenSizeMode, const TRect &aArea): set the area of the screen in which the virtual cursor can be used while in relative mouse mode, for a specified screen display mode
//!				PointerCursorArea(TInt aScreenSizeMode) const:get the current value of the shadow vector
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorArea & PointerCursorArea & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TRect's object to set the horizontal co-ordinate of the left hand side of the rectangle  to -90,
//!					the vertical co-ordinate of the top of the rectangle to -51,the horizontal co-ordinate of the right hand side of the rectangle to -696 and the vertical co-ordinate of the bottom of the rectangle to -312
//!				3. Uses TRect's object as parameter for SetPointerCursorArea to set the area of the screen in which the virtual cursor can be used while in relative mouse mode, for a specified screen display mode
//!				4. Set the screen mode to which the new area applies to -1
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The !PanicCode=54 !PanicString=WSERV occur and is catched 
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetPointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0104-0001-SetPointerCursorArea_command003
		COMMAND		ws		PointerCursorArea		GRAPHICS-WSERV-Session-PublicApi-0104-0001-PointerCursorArea_command004
	END_TEST_BLOCK !PanicCode=54 !PanicString=WSERV
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0104

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0105
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0105
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorMode(TPointerCursorMode aMode): set the current mode for the pointer cursor
//!				PointerCursorMode(TInt aScreenSizeMode) const:get the current mode for the pointer cursor
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorMode & PointerCursorMode & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TPointerCursorMode's object to define the current cursor mode as EPointerCursorNone
//!				3. Uses TPointerCursorMode's object as parameter for SetPointerCursorMode to set the current mode for the pointer cursor
//!				4. Uses PointerCursorMode to get the current mode for the pointer cursor
//!				5. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the current mode for the pointer cursor to be set as the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Session-PublicApi-0105-0001-new_command003
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Session-PublicApi-0105-0001-Construct_command004
		COMMAND		ws		SetPointerCursorMode		GRAPHICS-WSERV-Session-PublicApi-0105-0001-SetPointerCursorMode_command005
		COMMAND		ws		PointerCursorMode		GRAPHICS-WSERV-Session-PublicApi-0105-0001-PointerCursorMode_command006
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0105

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0106
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0106
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetPointerCursorPosition(const TPoint &aPosition): set the pointer cursor position
//!				Uses API elements: RWsSession::Connnect & SetPointerCursorPosition & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses TPoint's object to define the pointer cursor X position as -1 and Y position as -1
//!				3. Uses PointerCursorPosition() to get the pointer cursor position
//!				4. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the current mode for the pointer cursor to be set as the expected value
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetPointerCursorPosition	GRAPHICS-WSERV-Session-PublicApi-0106-0001-SetPointerCursorPosition_command003
		COMMAND		ws		PointerCursorPosition		GRAPHICS-WSERV-Session-PublicApi-0106-0001-PointerCursorPosition_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0106

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0109
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0109
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		SetSystemFaded(TBool aFaded, TUint8 aBlackMap, TUint8 aWhiteMap):set all windows in the system as faded or unfaded, overriding the default fading parameters 
//!				Uses API elements: RWsSession::Connnect &SetSystemFaded & Close
//! @SYMTestActions		1. Create and connect a RWsSession
//!				2. Uses SetSystemFaded to set EFalse to fade all windows
//!				3. Uses SetSystemFaded to set the mapping values of black map fading parameter to -10
//!				4. Uses SetSystemFaded to set the mapping values of white map fading parameter to -244
//!				5. Close the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	the shadow vector to be set
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		ws		SetSystemFaded			GRAPHICS-WSERV-Session-PublicApi-0109-0001-SetSystemFaded_command003
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0109

START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0111
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0111
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		1/08/2006
//! @SYMTestCaseDesc 		Gets a list of identifiers of all window groups in all window server sessions
//!				Uses API elements: Connect(),FindWindowGroupIdentifier(),and Close()
//! @SYMTestActions		1. use new() to create a RWsSession object
//!				2. use Connect() to make a connection with window server
//!				3. use FindWindowGroupIdentifier() to get all window groups whose names match a given string
//!				4. use '*GVNKWTX*' as match string
//!			  	5. Close RWsSession object using Close()
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	FindWindowGroupIdentifier return -1(KErrNotFound).
//! @SYMTestType		CIT
	START_TEST_BLOCK		10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
		CREATE_OBJECT		RWsSession	ws
		COMMAND			ws		new
		COMMAND			ws		Connect
		COMMAND	!Error=-1	ws		FindWindowGroupIdentifier	GRAPHICS-WSERV-Session-PublicApi-0111-0001-FindWindowGroupIdentifier_command004
		COMMAND			ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0111

//! START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0114
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0114
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		NumWindowGroups(TInt aScreenNumber, TInt aPriority):gets the number of window groups of a given window group priority running on a specified screen
//!				Uses API elements: Connect() ,NumWindowGroups()and Close()
//! @SYMTestActions		1.	use new() to create a RWsSession object
//!				2.	use Connect() to make a connection with window server
//!				3.	use NumWindowGroups() to get the number of window groups with negative number of a given window group priority running on a specified screen with negative screen number
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The !PanicCode=65 !PanicString=WSERV occur and catch it 
//! @SYMTestType		CIT
//! 	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
//! 		CREATE_OBJECT	RWsSession	ws
//! 		COMMAND		ws		new
//! 		COMMAND		ws		Connect
//! 		COMMAND		ws		NumWindowGroups			GRAPHICS-WSERV-Session-PublicApi-0114-0001-NumWindowGroups_command003
//! 	END_TEST_BLOCK	!PanicCode=65 !PanicString=WSERV
//!     RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
//! END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0114

//! START_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0115
//! @SYMTestCaseID		GRAPHICS-WSERV-Session-PublicApi-0115
//! @SYMAPI			RWsSession
//! @SYMAuthor			Sunny Yeh
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc 		WindowGroupList(CArrayFixFlat< TInt > *aWindowList, TInt aScreenNumber, TInt aPriority=EAllPriorities):Lists the number of window groups of a given window group priority running on a specified screen
//!				Uses API elements: Connect() ,WindowGroupList()and Close()
//! @SYMTestActions		1.	use new() to create a RWsSession object
//!				2.	use Connect() to make a connection with window server
//!				3.	use NumWindowGroups() to get the total number of window groups currently
//!				4.	use WindowGroupList() to get the number of window groups of a given window group priority and running on a specified screen with negative screen number
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	The !PanicCode=65 !PanicString=WSERV occur and catch it
//! @SYMTestType		CIT
//! 	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Session-PublicApi.ini
//! 		CREATE_OBJECT	RWsSession	ws
//! 		COMMAND		ws		new
//! 		COMMAND		ws		Connect
//! 		COMMAND		ws		NumWindowGroups
//! 		COMMAND		ws		WindowGroupList			GRAPHICS-WSERV-Session-PublicApi-0115-0001-WindowGroupList_command005
//! 	END_TEST_BLOCK	!PanicCode=65 !PanicString=WSERV
//!     RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
//! END_TESTCASE	GRAPHICS-WSERV-Session-PublicApi-0115
