//
// 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-Window-PublicApi
//! @SYMScriptTestEnvironment	This test script requires a basic ROM.

///////////////////////////////////////////////////////////////////////////////
// GRAPHICS-WSERV-Window-PublicApi.script
//
// Tests all public elements of the RWindow 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
// RWindow 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


// ****************************************************************************
// RWindow
// ****************************************************************************

START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0001
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0001
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		RWindow(): create a RWindow object with C++ default constructor
//!				Uses API elements: RWindow()
//! @SYMTestActions		1.	Create a RWindow object with the C++ default constructor
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	RWindow object was created without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWindow		win
		COMMAND		win		new
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0001


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0002
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0002
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		RWindow(RWsSession &aWs): create a RWindow object within the specified RWsSession
//!				Uses API elements: RWsSession::Connect, RWindow()
//! @SYMTestActions		1.	Create and connect a RWsSession
//!				2.	Create a RWindow within the RWsSession
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	RWindow object was created without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		win		new			GRAPHICS-WSERV-Window-PublicApi-0002-0001-new_command004
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0002


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0003
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0003
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		Construct(const RWindowTreeNode &parent, TUint32 aHandle): complete construction of a RWindow
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Create and connect a RWsSession, and within the RWsSession
//!				2.	Create and construct a RWindowGroup (as the parent of RWindow to be constructed)
//!				3.	Create and construct a RWindow as the child of the RWindowGroup
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	Construct() method returns KErrNone without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-PublicApi-0003-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-PublicApi-0003-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-PublicApi-0003-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-PublicApi-0003-0001-Construct_command008
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0003


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0004
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0004
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		BeginRedraw(): begin redraw the window's invalid region
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RDrawableWindow::GetDrawRect
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Use RDrawableWindow::GetDrawRect to check if the drawing rectangle is empty
//!				3.	Execute BeginRedraw() method
//!				4.	Use RDrawableWindow::GetDrawRect to check if the drawing rectangle is the entire window
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run BeginRedraw() method without causing panic
//!				2.	Check if the drawing rectangle as expected
//!					2.1	before BeginRedraw(), the drawing rectangle is empty: TRect((0,0),(0,0))
//!					2.2	after BeginRedraw(), the drawing rectangle should be the window size (or the intital screen size)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-0004-0001-GetDrawRect_command001
		COMMAND		win		BeginRedraw
		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-0004-0001-GetDrawRect_command003

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0004


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0005
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0005
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		BeginRedraw(const TRect &aRect): begin redraw the rectangle of the window's invalid region
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RDrawableWindow::GetDrawRect
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Use RDrawableWindow::GetDrawRect to check if the drawing rectangle is empty
//!				3.	Execute BeginRedraw() method with specified rectangle
//!				4.	Use RDrawableWindow::GetDrawRect to check if the drawing rectangle the same as the specified
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run BeginRedraw() method without causing panic
//!				2.	Check if the drawing rectangle as expected
//!					2.1	before BeginRedraw(), the drawing rectangle is empty: TRect((0,0),(0,0))
//!					2.2	after BeginRedraw(), the drawing rectangle should be the same as the specified TRect((21,20),(51,50))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-0005-0001-GetDrawRect_command001
		COMMAND		win		BeginRedraw		GRAPHICS-WSERV-Window-PublicApi-0005-0001-BeginRedraw_command002
		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-0005-0001-GetDrawRect_command003

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0005


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0006
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0006
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		EndRedraw(): end the current redraw
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct & BeginRedraw, RDrawableWindow::GetDrawRect
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Execute BeginRedraw(), then EndRedraw method
//!				3.	Use RDrawableWindow::GetDrawRect to check if the drawing rectangle is cleared back to empty
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1. Run EndRedraw() method without causing panic
//!				2. Check if the drawing rectangle after call EndRedraw() is empty: TRect((0,0),(0,0))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-0006-0001-GetDrawRect_command003

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0006


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0007
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0007
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		Invalidate(): invalidate the entire window
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct & Activate & BeginRedraw & EndRedraw & GetInvalidRegion
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Activate, BeginRedraw and EndRedraw the RWindow to make the entire window is valid
//!				3.	Execute Invalidate() method for the entire window
//!				4.	Use GetInvalidRegion to check if the invalid region as specified (the entire window)
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run Invalidate() method without causing panic
//!				2.	Check if invalid region as specified
//!					2.1	before Invalidate(), there's NO invalid region: NULL region can be represented by TRect((0,0),(0,0))
//!					2.2	after Invalidate(), the invalid region should be the window size (or the intital screen size)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0007-0001-GetInvalidRegion_command004
		COMMAND		win		Invalidate
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0007-0001-GetInvalidRegion_command006

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0007


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0008
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0008
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		Invalidate(const TRect &aRect): invalidate a rectangle area within the window
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct & Activate & BeginRedraw & EndRedraw & GetInvalidRegion
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Activate, BeginRedraw and EndRedraw the RWindow to make the entire window is valid
//!				3.	Execute Invalidate() method with specified rectangle ((11,10),(81,60))
//!				4.	Use GetInvalidRegion to check if the invalid region as specified
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run Invalidate() method without causing panic
//!				2.	Check if invalid region as specified
//!					2.1	before Invalidate(), there's NO invalid region: NULL region can be represented by TRect((0,0),(0,0))
//!					2.2	after Invalidate(), the invalid region should be the same as specified TRect((11,10),(81,60))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0008-0001-GetInvalidRegion_command004
		COMMAND		win		Invalidate		GRAPHICS-WSERV-Window-PublicApi-0008-0001-Invalidate_command005
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0008-0001-GetInvalidRegion_command006

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0008


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0009
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0009
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		15/03/2007
//! @SYMTestCaseDesc		GetInvalidRegion(RRegion &aRegion): get the invalid region
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::Activate
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Execute GetInvalidRegion() method and check if returned invalid region is NULL/empty
//!				3.	Activate the window
//!				4.	Execute GetInvalidRegion() and check again if returned the whole window
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run GetInvalidRegion() method without causing panic
//!				2.	Check returned invalid region for a initial window
//!					2.1	before Activate the window, there's NO invalid region: NULL region can be represented by TRect((0,0),(0,0))
//!					2.2	after Activate the window, the invalid region should be the window size (or the intital screen size)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0009-0001-GetInvalidRegion_command001
		COMMAND		win		Activate
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0009-0001-GetInvalidRegion_command003

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0009


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0010
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0010
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetBackgroundColor(TRgb aColor): set the background colour used for clearing in server-initiated redraws
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K) for the RWindow
//!					1.6	SetAutoFlush to TRUE for the RWsSession
//!					1.7	Activate the CWindowGc to the RWindow
//!				2.	Execute SetBackgroundColor to set the background color to the specified TRgb(255,0,0)
//!				3.	Run RWindow::BeginRedraw & EndRedraw to display the RWindow with new background color
//!				4.	Check if the expected background color displayed on the screen
//!				5.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run SetBackgroundColor() method without causing panic
//!				2.	The whole window is displayed on the scrren with the background color TRgb(255,0,0)
//!					only check the sample rectangles: ((0,0),(20,20)), ((0,180),(20,200)), ((180,0),(200,20)), ((180,180),(200,200))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0002-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0002-0001-SetRequiredDisplayMode_command013
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		wingc		Activate		GRAPHICS-WSERV-Window-Setup-0002-0001-Activate_command017

		COMMAND		win		SetBackgroundColor	GRAPHICS-WSERV-Window-PublicApi-0010-0001-SetBackgroundColor_command001
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0010-0001-checkRectColor_command006

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0010


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0011
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0011
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetBackgroundColor(): set the background colour used for clearing in server-initiated redraws to none
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K) for the RWindow
//!					1.6	SetAutoFlush to TRUE for the RWsSession
//!					1.7	Activate the CWindowGc to the RWindow
//!				2.	Execute SetBackgroundColor to set the background color to clear, i.e. TRgb(255,255,255)
//!				3.	Run RWindow::BeginRedraw & EndRedraw to display the RWindow with new background color
//!				4.	Check if the expected background color displayed on the screen
//!				5.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run SetBackgroundColor() method without causing panic
//!				2.	The whole window is displayed on the screen with the background color TRgb(255,255,255)
//!					only check the sample rectangles: ((0,0),(20,20)), ((0,180),(20,200)), ((180,0),(200,20)), ((180,180),(200,200))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0002-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0002-0001-SetRequiredDisplayMode_command013
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		wingc		Activate		GRAPHICS-WSERV-Window-Setup-0002-0001-Activate_command017

		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0011-0001-SetBackgroundColor_command005
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0011-0001-checkRectColor_command006

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0011


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0012
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0012
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetSize(const TSize &size): set the size of the RWindow
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::Size
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Execute SetSize to set RWindow to the specified window size
//!				3.	Use RWindowBase::Size to check if the window size is the same as specified
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run SetSize() method without causing panic
//!				2.	RWindowBase::Size gets the window size as the specified (width 50, height 40)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-PublicApi-0012-0001-SetSize_command001
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-0012-0001-Size_command002

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0012


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0013
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0013
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetExtent(const TPoint &point, const TSize &size): set the extent of the RWindow
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::Size & AbsPosition
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Execute SetExtent to set RWindow position to (10,11) and size to (width 40, height 30)
//!				3.	Use RWindowBase::AbsPosition to get and check if the window position is the same as specified
//!					and RWindowBase::Size to get and check if the window size is is the same as specified
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Critical
//! @SYMTestExpectedResults	1.	Run SetExtent() method without causing panic
//!				2.	RWindowBase::AbsPosition gets the window position as expected (10,11)
//!					RWindowBase::Size gets the window size as expected (width 50, height 40)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		SetExtent		GRAPHICS-WSERV-Window-PublicApi-0013-0001-SetExtent_command001
		COMMAND		win		AbsPosition		GRAPHICS-WSERV-Window-PublicApi-0013-0001-AbsPosition_command002
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-0013-0001-Size_command003

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0013


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0014
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0014
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		02/05/2007
//! @SYMTestCaseDesc		HandleTransparencyUpdate(): notify the WSERV that the contents of the registered transparency CFbsBitmap has been changed
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize & SetTransparencyBitmap, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	New and Create a transparency CFbsBitmap: display mode EGray256, width 5 height 1
//!				3.	SetBackgroundColor to TRgb(0,0,255) for the foreground RWindow
//!				4.	Use SetTransparencyBitmap to set the tranpsarency CFbsBitmap for the window
//!				5.	Activate the foreground RWindow, execute BeginRedraw & EndRedraw to display the foreground RWindow
//!				6.	Check if the foreground RWindow is displayed with the specified transparency CFbsBitmap
//!				7.	Use TBitmapUtil::Begin, SetPos, SetPixel, End to change the transparency CFbsBitmap
//!				8.	Execute HandleTransparencyUpdate to notify WSERV that the registered transparency CFbsBitmap has been changed
//!				9.	Check if the foreground RWindow is displayed with the updated transparency CFbsBitmap
//!				10.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Run HandleTransparencyUpdate() method without causing panic
//!				2.	Check if the foreground RWindow is displayed as expected
//!					2.1	before HandleTransparencyUpdate, the tranpsarency CFbsBitmap is all with default TRgb(255,255,255)
//!						this means non-transparent, and the window is displayed with its background color TRgb(0,0,255)
//!					2.2	after HandleTransparencyUpdate, the tranpsarency CFbsBitmap is updated with partially/fully transparency
//!						the window is displayed as the result of alpha blending with source = foreground RWindow color TRgb(0,0,255)
//!						with window = background RWindow color TRgb(255,255,0)
//!						with alpha factor = map pixel color of transparency CFbsBitmap to Gray256
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		CREATE_OBJECT	CFbsBitmap	fbsbmp
		CREATE_OBJECT	TBitmapUtil	bmputil
		COMMAND		fbsbmp		new
		COMMAND		fbsbmp		Create				GRAPHICS-WSERV-Window-PublicApi-0014-0001-Create_command002
		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetBackgroundColor_command004
		COMMAND		win		SetTransparencyBitmap		GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetTransparencyBitmap_command005
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor			GRAPHICS-WSERV-Window-PublicApi-0014-0001-checkRectColor_command010
		COMMAND		bmputil		new				GRAPHICS-WSERV-Window-PublicApi-0014-0001-New_command012
		COMMAND		bmputil		Begin				GRAPHICS-WSERV-Window-PublicApi-0014-0001-Begin_command013
		COMMAND		bmputil		SetPixel			GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPixel_command014
		COMMAND		bmputil		SetPos				GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPos_command015
		COMMAND		bmputil		SetPixel			GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPixel_command016
		COMMAND		bmputil		SetPos				GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPos_command017
		COMMAND		bmputil		SetPixel			GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPixel_command018
		COMMAND		bmputil		SetPos				GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPos_command019
		COMMAND		bmputil		SetPixel			GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPixel_command020
		COMMAND		bmputil		SetPos				GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPos_command021
		COMMAND		bmputil		SetPixel			GRAPHICS-WSERV-Window-PublicApi-0014-0001-SetPixel_command022
		COMMAND		bmputil		End
		COMMAND		win		HandleTransparencyUpdate

		COMMAND		fbsbmp		~
		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0014


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0015
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0015
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		28/03/2007
//! @SYMTestCaseDesc		SetTransparencyFactor(const TRgb &aTransparencyFactor): set the tranpsarency color for the window
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	SetBackgroundColor to TRgb(0,0,255) for the foreground RWindow
//!				3.	Execute SetTransparencyFactor to TRgb(17,17,17) to set transparency color
//!				4.	Activate the foreground RWindow, execute BeginRedraw & EndRedraw to display the foreground RWindow
//!				5.	Check if the foreground RWindow is displayed with the transparency factor
//!				6.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetTransparencyFactor() returns KErrNone without causing panic
//!				2.	The foreground RWindow is displayed with the specified tranpsarency factor
//!					i.e. alpha blending with source = foreground RWindow color TRgb(0,0,255)
//!					with window = background RWindow color TRgb(255,255,0)
//!					with alpha factor = map transparency color to Gray256, e.g. TRgb(17,17,17) => alpha factor 17
//!					then foreground RWindow is expected to be drawn with TRgb(238,238,17)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0015-0001-SetBackgroundColor_command001
		COMMAND		win		SetTransparencyFactor		GRAPHICS-WSERV-Window-PublicApi-0015-0001-SetTransparencyFactor_command002
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0015


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0016
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0016
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		02/04/2007
//! @SYMTestCaseDesc		SetTransparencyBitmap(const CFbsBitmap &aTransparencyBitmap): set the tranpsarency bitmap for the window
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct, CFbsBitmap::Load,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	New and Load the transparency CFbsBitmap
//!				3.	Execute SetTransparencyBitmap to set the tranpsarency CFbsBitmap for the window
//!				4.	SetBackgroundColor to TRgb(0,0,255) for the foreground RWindow
//!				5.	Activate the foreground RWindow, execute BeginRedraw & EndRedraw to display the foreground RWindow
//!				6.	Check if the foreground RWindow is displayed with the specified transparency CFbsBitmap
//!					i.e. alpha blending with source = foreground RWindow color, window = background RWindow color, alpha = transparency CFbsBitmap
//!				7.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetTransparencyBitmap() returns KErrNone without causing panic
//!				2.	The foreground RWindow is displayed with the specified tranpsarency CFbsBitmap
//!					i.e. alpha blending with source = foreground RWindow color TRgb(0,0,255)
//!					with window = background RWindow color TRgb(255,255,0)
//!					with alpha factor = map pixel color of transparency CFbsBitmap to Gray256
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		CREATE_OBJECT	CFbsBitmap	fbsbmp
		COMMAND		fbsbmp		new
		COMMAND		fbsbmp		Load				GRAPHICS-WSERV-Window-PublicApi-0016-0001-Load_command002
		COMMAND		win		SetTransparencyBitmap		GRAPHICS-WSERV-Window-PublicApi-0016-0001-SetTransparencyBitmap_command004
		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0016-0001-SetBackgroundColor_command005
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw

		COMMAND		fbsbmp		~
		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0016


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0017
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0017
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		03/04/2007
//! @SYMTestCaseDesc		SetTransparencyWsBitmap(const CWsBitmap &aTransparencyBitmap): set the tranpsarency bitmap for the window
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct, CWsBitmap::Load,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	New and Load the transparency CWsBitmap
//!				3.	Execute SetTransparencyWsBitmap to set the tranpsarency CWsBitmap for the window
//!				4.	SetBackgroundColor to TRgb(0,0,255) for the foreground RWindow
//!				5.	Activate the foreground RWindow, execute BeginRedraw & EndRedraw to display the foreground RWindow
//!				6.	Check if the foreground RWindow is displayed with the specified transparency CWsBitmap
//!					i.e. alpha blending with source = foreground RWindow color, window = background RWindow color, alpha = transparency CWsBitmap
//!				7.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetTransparencyWsBitmap() returns KErrNone without causing panic
//!				2.	The foreground RWindow is displayed with the specified tranpsarency CWsBitmap
//!					i.e. alpha blending with source = foreground RWindow color TRgb(0,0,255)
//!					with window = background RWindow color TRgb(255,255,0)
//!					with alpha factor = map pixel color of transparency CWsBitmap to Gray256
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		CREATE_OBJECT	CWsBitmap	wsbmp
		COMMAND		wsbmp		new				GRAPHICS-WSERV-Window-PublicApi-0017-0001-new_command001
		COMMAND		wsbmp		Load				GRAPHICS-WSERV-Window-PublicApi-0017-0001-Load_command002
		COMMAND		win		SetTransparencyWsBitmap		GRAPHICS-WSERV-Window-PublicApi-0017-0001-SetTransparencyWsBitmap_command004
		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0017-0001-SetBackgroundColor_command005
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw

		COMMAND		wsbmp	~
		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0017


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0018
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0018
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		26/03/2007
//! @SYMTestCaseDesc		SetNonTransparent(): set the window to not be transparent
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	Execute SetNonTransparent to set the window to not be transparent
//!				3.	SetBackgroundColor to TRgb(0,0,255) for the foreground RWindow
//!				4.	Activate the foreground RWindow, execute BeginRedraw & EndRedraw to display the foreground RWindow
//!				5.	Check if the foreground RWindow is displayed with non-transparent, i.e. its background color TRgb(0,0,255)
//!				6.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Run SetNonTransparent() method without causing panic
//!				2.	The foreground RWindow is displayed with non-transparent, i.e. its background color TRgb(0,0,255)
//!					only check sample rectangle area ((0,0),(80,10))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetNonTransparent
		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0018-0001-SetBackgroundColor_command002
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor			GRAPHICS-WSERV-Window-PublicApi-0018-0001-checkRectColor_command007

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0018


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0019
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0019
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		14/03/2007
//! @SYMTestCaseDesc		EnableRedrawStore(TBool aEnabled): enable or diable the redraw store for a window
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct & IsRedrawStoreEnabled
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Execute EnableRedrawStore to FALSE to disable the redraw store for the RWindow
//!				3.	Use IsRedrawStoreEnabled to check if the redraw store flag for the RWindow is FALSE
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Run EnableRedrawStore() method without causing panic
//!				2.	The redraw store flag for the RWindow is the same as specified, i.e. FALSE
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		EnableRedrawStore	GRAPHICS-WSERV-Window-PublicApi-0019-0001-EnableRedrawStore_command001
		COMMAND		win		IsRedrawStoreEnabled	GRAPHICS-WSERV-Window-PublicApi-0019-0001-IsRedrawStoreEnabled_command002

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0019


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0020
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0020
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		04/05/2007
//! @SYMTestCaseDesc		SetTransparencyAlphaChannel(): set the window to be transparent using the alpha channel
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize & EnableRedrawStore & IsRedrawStoreEnabled, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	for the foreground RWindow, SetRequiredDisplayMode to EColor16MA
//!					and SetBackgroundColor to TRgb(0,0,255) with alpha value (=196)
//!				3.	Use DisplayMode to check if the display mode of the foreground RWindow is EColor16MA
//!				4.	Use EnableRedrawStore to disable the redraw store of the foreground RWindow
//!					and use IsRedrawStoreEnabled to check its redraw store flag is FALSE
//!				5.	Execute SetTransparencyAlphaChannel to set the foreground RWindow to be transparent using the alpha channel
//!				6.	Use IsRedrawStoreEnabled to check its redraw store flag is TRUE (turned on by SetTransparencyAlphaChannel)
//!				7.	Activate the foreground RWindow, execute BeginRedraw & EndRedraw to display the foreground RWindow
//!				8.	Check the display of the foreground RWindow with the transparent alpha channel
//!				9.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetTransparencyAlphaChannel() returns KErrNone without causing panic
//!				2.	The foreground RWindow is displayed with the tranpsarency factor specified by alpha channel
//!					i.e. alpha blending with source = foreground RWindow color TRgb(0,0,255)
//!					with window = background RWindow color TRgb(255,255,0)
//!					with alpha factor with the value in alpha channel (=196)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-PublicApi-0020-0001-SetRequiredDisplayMode_command001
		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0020-0001-SetBackgroundColor_command002
		COMMAND		win		DisplayMode			GRAPHICS-WSERV-Window-PublicApi-0020-0001-DisplayMode_command003
		COMMAND		win		EnableRedrawStore		GRAPHICS-WSERV-Window-PublicApi-0020-0001-EnableRedrawStore_command004
		COMMAND		win		IsRedrawStoreEnabled		GRAPHICS-WSERV-Window-PublicApi-0020-0001-IsRedrawStoreEnabled_command005
		COMMAND		win		SetTransparencyAlphaChannel
		COMMAND		win		IsRedrawStoreEnabled		GRAPHICS-WSERV-Window-PublicApi-0020-0001-IsRedrawStoreEnabled_command007
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0020


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0021
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0021
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		29/03/2007
//! @SYMTestCaseDesc		SetTransparentRegion(const TRegion &aRegion): set transparent region of the RWindow
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize & SetTransparencyFactor, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	SetBackgroundColor to TRgb(0,0,255) for the foreground RWindow
//!				3.	Use SetTransparencyFactor to TRgb(0,28,0) to set transparency color
//!				4.	Execute SetTransparentRegion to set the transparent region of the RWindow
//!				5.	Activate the foreground RWindow, execute BeginRedraw & EndRedraw to display the foreground RWindow
//!				6.	Check the display of the foreground RWindow within and beyond the transparency region
//!				7.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetTransparentRegion() returns KErrNone without causing panic
//!				2.	Check the display of the foreground RWindow
//!					2.1	beyond the transparency region, displayed with its background color, i.e. TRgb(0,0,255)
//!					2.2	within the transparency region, displayed with the transparency factor
//!						i.e. alpha blending with source = foreground RWindow color, window = background RWindow color, alpha = transparency color
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0021-0001-SetBackgroundColor_command001
		COMMAND		win		SetTransparencyAlphaChannel
		COMMAND		win		SetTransparentRegion		GRAPHICS-WSERV-Window-PublicApi-0021-0001-SetTransparentRegion_command003
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0021


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0022
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0022
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		02/05/2007
//! @SYMTestCaseDesc		SetTransparencyPolicy(TWsTransparencyPolicy aPolicy): set RWindow transparency policy
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize & SetTransparencyFactor, CWindowGc::Activate & Deactivate
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	for the foreground RWindow, SetBackgroundColor to TRgb(0,0,255)
//!					and SetTransparencyFactor to TRgb(51,51,51), i.e. alpha factor = 51
//!				3.	Execute SetTransparencyPolicy to set foreground RWindow to ETransparencyDefault
//!				4.	Activate the foreground RWindow, execute BeginRedraw & EndRedraw to display the foreground RWindow
//!				5.	Check if the foreground RWindow is displayed with the transparency factor
//!				6.	Use SetBackgroundColor to change the background RWindow to TRgb(255,0,0) (from TRgb(255,255,0))
//!				7.	Invalidate the background RWindow, execute BeginRedraw & EndRedraw to redraw the background RWindow
//!				8.	Check if the foreground RWindow is displayed with the transparency factor (over new background RWindow color)
//!				9.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetTransparencyPolicy() method returns KErrNone without causing panic
//!				2.	Check if the foreground RWindow is displayed as expected
//!					2.1	before the background RWindow changes its background color
//!						the foreground RWindow is displayed as the result of alpha blending with source = foreground RWindow color TRgb(0,0,255)
//!						with window = the background RWindow color before change TRgb(255,255,0), and alpha factor = 51
//!					2.2	after the background RWindow changes its background color
//!						the foreground RWindow is displayed as the result of alpha blending with source = foreground RWindow color TRgb(0,0,255)
//!						with window = the changed background RWindow color TRgb(255,0,0), and alpha factor = 51
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0022-0001-SetBackgroundColor_command001
		COMMAND		win		SetTransparencyAlphaChannel
		COMMAND		win		SetTransparencyPolicy		GRAPHICS-WSERV-Window-PublicApi-0022-0001-SetTransparencyPolicy_command003
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		wingc		Deactivate
		COMMAND		wingc		Activate			GRAPHICS-WSERV-Window-PublicApi-0022-0001-Activate_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0022-0001-SetBackgroundColor_command015
		COMMAND		backwin		Invalidate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		wingc		Deactivate

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0022


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0023
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0023
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		14/03/2007
//! @SYMTestCaseDesc		IsRedrawStoreEnabled(): returns whether the window uses a redraw store to store drawing commands
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Create and construct a simple RWindow to test
//!					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
//!				2.	Execute IsRedrawStoreEnabled to get and check if the default redraw store flag of the window is TRUE
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1. Run IsRedrawStoreEnabled() method without causing panic
//!				2. The default redraw store flag for the RWindow is TRUE
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		IsRedrawStoreEnabled	GRAPHICS-WSERV-Window-PublicApi-0023-0001-IsRedrawStoreEnabled_command001

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0023


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0024
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0024
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		03/05/2007
//! @SYMTestCaseDesc		EnableOSB(TBool): enables the WSERV to use its OSB
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize, CWindowGc::Activate & Deactivate & DrawRect
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	Execute EnableOSB to enable WSERV to use its OSB
//!				3.	SetBackgroundColor to TRgb(0,0,255) for the foreground RWindow
//!				4.	Activate the CWindowGc to the foreground RWindow
//!				5.	1st redraw: Activate the foreground RWindow, then BeginRedraw
//!					DrawRect to draw a rectangle in the left TRect((10,10),(30,30)), and EndRedraw to display it
//!				6.	Check if the left rectangle is correctly filled
//!					and beyond the drawing is drawn with the background color TRgb(0,0,255)
//!				7.	2nd redraw: Invalidate the whole foreground RWindow, then BeginRedraw
//!					DrawRect to draw a rectangle in the right TRect((40,10),(60,30)), and EndRedraw to display it
//!				8.	Check if the right rectangle is correctly filled, and the left rectangle is cleared
//!				9.	Deactivate the CWindowGc from the foreground RWindow
//!				10.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Run EnableOSB() method without causing panic
//!				2.	Check the display of the foreground RWindow
//!					2.1	after 1st redraw, inside the left is filled with the brush color TRgb(255,0,0): TRect((11,11),(29,29))
//!						beyond left rectangle is drawn with the background color TRgb(0,0,255): TRect((31,11),(49,29)), TRect((51,11),(69,29))
//!					2.2	after 2nd redraw, inside the right is filled with the brush color TRgb(255,0,0): TRect((51,11),(69,29))
//!						the left rectangle is cleared to the background color TRgb(0,0,255): TRect((31,11),(49,29))
//!						beyond left and right rectangle is drawn with the background color TRgb(0,0,255): TRect((31,11),(49,29))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor	GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		EnableOSB		GRAPHICS-WSERV-Window-PublicApi-0024-0001-EnableOSB_command001
		COMMAND		win		SetBackgroundColor	GRAPHICS-WSERV-Window-PublicApi-0024-0001-SetBackgroundColor_command002
		COMMAND		win		Activate
		COMMAND		wingc		Activate		GRAPHICS-WSERV-Window-PublicApi-0024-0001-Activate_command003
		COMMAND		win		BeginRedraw
		COMMAND		wingc		SetBrushColor		GRAPHICS-WSERV-Window-PublicApi-0024-0001-SetBrushColor_command006
		COMMAND		wingc		SetBrushStyle		GRAPHICS-WSERV-Window-PublicApi-0024-0001-SetBrushStyle_command007
		COMMAND		wingc		DrawRect		GRAPHICS-WSERV-Window-PublicApi-0024-0001-DrawRect_command008
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0024-0001-checkRectColor_command012
		COMMAND		win		Invalidate
		COMMAND		win		BeginRedraw
		COMMAND		wingc		DrawRect		GRAPHICS-WSERV-Window-PublicApi-0024-0001-DrawRect_command017
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0024-0001-checkRectColor_command021

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0024


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0025
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0025
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		03/05/2007
//! @SYMTestCaseDesc		EnableOSB(TBool): Disables the WSERV to force it to not use its OSB
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CreateContext & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & SetRequiredDisplayMode & BeginRedraw & EndRedraw & SetBackgroundColor & SetSize, CWindowGc::Activate & Deactivate & DrawRect
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	Execute EnableOSB to enable WSERV to use its OSB
//!				3.	SetBackgroundColor to TRgb(0,0,255) for the foreground RWindow
//!				4.	Activate the CWindowGc to the foreground RWindow
//!				5.	1st redraw: Activate the foreground RWindow, then BeginRedraw
//!					DrawRect to draw a rectangle in the left TRect((10,10),(30,30)), and EndRedraw to display it
//!				6.	Check if the left rectangle is correctly filled
//!					and beyond the drawing is drawn with the background color TRgb(0,0,255)
//!				7.	2nd redraw: Invalidate the whole foreground RWindow, then BeginRedraw
//!					DrawRect to draw a rectangle in the right TRect((40,10),(60,30)), and EndRedraw to display it
//!				8.	Check if the right rectangle is correctly filled, and the left rectangle is cleared
//!				9.	Deactivate the CWindowGc from the foreground RWindow
//!				10.	Destruct and close all the objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Run EnableOSB() method without causing panic
//!				2.	Check the display of the foreground RWindow
//!					2.1	after 1st redraw, inside the left is filled with the brush color TRgb(255,0,0): TRect((11,11),(29,29))
//!						beyond left rectangle is drawn with the background color TRgb(0,0,255): TRect((31,11),(49,29)), TRect((51,11),(69,29))
//!					2.2	after 2nd redraw, inside the right is filled with the brush color TRgb(255,0,0): TRect((51,11),(69,29))
//!						the left rectangle is cleared to the background color TRgb(0,0,255): TRect((31,11),(49,29))
//!						beyond left and right rectangle is drawn with the background color TRgb(0,0,255): TRect((31,11),(49,29))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor	GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		EnableOSB		GRAPHICS-WSERV-Window-PublicApi-0025-0001-EnableOSB_command001
		COMMAND		win		SetBackgroundColor	GRAPHICS-WSERV-Window-PublicApi-0025-0001-SetBackgroundColor_command002
		COMMAND		win		Activate
		COMMAND		wingc		Activate		GRAPHICS-WSERV-Window-PublicApi-0025-0001-Activate_command003
		COMMAND		win		BeginRedraw
		COMMAND		wingc		SetBrushColor		GRAPHICS-WSERV-Window-PublicApi-0025-0001-SetBrushColor_command006
		COMMAND		wingc		SetBrushStyle		GRAPHICS-WSERV-Window-PublicApi-0025-0001-SetBrushStyle_command007
		COMMAND		wingc		DrawRect		GRAPHICS-WSERV-Window-PublicApi-0025-0001-DrawRect_command008
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0025-0001-checkRectColor_command012

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0025



// ****************************************************************************
// RWindow Public APIs inherited from RDrawableWindow
// ****************************************************************************


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0101
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0101
//! @SYMAPI			RDrawableWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		19/04/2007
//! @SYMTestCaseDesc		Scroll(const TPoint &aOffset): scroll the window content by the specified offset
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CopyScreenToBitmap & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & BeginRedraw & EndRedraw & GetInvalidRegion, CWindowGc::Construct & Activate & Deactivate & DrawRect
//! @SYMTestActions		1.	Setup and display a RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K) for the RWindow and Activate it
//!					1.6	SetAutoFlush to TRUE for the RWsSession
//!					1.7	Activate the CWindowGc to the RWindow
//!						and SetBrushColor to TRgb(255,0,0) and SetBrushStyle to ESolidBrush
//!					1.8	Set RWindow size to height 100, width 100, and Activate the window
//!				2.	Draw something on the RWindow: BeginRedraw, DrawRect ((3,2),(40,30)), then EndRedraw
//!				3.	Use RWindow::GetInvalidRegion to check if the invalid region of the RWindow is empty
//!				4.	Execute Scroll to scroll the window content by the specified offset (5,4)
//!				5.	Check if the invalid region after scroll is as expected
//!				6.	Check if the drawing on the screen as expected
//!				7.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Scroll() was executed without causing panic
//!				2.	Check the drawing result after scroll: to scroll TRect((0,0),(100,100)) to ((5,4),(105,104))
//!					2.1	the scrolled destination in TRect((5,4),(100,100)) is the same as the source of TRect((0,0),(95,96))
//!					2.2	beyond the scrolled destination area should keep the same as the drawing before scroll
//!						only sample the areas of TRect((0,0),(100,4)) ((0,4),(5,100))
//!				3.	Check the invalid region
//!					3.1	before scroll: the invalid region is empty: TRect((0,0),(0,0))
//!					3.2	after scroll: beyond the destination window context in TRect((5,4),(100,100))
//!						the invalid region should be TRect((0,0),(100,4)) & TRect((0,4),(5,100))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0002-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0002-0001-SetRequiredDisplayMode_command013
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		wingc		Activate		GRAPHICS-WSERV-Window-Setup-0002-0001-Activate_command017
		COMMAND		wingc		SetBrushColor		GRAPHICS-WSERV-Window-Setup-0002-0001-SetBrushColor_command18
		COMMAND		wingc		SetBrushStyle		GRAPHICS-WSERV-Window-Setup-0002-0001-SetBrushStyle_command19
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-Setup-0002-0001-SetSize_command20
		COMMAND		win		Activate

		COMMAND		win		BeginRedraw
		COMMAND		wingc		DrawRect		GRAPHICS-WSERV-Window-PublicApi-0101-0001-DrawRect_command03
		COMMAND		win		EndRedraw
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0101-0001-GetInvalidRegion_command06
		COMMAND		win		Scroll			GRAPHICS-WSERV-Window-PublicApi-0101-0001-Scroll_command10
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0101-0001-GetInvalidRegion_command11
		COMMAND		scrdev		checkLineColor		GRAPHICS-WSERV-Window-PublicApi-0101-0001-checkLineColor_command13
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0101-0001-checkRectColor_command14
		COMMAND		scrdev		checkLineColor		GRAPHICS-WSERV-Window-PublicApi-0101-0001-checkLineColor_command15
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0101-0001-checkRectColor_command16

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0101


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0102
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0102
//! @SYMAPI			RDrawableWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		19/04/2007
//! @SYMTestCaseDesc		Scroll(const TRect &aClipRect, const TPoint &aOffset): scroll the window content within the clip rectangle
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CopyScreenToBitmap & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & BeginRedraw & EndRedraw & GetInvalidRegion, CWindowGc::Construct & Activate & Deactivate & DrawRect
//! @SYMTestActions		1.	Setup and display a RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K) for the RWindow and Activate it
//!					1.6	SetAutoFlush to TRUE for the RWsSession
//!					1.7	Activate the CWindowGc to the RWindow
//!						and SetBrushColor to TRgb(255,0,0) and SetBrushStyle to ESolidBrush
//!					1.8	Set RWindow size to height 100, width 100, and Activate the window
//!				2.	Draw something on the RWindow: BeginRedraw, DrawRect ((11,10),(41,30)), then EndRedraw
//!				3.	Use RWindow::GetInvalidRegion to check if the invalid region of the RWindow is empty
//!				4.	Execute Scroll to scroll the window content by the specified offset (10,5) within clip rectangle TRect((10,10),(30,40))
//!				5.	Check if the invalid region after scroll is as expected
//!				6.	Check if the drawing on the screen as expected
//!				7.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Scroll() was executed without causing panic
//!				2.	Check the drawing result after scroll: to scroll TRect((10,10),(30,40)) to ((20,15),(40,45)) within TRect((10,10),(30,40))
//!					2.1	the scrolled destination in TRect((20,15),(30,40)) is the same as the source of TRect((10,10),(20,35))
//!					2.2	beyond the scrolled destination area should keep the same as the drawing before scroll
//!						only sample the areas of TRect((0,0),(50,15)) ((0,15),(20,40)) ((30,15),(50,40)) ((0,40),(50,50))
//!				3.	Check the invalid region
//!					3.1	before scroll: the invalid region is empty: TRect((0,0),(0,0))
//!					3.2	after scroll: beyond the destination window context in TRect((20,15),(30,40)) and within TRect((10,10),(30,40))
//!						the invalid region should be TRect((10,10),(30,15)) & TRect((10,15),(20,40))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0002-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0002-0001-SetRequiredDisplayMode_command013
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		wingc		Activate		GRAPHICS-WSERV-Window-Setup-0002-0001-Activate_command017
		COMMAND		wingc		SetBrushColor		GRAPHICS-WSERV-Window-Setup-0002-0001-SetBrushColor_command18
		COMMAND		wingc		SetBrushStyle		GRAPHICS-WSERV-Window-Setup-0002-0001-SetBrushStyle_command19
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-Setup-0002-0001-SetSize_command20
		COMMAND		win		Activate

		COMMAND		win		BeginRedraw
		COMMAND		wingc		DrawRect		GRAPHICS-WSERV-Window-PublicApi-0102-0001-DrawRect_command03
		COMMAND		win		EndRedraw
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0102-0001-GetInvalidRegion_command06
		COMMAND		win		Scroll			GRAPHICS-WSERV-Window-PublicApi-0102-0001-Scroll_command10
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0102-0001-GetInvalidRegion_command11
		COMMAND		scrdev		checkLineColor		GRAPHICS-WSERV-Window-PublicApi-0102-0001-checkLineColor_command13
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0102-0001-checkRectColor_command14
		COMMAND		scrdev		checkLineColor		GRAPHICS-WSERV-Window-PublicApi-0102-0001-checkLineColor_command15
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0102-0001-checkRectColor_command16

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0102


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0103
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0103
//! @SYMAPI			RDrawableWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		19/04/2007
//! @SYMTestCaseDesc		Scroll(const TPoint &aOffset, const TRect &aRect): scroll a rectangle within a window
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CopyScreenToBitmap & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & BeginRedraw & EndRedraw & GetInvalidRegion, CWindowGc::Construct & Activate & Deactivate & DrawRect
//! @SYMTestActions		1.	Setup and display a RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K) for the RWindow and Activate it
//!					1.6	SetAutoFlush to TRUE for the RWsSession
//!					1.7	Activate the CWindowGc to the RWindow
//!						and SetBrushColor to TRgb(255,0,0) and SetBrushStyle to ESolidBrush
//!					1.8	Set RWindow size to height 100, width 100, and Activate the window
//!				2.	Draw something on the RWindow: BeginRedraw, DrawRect ((11,10),(41,30)), then EndRedraw
//!				3.	Use RWindow::GetInvalidRegion to check if the invalid region of the RWindow is empty
//!				4.	Execute Scroll to scroll the TRect((10,10),(30,40)) by the specified offset (10,5) within the window
//!				5.	Check if the invalid region after scroll is still empty
//!				6.	Check if the drawing on the screen as expected
//!				7.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Scroll was executed without causing panic
//!				2.	Check the drawing result after scroll: to scroll TRect((10,10),(30,40)) to ((20,15),(40,45))
//!					2.1	the scrolled destination in TRect((20,15),(40,45)) ahould be the same the source of TRect((10,10),(30,40))
//!					2.2	beyond the scrolled destination area should keep the same as the drawing before scroll
//!						only sample the areas of TRect((0,0),(100,15)) ((0,15),(20,45)) ((40,15),(100,45)) ((0,45),(100,60))
//!				3.	Check the invalid region
//!					3.1	before scroll: the invalid region is empty: TRect((0,0),(0,0))
//!					3.2	after scroll: the invalid region is empty: TRect((0,0),(0,0))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0002-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0002-0001-SetRequiredDisplayMode_command013
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		wingc		Activate		GRAPHICS-WSERV-Window-Setup-0002-0001-Activate_command017
		COMMAND		wingc		SetBrushColor		GRAPHICS-WSERV-Window-Setup-0002-0001-SetBrushColor_command18
		COMMAND		wingc		SetBrushStyle		GRAPHICS-WSERV-Window-Setup-0002-0001-SetBrushStyle_command19
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-Setup-0002-0001-SetSize_command20
		COMMAND		win		Activate

		COMMAND		win		BeginRedraw
		COMMAND		wingc		DrawRect		GRAPHICS-WSERV-Window-PublicApi-0103-0001-DrawRect_command03
		COMMAND		win		EndRedraw
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0103-0001-GetInvalidRegion_command06
		COMMAND		win		Scroll			GRAPHICS-WSERV-Window-PublicApi-0103-0001-Scroll_command10
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0103-0001-GetInvalidRegion_command11
		COMMAND		scrdev		checkLineColor		GRAPHICS-WSERV-Window-PublicApi-0103-0001-checkLineColor_command13
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0103-0001-checkRectColor_command14
		COMMAND		scrdev		checkLineColor		GRAPHICS-WSERV-Window-PublicApi-0103-0001-checkLineColor_command15
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0103-0001-checkRectColor_command16

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0103


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0104
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0104
//! @SYMAPI			RDrawableWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		19/04/2007
//! @SYMTestCaseDesc		Scroll(const TRect &aClipRect, const TPoint &aOffset, const TRect &aRect): scroll a source rectangle content within the clip rectangle
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & CopyScreenToBitmap & GetPixel, RWindowGroup::Construct,
//!				RWindow::Construct & BeginRedraw & EndRedraw & GetInvalidRegion, CWindowGc::Construct & Activate & Deactivate & DrawRect
//! @SYMTestActions		1.	Setup and display a RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K) for the RWindow and Activate it
//!					1.6	SetAutoFlush to TRUE for the RWsSession
//!					1.7	Activate the CWindowGc to the RWindow
//!						and SetBrushColor to TRgb(255,0,0) and SetBrushStyle to ESolidBrush
//!					1.8	Set RWindow size to height 100, width 100, and Activate the window
//!				2.	Draw something on the RWindow: BeginRedraw, DrawRect ((11,10),(41,30)), then EndRedraw
//!				3.	Use RWindow::GetInvalidRegion to check if the invalid region of the RWindow is empty
//!				4.	Execute Scroll to scroll the TRect((10,10),(41,30)) by the specified offset (40,30) within clip rectangle TRect((20,15),(100,100))
//!				5.	Check if the invalid region after scroll is as expected
//!				6.	Check if the drawing on the screen as expected
//!				7.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Scroll() was executed without causing panic
//!				2.	Check the drawing result after scroll: to scroll TRect((10,10),(41,30)) to ((50,40),(81,60)) within TRect((20,15),(100,100))
//!					2.1	check the scrolled destination should match its source: the area needs the following calculation
//!						2.1.1	from the source within clip rectangle only: TRect((20,15),(41,30))
//!						2.1.2	scroll 2.1.1 area and within clip rectangle makes the scrolled destination: TRect((60,45),(81,60))
//!						2.1.3	the scrolled destination should be the same as the source of TRect((20,15),(41,30))
//!					2.2	beyond the scrolled destination area should keep the same as the drawing before scroll
//!						only sample the areas of TRect((10,10),(41,30)) ((50,40),(81,45)) ((50,45),(60,60))
//!				3.	Check the invalid region
//!					3.1	before scroll: the invalid region is empty: TRect((0,0),(0,0))
//!					3.2	after scroll: the invalid region needs the following calculation
//!						3.2.1	from the source beyond clip rectangle: TRect((10,10),(41,15)) ((10,15),(20,30))
//!						3.2.2	scroll 3.2.1 area and within clip rectangle makes the invalid region: TRect((50,40),(81,45)) ((50,45),(60,60))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0002-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0002-0001-SetRequiredDisplayMode_command013
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		wingc		Activate		GRAPHICS-WSERV-Window-Setup-0002-0001-Activate_command017
		COMMAND		wingc		SetBrushColor		GRAPHICS-WSERV-Window-Setup-0002-0001-SetBrushColor_command18
		COMMAND		wingc		SetBrushStyle		GRAPHICS-WSERV-Window-Setup-0002-0001-SetBrushStyle_command19
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-Setup-0002-0001-SetSize_command20
		COMMAND		win		Activate

		COMMAND		win		BeginRedraw
		COMMAND		wingc		DrawRect		GRAPHICS-WSERV-Window-PublicApi-0104-0001-DrawRect_command03
		COMMAND		win		EndRedraw
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0104-0001-GetInvalidRegion_command06
		COMMAND		win		Scroll			GRAPHICS-WSERV-Window-PublicApi-0104-0001-Scroll_command10
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-0104-0001-GetInvalidRegion_command11
		COMMAND		scrdev		checkLineColor		GRAPHICS-WSERV-Window-PublicApi-0104-0001-checkLineColor_command13
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0104-0001-checkRectColor_command14
		COMMAND		scrdev		checkLineColor		GRAPHICS-WSERV-Window-PublicApi-0104-0001-checkLineColor_command15
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0104-0001-checkRectColor_command16

		COMMAND		wingc		Deactivate
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0104


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0105
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0105
//! @SYMAPI			RDrawableWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		29/01/2007
//! @SYMTestCaseDesc		GetDrawRect(): Obtain the current rectangle being drawn to this window (test in RWindow object)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct & BeginRedraw & EndRedraw
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute GetDrawRect to check if the drawing rectangle is empty
//!				3.	Use	RWindow::BeginRedraw() method with specified redraw rectangle: TRect((21,20),(51,50))
//!				4.	Execute GetDrawRect again to check if the drawing rectangle the same as the specified
//!				5.	Use RWindow::EndRedraw() to end the redraw cycle
//!				6.	Execute GetDrawRect again to check if the drawing rectangle is cleared back to empty
//!				7.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	1.	GetDrawRect() was called without causing panic
//!				2.	The returned rectangle is the same as expected
//!					2.1 	beyond window's redraw cycle, the drawing rectangle should be empty: TRect((0,0),(0,0))
//!					2.2 	inside window's redraw cycle, the drawing rectangle should be the same as the specified TRect((21,20),(51,50))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-0105-0001-GetDrawRect_command01
		COMMAND		win		BeginRedraw		GRAPHICS-WSERV-Window-PublicApi-0105-0001-BeginRedraw_command02
		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-0105-0001-GetDrawRect_command03
		COMMAND		win		EndRedraw
		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-0105-0001-GetDrawRect_command05

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0105






// ****************************************************************************
// RWindow Public APIs inherited from RWindowBase
// ****************************************************************************


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0201
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0201
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		Activate(): display the window and enable it to receive events
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute Activate() for the RWindow
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Activate() method called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		Activate

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0201


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0202
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0202
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetPosition(const TPoint &point): set the window (test in RWindow) position relative to its parent
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::InquireOffset
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute SetPosition set the RWindow position as the specified in test data (11,12)
//!				3.	Use InquireOffset() to check if the window position relative to its parent as specified
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetPosition() method called without causing panic
//!				2.	The offset between (0,0) and RWindow is the same as specifed (11,12)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		SetPosition		GRAPHICS-WSERV-Window-PublicApi-0202-0001-SetPosition_command01
		COMMAND		win		Position		GRAPHICS-WSERV-Window-PublicApi-0202-0001-Position_command02

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0202


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0203
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0203
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetSizeErr(const TSize &size): set the window (test in RWindow) size
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::Size
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute SetSizeErr to set the child RWindow size as the specified in test data (width=40,height=50)
//!				3.	Use Size() to check if the window size as specified
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetSizeErr() method returns KErrNone without causing panic
//!				2.	The size of child RWindow is the same as specifed (width=40,height=50)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		SetSizeErr		GRAPHICS-WSERV-Window-PublicApi-0203-0001-SetSizeErr_command01
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-0203-0001-Size_command02

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0203


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0204
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0204
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetExtentErr(const TPoint &point, const TSize &size): set the window (test in RWindow) extent
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::InquireOffset & Size
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute SetExtentErr to set the child RWindow extent as the specified test data (at (11,12) and width=40,height=50)
//!				3.	Use InquireOffset() and Size() to check if the window position and size as specified
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetExtentErr() method returns KErrNone without causing panic
//!				2.	The offset and size of the child RWindow should be the same as specified
//!					2.1	The offset between parent and child RWindow is (11,12)
//!					2.2	The size of child RWindow is width=40,height=50
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		SetExtentErr		GRAPHICS-WSERV-Window-PublicApi-0204-0001-SetExtentErr_command01
		COMMAND		win		Position		GRAPHICS-WSERV-Window-PublicApi-0204-0001-Position_command02
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-0204-0001-Size_command03

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0204


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0205
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0205
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		12/02/2007
//! @SYMTestCaseDesc		Size(): get the window (test in RWindow) current size
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::SetSizeErr
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute Size to get the current size of child RWindow, and check if it's the same as the default (screen size)
//!				3.	Use SetSizeErr() to change the RWindow size as specified (width=120, height=200)
//!				4.	Execute Size again to check if the RWindow size as specified
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Size() method called without causing panic
//!					2.1	The initial child RWindow is the same as the screen size
//!					2.2	The size of child RWindow is the same as new size specified by SetSizeErr (width=120, height=200)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-0205-0001-Size_command01
		COMMAND		win		SetSizeErr		GRAPHICS-WSERV-Window-PublicApi-0205-0001-SetSizeErr_command02
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-0205-0001-Size_command03

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0205


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0206
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0206
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		12/02/2007
//! @SYMTestCaseDesc		InquireOffset(const RWindowTreeNode &aWindow): enquire the offset between the window (test in RWindow) and another window
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::SetPosition
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute InquireOffset to get the offset between child RWindow and WindowGroup, and check if it returns the default (0,0)
//!				3.	Use SetPosition() to change the window position (11,12)
//!				4.	Execute InquireOffset again to check if the offset is the new position as specified
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	InquireOffset() method called without causing panic
//!					2.1	The initial offset between child RWindow and RWindowGroup is the same as (0,0)
//!					2.2	The offset between child RWindow and RWindowGroup is the same as new position specified by SetPosition (11,12)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		InquireOffset		GRAPHICS-WSERV-Window-PublicApi-0206-0001-InquireOffset_command01
		COMMAND		win		SetPosition		GRAPHICS-WSERV-Window-PublicApi-0206-0001-SetPosition_command02
		COMMAND		win		InquireOffset		GRAPHICS-WSERV-Window-PublicApi-0206-0001-InquireOffset_command03

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0206


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0207
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0207
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		05/07/2007
//! @SYMTestCaseDesc		PointerFilter(TUint32 aFilterMask, TUint32 aFilter): set the filter which controls which pointer events are sent to the client session (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute PointerFilter with FilerMask=EPointerFilterEnterExit|EPointerFilterMove & Filter=EPointerFilterMove
//!				3.	Close all objects used
//! @SYMTestStatus		Defined
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	PointerFilter() method called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		PointerFilter		GRAPHICS-WSERV-Window-PublicApi-0207-0001-PointerFilter_command01

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0207


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0208
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0208
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		02/07/2007
//! @SYMTestCaseDesc		SetPointerGrab(TBool aState): allow/disallow pointer grabs in a window (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute SetPointerGrab() with state=TRUE
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetPointerGrab called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		SetPointerGrab		GRAPHICS-WSERV-Window-PublicApi-0000-0001-SetPointerGrab_TRUE

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0208


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0209
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0209
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		02/07/2007
//! @SYMTestCaseDesc		ClaimPointerGrab(TBool aSendUpEvent=ETrue):  (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute ClaimPointerGrab() with sendupevent=TRUE
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	ClaimPointerGrab called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		ClaimPointerGrab	GRAPHICS-WSERV-Window-PublicApi-0000-0001-ClaimPointerGrab_TRUE

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0209


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0210
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0210
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		04/07/2007
//! @SYMTestCaseDesc		SetPointerCapture(): set the pointer capture state (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute SetPointerCapture() with flags of TCaptureFlagEnabled | TCaptureFlagDragDrop | TCaptureFlagAllGroups
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetPointerCapture called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		SetPointerCapture	GRAPHICS-WSERV-Window-PublicApi-0210-0001-SetPointerCapture_command01

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0210


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0211
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0211
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		25/06/2007
//! @SYMTestCaseDesc		SetPointerCapturePriority(TInt aPriority): set the window's pointer capture priority (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindowBase::GetPointerCapturePriority, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute SetPointerCapturePriority() to set window's pointer capture priority to 5
//!				3.	Use GetPointerCapturePriority() to check the window's pointer capture priority as specified
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Test passes with no error or panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		SetPointerCapturePriority	GRAPHICS-WSERV-Window-PublicApi-0211-0001-SetPointerCapturePriority_command01
		COMMAND		win		GetPointerCapturePriority	GRAPHICS-WSERV-Window-PublicApi-0211-0001-GetPointerCapturePriority_command02
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0211


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0212
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0212
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		25/06/2007
//! @SYMTestCaseDesc		TInt GetPointerCapturePriority(): get the window's pointer capture priority (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute GetPointerCapturePriority() and check the default window's pointer capture priority = 0
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Test passes with no error or panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		GetPointerCapturePriority	GRAPHICS-WSERV-Window-PublicApi-0212-0001-GetPointerCapturePriority_command01
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0212


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0213
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0213
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		13/02/2007
//! @SYMTestCaseDesc		SetVisible(TBool aState): set the visibility of the window (test in RWindow)
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & GetPixel, RWindowGroup::Construct, RWindowBase::SetRequiredDisplayMode & Activate, RWindow::Construct & SetColor
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	Use SetBackgroundColor to set the background color of the foreground RWindow to TRgb(255,0,0)
//!				3.	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the foreground RWindow
//!				4.	Check the drawing result: the whole screen should be the specified background color
//!				5.	Execute SetVisible to FALSE for the child RWindow
//!				6.	Use BeginRedraw & EndRedraw to redraw and display the foreground RWindow
//!				7.	Check the drawing result: the whole screen should be the background color of the background RWindow TRgb(255,255,0)
//!				8.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	1.	SetVisible() method called without causing panic
//!				2.	Check the drawing result: only check sample TRect((0,0),(10,10)) ((90,90),(100,100))
//!					2.1     before SetVisible() to FALSE, the foreground RWindow is displayed with TRgb(255,0,0)
//!					2.2     after SetVisible() to FALSE, the background RWindow is displayed with TRgb(255,255,0)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize				GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0213-0001-SetBackgroundColor_command01
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0213-0001-checkRectColor_command03
		COMMAND		win		SetVisible		GRAPHICS-WSERV-Window-PublicApi-0213-0001-SetVisible_command05
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0213-0001-checkRectColor_command07

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0213


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0214
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0214
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		13/06/2007
//! @SYMTestCaseDesc		SetShadowHeight(TInt aHeight): set a window's shadow height (test in RWindow)
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & GetPixel, RWindowGroup::Construct, RWindowBase::SetRequiredDisplayMode & Activate, RWindow::Construct & SetColor & SetSizeErr
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	Use SetBackgroundColor to set the background color of the foreground RWindow to TRgb(255,0,0)
//!					and SetSizeErr to set the child RWindow size to width=30,height=30
//!				3.	Use SetShadowDisabled to enable the foreground RWindow shadow
//!				4.	Execute SetShadowHeight to set the foreground RWindow with shadow height 1
//!				5.	Check the display of the foreground RWindow shadow
//!				6.	Execute SetShadowHeight to set the foreground RWindow with shadow height 3
//!				7.	Check the display of the foreground RWindow shadow
//!				8.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetShadowHeight() method called without causing panic
//!				2.	Check the drawing result: check the shadow area should be drawn with the color TRgb(170,170,0)
//!					2.1     when shadow height is 1, the shadow area is TRect((10+2*1,40),(40+2*1,40+2*1)) & ((40,10+2*1),,(40+2*1,40+2*1))
//!					2.2     when shadow height is 3, the shadow area is TRect((10+2*3,40),(40+2*3,40+2*3)) & ((40,10+2*3),,(40+2*3,40+2*3))
//! @SYMTestType			CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command024
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0214-0001-SetBackgroundColor_command01
		COMMAND		win		SetExtentErr			GRAPHICS-WSERV-Window-PublicApi-0214-0001-SetExtentErr_command02
		COMMAND		win		SetShadowDisabled		GRAPHICS-WSERV-Window-PublicApi-0214-0001-SetShadowDisabled_command03
		COMMAND		win		SetShadowHeight			GRAPHICS-WSERV-Window-PublicApi-0214-0001-SetShadowHeight_command04
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		win		SetShadowHeight			GRAPHICS-WSERV-Window-PublicApi-0214-0001-SetShadowHeight_command07

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0214


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0215
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0215
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		14/06/2007
//! @SYMTestCaseDesc		SetShadowDisabled(TBool aState): enable/disable whether a window casts a shadow (test in RWindow)
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & GetPixel, RWindowGroup::Construct, RWindowBase::SetRequiredDisplayMode & Activate, RWindow::Construct & SetColor & SetSizeErr
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	Use SetBackgroundColor to set the background color of the foreground RWindow to TRgb(255,0,0)
//!					and SetSizeErr to set the child RWindow size to width=30,height=30
//!				3.	Execute SetShadowDisabled to enable the foreground RWindow shadow
//!				4.	Use SetShadowHeight to set the foreground RWindow with shadow height 1
//!				5.	Check the display of the foreground RWindow shadow
//!				6.	Execute SetShadowDisabled to set disable the foreground RWindow shadow
//!				7.	Check the originally displayed foreground RWindow shadow is cleared
//!				8.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetShadowDisabled() method called without causing panic
//!				2.	Check the drawing result: only check the shadow area TRect((10+2*1,40),(40+2*1,40+2*1)) & ((40,10+2*1),,(40+2*1,40+2*1))
//!					2.1     when shadow is enabled (state=FALSE), the shadow area is drawn with TRgb(170,170,0)
//!					2.2     when shadow is disabled (state=TRUE), the shadow area is cleared, i.e. drawn with TRgb(255,255,0)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command024
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0215-0001-SetBackgroundColor_command01
		COMMAND		win		SetExtentErr			GRAPHICS-WSERV-Window-PublicApi-0215-0001-SetExtentErr_command02
		COMMAND		win		SetShadowDisabled		GRAPHICS-WSERV-Window-PublicApi-0215-0001-SetShadowDisabled_command03
		COMMAND		win		SetShadowHeight			GRAPHICS-WSERV-Window-PublicApi-0215-0001-SetShadowHeight_command04
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		win		SetShadowDisabled		GRAPHICS-WSERV-Window-PublicApi-0215-0001-SetShadowDisabled_command07

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0215


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0216
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0216
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		12/02/2007
//! @SYMTestCaseDesc		Position(): get the window (test in RWindow) position relative to its parent
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::SetPosition
//! @SYMTestActions		1.	Create and construct a foreground and background RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a RWindowGroup within the RWsSession
//!					1.3	New and construct a background RWindow as the child of the RWindowGroup
//!					1.4	New and construct a foreground RWindow as the child of the background RWindow
//!				2.	Execute Position to get the child RWindow position, and check if it returns the default (0,0)
//!				3.	Use SetPosition to change the position of the top-level RWindow to (11,12)
//!				4.	Execute Position for child RWindow again, check if the position relative to its parent remains (0,0)
//!				5.	Use SetPosition to change the position of the child RWindow to (20,30)
//!				6.	Execute Position for child RWindow again, check if the position is the same as specified
//!				7.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	Position() method called without causing panic
//!				2.	Check Position() return value for child RWindow
//!					2.1	The initial value should be the same as (0,0)
//!					2.2	If its parent window change the position, the returned position not changed
//!					2.3	If the child RWindow change the position, the returned position is changed as specified offset (20,30)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow	backwin
		CREATE_OBJECT	RWindow	win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command010
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command011

		COMMAND		win		Position		GRAPHICS-WSERV-Window-PublicApi-0216-0001-Position_command01
		COMMAND		backwin		SetPosition		GRAPHICS-WSERV-Window-PublicApi-0216-0001-SetPosition_command03
		COMMAND		win		Position		GRAPHICS-WSERV-Window-PublicApi-0216-0001-Position_command05
		COMMAND		win		SetPosition		GRAPHICS-WSERV-Window-PublicApi-0216-0001-SetPosition_command06
		COMMAND		win		Position		GRAPHICS-WSERV-Window-PublicApi-0216-0001-Position_command07

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0216


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0217
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0217
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		12/02/2007
//! @SYMTestCaseDesc		AbsPosition(): get the window (test in RWindow) absolute position
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowBase::SetPosition
//! @SYMTestActions		1.	Create and construct a foreground and background RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a RWindowGroup within the RWsSession
//!					1.3	New and construct a background RWindow as the child of the RWindowGroup
//!					1.4	New and construct a foreground RWindow as the child of the background RWindow
//!				2.	Execute AbsPosition to get the child RWindow position, and check if it returns the default (0,0)
//!				3.	Use SetPosition to change the position of the top-level RWindow to (11,12)
//!				4.	Execute AbsPosition for child RWindow again, check if the absolute position is (11,12)
//!				5.	Use SetPosition to change the position of the child RWindow to (20,30)
//!				6.	Execute AbsPosition for child RWindow again, check if the absolute position is (31,42)=(11,12)+(20,30)
//!				7.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	AbsPosition() method called without causing panic
//!				2.	Check AbsPosition() return value for child RWindow
//!					2.1	The initial value should be the same as (0,0)
//!					2.2	If its parent window change the position, the returned position is changed
//!					2.3	If the child RWindow change the position, the returned position is also changed
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow	backwin
		CREATE_OBJECT	RWindow	win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command010
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command011

		COMMAND		win		AbsPosition		GRAPHICS-WSERV-Window-PublicApi-0217-0001-AbsPosition_command01
		COMMAND		backwin		SetPosition		GRAPHICS-WSERV-Window-PublicApi-0217-0001-SetPosition_command03
		COMMAND		win		AbsPosition		GRAPHICS-WSERV-Window-PublicApi-0217-0001-AbsPosition_command05
		COMMAND		win		SetPosition		GRAPHICS-WSERV-Window-PublicApi-0217-0001-SetPosition_command06
		COMMAND		win		AbsPosition		GRAPHICS-WSERV-Window-PublicApi-0217-0001-AbsPosition_command07

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0217


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0218
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0218
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		13/02/2007
//! @SYMTestCaseDesc		SetCornerType(TCornerType aCornerType, TInt aCornerFlags=0): set the corner shape of the window (test in RWindow)
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & GetPixel, RWindowGroup::Construct, RWindowBase::SetRequiredDisplayMode & Activate, RWindow::Construct & SetColor & SetSizeErr
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1		New and connect a RWsSession
//!					1.2		New and construct a CWsScreenDevice within the RWsSession
//!					1.3		Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4		New and construct a RWindowGroup within the RWsSession
//!					1.5		New and construct a background RWindow as the child of the RWindowGroup
//!							and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6		Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7		New and construct a foreground RWindow as the child of the background RWindow
//!							and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8		SetAutoFlush to TRUE for the RWsSession
//!				2.	Use SetBackgroundColor to set the background color of the child RWindow to TRgb(255,0,0)
//!					and SetSizeErr to set the child RWindow size to width=30,height=30
//!				3.	Execute SetCornerType with corner type EWindowCorner3 and corner flag to only include bottom right
//!				4.	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the foreground RWindow
//!				5.	Check the drawing result
//!				6.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetCornerType() method returns KErrNone without causing panic
//!				2.	Check the drawing result: consider the 4 corner (width=5,height=5)
//!					2.1	inside the window except the 4 corners, it should be drawn with background color TRgb(255,0,0)
//!						TRect((5,0),(25,5)), ((0,5),(30,25)), ((5,25),(25,30))
//!					2.2	for the corners not included in the SetCornerType, it should also be drawn with background color TRgb(255,0,0)
//!						TRect((0,0),(5,5)), ((25,0),(30,5)), ((25,0),(30,0))
//!					2.3	for the corners included in the SetCornerType
//!						2.3.1	check the removed pixels, should be drawn with TRgb(255,255,0)
//!							for EWindowCorner3, check 5 pixels (29,27), (29,28), (27,29), (28,29), (29,29)
//!						2.3.2	check other pixels not removed, should be drawn with the background color TRgb(255,0,0)
//!							only check sample pixels: (29,26), (28,27), (28,27), (28,28), (27,28)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor	GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetBackgroundColor	GRAPHICS-WSERV-Window-PublicApi-0218-0001-SetBackgroundColor_command01
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-PublicApi-0218-0001-SetSize_command02
		COMMAND		win		SetCornerType		GRAPHICS-WSERV-Window-PublicApi-0218-0001-SetCornerType_command03
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0218-0001-checkRectColor_command05
		COMMAND		scrdev		checkPixels		GRAPHICS-WSERV-Window-PublicApi-0218-0001-checkPixels_command06

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0218


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0219
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0219
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		13/02/2007
//! @SYMTestCaseDesc		SetShape(const TRegion &aRegion): set the shape of the window (test in RWindow)
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & GetPixel, RWindowGroup::Construct, RWindowBase::SetRequiredDisplayMode & Activate, RWindow::Construct & SetColor
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K), and SetSize to width 100 & height 100 (smaller than background RWindow)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	Execute SetShape to set the child RWindow shape as the specified region
//!				3.	Use SetBackgroundColor to set the background color of the child RWindow to TRgb(255,0,0)
//!				4.	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the foreground RWindow
//!				5.	Check the drawing result
//!				6.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	SetShape() method returns KErrNone without causing panic
//!				2.	Check the drawing result:
//!					2.1	inside the window shape rectangles, it should be drawn with background color TRgb(255,0,0)
//!						TRect((10,10),(20,40)), ((20,20),(30,30)), ((30,10),(40,40))
//!					2.2	outside the window shape rectangles, it should also be drawn with background color TRgb(255,255,0)
//!						TRect((0,0),(50,10)), ((20,10),(30,20)), ((20,30),(30,40)), ((0,40),(50,50)), ((0,10),(10,40)), ((40,10),(50,40))
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext		GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor	GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command023
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-Setup-0003-0001-SetSize_command026
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetShape		GRAPHICS-WSERV-Window-PublicApi-0219-0001-SetShape_command01
		COMMAND		win		SetBackgroundColor	GRAPHICS-WSERV-Window-PublicApi-0219-0001-SetBackgroundColor_command02
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor		GRAPHICS-WSERV-Window-PublicApi-0219-0001-checkRectColor_command04

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0219


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0220
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0220
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		13/02/2007
//! @SYMTestCaseDesc		SetRequiredDisplayMode(TDisplayMode aMode): set required display mode of a window (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute SetRequiredDisplayMode to the specified display mode (EColor256)
//!					and check if it returns the display mode as specified
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	SetRequiredDisplayMode() method called without causing panic and the retuned value is the same as the displayed mode specified
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-PublicApi-0220-0001-SetRequiredDisplayMode_command01

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0220


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0221
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0221
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		13/02/2007
//! @SYMTestCaseDesc		DisplayMode(): get current display mode of a window (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute DisplayMode() to get current display mode of child RWindow and check if it's as expected default (EColor256)
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	DisplayMode() method called without causing panic and the retuned value is as expected default (EColor64K)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		DisplayMode		GRAPHICS-WSERV-Window-PublicApi-0221-0001-DisplayMode_command01

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0221


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0222
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0222
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		29/06/2007
//! @SYMTestCaseDesc		EnableBackup(TUint aBackupType=EWindowBackupAreaBehind): request to backup all or part of the window's contents on screen (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute EnableBackup() with backup type EWindowBackupFullScreen
//!				3.	Execute EnableBackup() back to backup type EWindowBackupAreaBehind
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	EnableBackup called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		EnableBackup		GRAPHICS-WSERV-Window-PublicApi-0000-0001-EnableBackup_EWindowBackupFullScreen
		COMMAND		win		EnableBackup		GRAPHICS-WSERV-Window-PublicApi-0000-0001-EnableBackup_EWindowBackupAreaBehind

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0222


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0223
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0223
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		28/06/2007
//! @SYMTestCaseDesc		RequestPointerRepeatEvent(TTimeIntervalMicroSeconds32 aTime, const TRect &aRect): request a pointer repeat event (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute RequestPointerRepeatEvent() to request a pointer repeat event within TRect((10,10),(100,100)) and 1000000 micro seconds
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	RequestPointerRepeatEvent called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		RequestPointerRepeatEvent	GRAPHICS-WSERV-Window-PublicApi-0223-0001-RequestPointerRepeatEvent_command01

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0223


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0224
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0224
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		28/06/2007
//! @SYMTestCaseDesc		CancelPointerRepeatEventRequest(): cancel a request for a pointer repeat event (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindowBase::RequestPointerRepeatEvent, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Use RequestPointerRepeatEvent() to request a pointer repeat event within TRect((10,10),(100,100)) and 1000000 micro seconds
//!				3.	Execute CancelPointerRepeatEventRequest() to cancel the request
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	CancelPointerRepeatEventRequest called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		RequestPointerRepeatEvent		GRAPHICS-WSERV-Window-PublicApi-0224-0001-RequestPointerRepeatEvent_command01
		COMMAND		win		CancelPointerRepeatEventRequest

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0224


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0225
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0225
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		26/06/2007
//! @SYMTestCaseDesc		TInt AllocPointerMoveBuffer(TInt aMaxPoints, TUint aFlags): allocate a buffer for storing pointer movements (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute AllocPointerMoveBuffer() to allocate pointer buffer for 1000 points and flags 0
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	AllocPointerMoveBuffer method returns KErrNone without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		AllocPointerMoveBuffer	GRAPHICS-WSERV-Window-PublicApi-0225-0001-AllocPointerMoveBuffer_command01

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0225


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0226
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0226
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		26/06/2007
//! @SYMTestCaseDesc		FreePointerMoveBuffer(): free the pointer move buffer (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindowBase::AllocPointerMoveBuffer, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Use AllocPointerMoveBuffer() to allocate pointer buffer for 1000 points and flags 0
//!				3.	Execute FreePointerMoveBuffer() to free the allocated pointer buffer
//!				4.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	FreePointerMoveBuffer called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		AllocPointerMoveBuffer	GRAPHICS-WSERV-Window-PublicApi-0226-0001-AllocPointerMoveBuffer_command01
		COMMAND		win		FreePointerMoveBuffer

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0226


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0227
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0227
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		27/06/2007
//! @SYMTestCaseDesc		EnablePointerMoveBuffer(): enable the pointer move buffer for receiving pointer move events (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindowBase::AllocPointerMoveBuffer & FreePointerMoveBuffer, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Use AllocPointerMoveBuffer() to allocate pointer buffer for 1000 points and flags 0
//!				3.	Execute EnablePointerMoveBuffer() to enable the pointer move buffer for receiving pointer move events
//!				4.	Use FreePointerMoveBuffer() to free the allocated pointer buffer
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	EnablePointerMoveBuffer called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		AllocPointerMoveBuffer	GRAPHICS-WSERV-Window-PublicApi-0227-0001-AllocPointerMoveBuffer_command01
		COMMAND		win		EnablePointerMoveBuffer
		COMMAND		win		FreePointerMoveBuffer

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0227


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0228
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0228
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		27/06/2007
//! @SYMTestCaseDesc		DisablePointerMoveBuffer(): instruct WSERV to stop adding pointer events to the pointer move buffer (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindowBase::AllocPointerMoveBuffer & EnablePointerMoveBuffer & FreePointerMoveBuffer, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Use AllocPointerMoveBuffer() to allocate pointer buffer for 1000 points and flags 0
//!				3.	Use EnablePointerMoveBuffer() to enable the pointer move buffer for receiving pointer move events
//!				4.	Execute DisablePointerMoveBuffer() to instruct WSERV to stop adding pointer events to the pointer move buffer
//!				5.	Use FreePointerMoveBuffer() to free the allocated pointer buffer
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	DisablePointerMoveBuffer called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		AllocPointerMoveBuffer		GRAPHICS-WSERV-Window-PublicApi-0228-0001-AllocPointerMoveBuffer_command01
		COMMAND		win		EnablePointerMoveBuffer
		COMMAND		win		DisablePointerMoveBuffer
		COMMAND		win		FreePointerMoveBuffer

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0228


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0230
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0230
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		27/06/2007
//! @SYMTestCaseDesc		DiscardPointerMoveBuffer(): discard all events in the pointer move buffer (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute DiscardPointerMoveBuffer() to discard all events in the pointer move buffer
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	DiscardPointerMoveBuffer called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		DiscardPointerMoveBuffer

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0230


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0231
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0231
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		03/07/2007
//! @SYMTestCaseDesc		AddKeyRect(const TRect &aRect, TInt aScanCode, TBool aActivatedByPointerSwitchOn): add an on-screen key rectangle (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute AddKeyRect() to add an on-screen key rectangle
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	AddKeyRect method returns KErrNone without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		AddKeyRect		GRAPHICS-WSERV-Window-PublicApi-0231-0001-AddKeyRect_command01

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0231


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0232
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0232
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		03/07/2007
//! @SYMTestCaseDesc		RemoveAllKeyRects(): remove all the on-screen keys that have been added to this window (test in RWindow)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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
//!				2.	Execute RemoveAllKeyRects() to remove all the on-screen keys
//!				3.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	RemoveAllKeyRects method called without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008

		COMMAND		win		RemoveAllKeyRects

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0232


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0234
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0234
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		20/06/2007
//! @SYMTestCaseDesc		FadeBehind(TBool aFade): set whether or not all windows behind the current window, in the same window group, should be faded or unfaded (test in RWindow)
//!				Uses API elements: RWsSession::Connect & SetAutoFlush, CWsScreenDevice::Construct & GetPixel, RWindowGroup::Construct, RWindowBase::SetRequiredDisplayMode & Activate, RWindow::Construct & SetColor
//! @SYMTestActions		1.	Setup and display a background RWindow and a foreground RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a CWsScreenDevice within the RWsSession
//!					1.3	Create a CWindowGc within the CWsScreenDevice (use CreateContext)
//!					1.4	New and construct a RWindowGroup within the RWsSession
//!					1.5	New and construct a background RWindow as the child of the RWindowGroup
//!						and SetRequiredDisplayMode (to EColor4K), SetBackgroundColor to TRgb(255,255,0) for the RWindow
//!					1.6	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the background RWindow
//!					1.7	New and construct a foreground RWindow as the child of the background RWindow
//!						and SetRequiredDisplayMode (to EColor4K)
//!					1.8	SetAutoFlush to TRUE for the RWsSession
//!				2.	Use SetBackgroundColor to set the background color of the foreground RWindow to green TRgb(0,0,255)
//!					and SetExtentErr to set the foreground RWindow to (10,10) with height=30, width=30
//!				3.	Activate the CWindowGc to the RWindow, and BeginRedraw & EndRedraw to display the foreground RWindow
//!				4.	check both the foreground and background RWindow are displayed correctly
//!				5.	Execute FadeBehind() to set the faded flag of the foreground RWindow to TRUE
//!				6.	check the foreground RWindow is still displayed the same, but the background RWindow is displayed with faded
//!				7.	Destruct and close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		High
//! @SYMTestExpectedResults	1.	FadeBehind() method called without causing panic
//!				2.	Check the drawing result: the whole foreground RWindow
//!					and parts of background RWindow: TRect((0,0),(50,10)), ((0,40),(50,50)), ((0,10),(10,40)), ((40,10),(50,40))
//!					2.1	before set FadeBehind to TRUE for the foreground RWindow
//!						the foreground RWindow is drawn with TRgb(0,0,255) and background RWindow is drawn with TRgb(255,255,0)
//!					2.2	before set FadeBehind to TRUE for the foreground RWindow
//!						the foreground RWindow is still TRgb(0,0,255) but background RWindow is faded and drawn with TRgb(255,255,136)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	CWsScreenDevice	scrdev
		CREATE_OBJECT	CWindowGc	wingc
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		backwin
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		scrdev		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command004
		COMMAND		scrdev		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command005
		COMMAND		scrdev		CreateContext			GRAPHICS-WSERV-Window-Setup-0003-0001-CreateContext_command006
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command009
		COMMAND		backwin		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command011
		COMMAND		backwin		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command012
		COMMAND		backwin		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command013
		COMMAND		backwin		SetBackgroundColor		GRAPHICS-WSERV-Window-Setup-0003-0001-SetBackgroundColor_command014
		COMMAND		backwin		Activate
		COMMAND		backwin		BeginRedraw
		COMMAND		backwin		EndRedraw
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0003-0001-new_command022
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0003-0001-Construct_command024
		COMMAND		win		SetRequiredDisplayMode		GRAPHICS-WSERV-Window-Setup-0003-0001-SetRequiredDisplayMode_command025
		COMMAND		ws		SetAutoFlush			GRAPHICS-WSERV-Window-Setup-0003-0001-SetAutoFlush_command027

		COMMAND		win		SetBackgroundColor		GRAPHICS-WSERV-Window-PublicApi-0234-0001-SetBackgroundColor_command01
		COMMAND		win		SetExtentErr			GRAPHICS-WSERV-Window-PublicApi-0234-0001-SetExtentErr_command02
		COMMAND		win		Activate
		COMMAND		win		BeginRedraw
		COMMAND		win		EndRedraw
		COMMAND		scrdev		checkRectColor			GRAPHICS-WSERV-Window-PublicApi-0234-0001-checkRectColor_command03
		COMMAND		win		FadeBehind			GRAPHICS-WSERV-Window-PublicApi-0000-0001-FadeBehind_TRUE

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingc		~
		COMMAND		scrdev		~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0234


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0235
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0235
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		18/06/2007
//! @SYMTestCaseDesc		IsFaded(): test whether the current window (test in RWindow) is faded
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindowBase::FadeBehind, RWindow::Construct
//! @SYMTestActions		1.	Create and construct a foreground and background RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a RWindowGroup within the RWsSession
//!					1.3	New and construct a background RWindow as the child of the RWindowGroup
//!					1.4	New and construct a foreground RWindow as the child of the background RWindow
//!				2.	Execute IsFaded() to check the default faded flag of both foreground and background RWindow
//!				3.	Use FadeBehind() to set the faded flag of the foreground RWindow to TRUE
//!				4.	Execute IsFaded() to check the faded flag of both foreground and background RWindow
//!				5.	Use FadeBehind() to set the faded flag of the foreground RWindow to FALSE
//!				6.	Execute IsFaded() to check the faded flag of both foreground and background RWindow
//!				7.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	1.	IsFaded() method called without causing panic
//!				2.	IsFaded() returns the expected faded flag of the window
//!					2.1	the default faded flag for RWindow is FALSE
//!					2.2	after set FadeBehind to TRUE for the foreground RWindow
//!						the background RWindow is TRUE, and the foreground RWindow is still FALSE
//!					2.3	after set FadeBehind to FALSE for the foreground RWindow
//!						the background RWindow is changed back to FALSE, and the foreground RWindow is still FALSE
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow	backwin
		CREATE_OBJECT	RWindow	win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command010
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command011

		COMMAND		backwin		IsFaded			GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE
		COMMAND		win		IsFaded			GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE
		COMMAND		win		FadeBehind		GRAPHICS-WSERV-Window-PublicApi-0000-0001-FadeBehind_TRUE
		COMMAND		backwin		IsFaded			GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_TRUE
		COMMAND		win		IsFaded			GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE
		COMMAND		win		FadeBehind		GRAPHICS-WSERV-Window-PublicApi-0000-0001-FadeBehind_FALSE
		COMMAND		backwin		IsFaded			GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE
		COMMAND		win		IsFaded			GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0235


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0236
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0236
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		19/06/2007
//! @SYMTestCaseDesc		IsNonFading(): test whether the current window (test in RWindow) is non-fading
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindowTreeNode::SetNonFading, RWindow::Construct
//! @SYMTestActions		1.	Create and construct a foreground and background RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a RWindowGroup within the RWsSession
//!					1.3	New and construct a background RWindow as the child of the RWindowGroup
//!					1.4	New and construct a foreground RWindow as the child of the background RWindow
//!				2.	Execute IsNonFading() to check the default faded flag of both foreground and background RWindow
//!				3.	Use SetNonFading() to set the non-fading flag of the foreground RWindow to TRUE
//!				4.	Execute IsFaded() to check the faded flag of both foreground and background RWindow
//!				5.	Use SetNonFading() to set the non-fading flag of the foreground RWindow to FALSE
//!				6.	Execute IsFaded() to check the faded flag of both foreground and background RWindow
//!				7.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	1.	IsNonFading() method called without causing panic
//!				2.	IsNonFading() returns the expected non-fading flag of the window
//!					2.1	the default faded flag for RWindow is FALSE
//!					2.2	after set SetNonFading to TRUE for the foreground RWindow
//!						the background RWindow is still FALSE, and the foreground RWindow is TRUE
//!					2.3	after set SetNonFading to FALSE for the foreground RWindow
//!						the background RWindow is still FALSE, and the foreground RWindow is changed to FALSE
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow	backwin
		CREATE_OBJECT	RWindow	win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command010
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command011

		COMMAND		backwin		IsNonFading		GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE
		COMMAND		win		IsNonFading		GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE
		COMMAND		win		SetNonFading		GRAPHICS-WSERV-Window-PublicApi-0000-0001-SetNonFading_TRUE
		COMMAND		backwin		IsNonFading		GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE
		COMMAND		win		IsNonFading		GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_TRUE
		COMMAND		win		SetNonFading		GRAPHICS-WSERV-Window-PublicApi-0000-0001-SetNonFading_FALSE
		COMMAND		backwin		IsNonFading		GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE
		COMMAND		win		IsNonFading		GRAPHICS-WSERV-Window-PublicApi-0000-0001-expected_FALSE

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0236


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0237
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0237
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		12/02/2007
//! @SYMTestCaseDesc		MoveToGroup(TInt aIdentifier): move this window (test in RWindow) to another window group
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct, RWindowTreeNode::Parent
//! @SYMTestActions		1.	Create and construct a foreground and background RWindow to test
//!					1.1	New and connect a RWsSession
//!					1.2	New and construct a RWindowGroup within the RWsSession
//!					1.3	New and construct a background RWindow as the child of the RWindowGroup
//!					1.4	New and construct a foreground RWindow as the child of the background RWindow
//!				2.	Construct a new RWindowGroup as the destination window group to move
//!				3.	Use RWindowTreeNode::Parent to check if the parent node of the top-level RWindow is the old window group
//!				4.	Execute MoveToGroup() to move top-level RWindow to the new RWindowGroup
//!				5.	Use RWindowTreeNode::Parent() to check the parent node of the top-level RWindow is changed to the new window group
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	1.	MoveToGroup() method returns KErrNone without causing panic
//!					1.1	before MoveToGroup, the parent node of the top-level RWindow is the old window group (id 1)
//!					1.2	after MoveToGroup, the parent node of the top-level RWindow is the new window group (id 100)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow	backwin
		CREATE_OBJECT	RWindow	win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		backwin		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		backwin		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command010
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command011

		CREATE_OBJECT	RWindowGroup	wingrp1
		COMMAND		wingrp1		new			GRAPHICS-WSERV-Window-PublicApi-0237-0001-new_command01
		COMMAND		wingrp1		Construct		GRAPHICS-WSERV-Window-PublicApi-0237-0001-Construct_command02
		COMMAND		backwin		Parent			GRAPHICS-WSERV-Window-PublicApi-0237-0001-Parent_command04
		COMMAND		backwin		MoveToGroup		GRAPHICS-WSERV-Window-PublicApi-0237-0001-MoveToGroup_command05
		COMMAND		backwin		Parent			GRAPHICS-WSERV-Window-PublicApi-0237-0001-Parent_command06

		COMMAND		win		Close
		COMMAND		backwin		Close
		COMMAND		wingrp		Close
		COMMAND		wingrp1		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0237


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0238
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0238
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		27/06/2007
//! @SYMTestCaseDesc		PointerFilter(TUint32 aFilterMask, TUint32 aFilter): retrieve events from the pointer move buffer (test in RWindow)
//!				Uses API elements: RWsSession::Connect & EventReady & GetEvent & Flush & SimulateRawEvent, RWindowGroup::Construct, RWindow::Construct & Activate & PointerFilter & TWsEvent::Type & Handle
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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	use Activate() RWindow to display and enable to receive events
//!				2.	Use EventReady() & GetEvent() to wait and get TWsEvent, and check its type=EEventFocusGained and to RWindowGroup (handle=1)
//!				3.	Use PointerFilter() to make RWindow not filter out EPointerMoveEvents|EPointerFilterDrag|EPointerFilterEnterExit
//!				4.	Use SimulateRawEvent() to send a EButton1Down event (within RWindow area)
//!				5.	Use EventReady() & GetEvent() to wait and get TWsEvent, and check its type=EEventPointerEnter and to RWindow (handle=2)
//!				6.	Use EventReady() & GetEvent() to wait and get TWsEvent, and check its type=EEventPointer and to RWindow (handle=2)
//!				7.	Use SimulateRawEvent() to send a EButton1Up event (within RWindow area)
//!				9.	Use EventReady() & GetEvent() to wait and get TWsEvent, and check its type=EEventPointer and to RWindow (handle=2)
//!				10.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	All events as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	TWsEvent	we
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		we		new

		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005

		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		SetExtentErr			GRAPHICS-WSERV-Window-PublicApi-0238-0001-SetExtentErr_command01
		COMMAND		win		Activate
		COMMAND		ws		Flush
		COMMAND		ws		EventReady
		OUTSTANDING
		COMMAND		ws		GetEvent			GRAPHICS-WSERV-Window-PublicApi-0238-0001-GetEvent_command03
		COMMAND		we		Type				GRAPHICS-WSERV-Window-PublicApi-0238-0001-Type_command04
		COMMAND		we		Handle				GRAPHICS-WSERV-Window-PublicApi-0238-0001-Handle_command05

		COMMAND		ws		PurgePointerEvents
		COMMAND		ws		Flush
		COMMAND		win		PointerFilter			GRAPHICS-WSERV-Window-PublicApi-0238-0001-PointerFilter_command01
		COMMAND		ws		SimulateRawEvent		GRAPHICS-WSERV-Window-PublicApi-0238-0001-SimulateRawEvent_command02
		COMMAND		ws		Flush
		COMMAND		ws		EventReady
		OUTSTANDING
		COMMAND		ws		GetEvent			GRAPHICS-WSERV-Window-PublicApi-0238-0001-GetEvent_command03
		COMMAND		we		Type				GRAPHICS-WSERV-Window-PublicApi-0238-0001-Type_command06
		COMMAND		we		Handle				GRAPHICS-WSERV-Window-PublicApi-0238-0001-Handle_command07
		COMMAND		ws		EventReady
		OUTSTANDING
		COMMAND		ws		GetEvent			GRAPHICS-WSERV-Window-PublicApi-0238-0001-GetEvent_command03
		COMMAND		we		Type				GRAPHICS-WSERV-Window-PublicApi-0238-0001-Type_command08
		COMMAND		we		Handle				GRAPHICS-WSERV-Window-PublicApi-0238-0001-Handle_command07

		COMMAND		ws		SimulateRawEvent		GRAPHICS-WSERV-Window-PublicApi-0238-0001-SimulateRawEvent_command03
		COMMAND		ws		Flush
		COMMAND		ws		EventReady
		OUTSTANDING
		COMMAND		ws		GetEvent			GRAPHICS-WSERV-Window-PublicApi-0238-0001-GetEvent_command03
		COMMAND		we		Type				GRAPHICS-WSERV-Window-PublicApi-0238-0001-Type_command08
		COMMAND		we		Handle				GRAPHICS-WSERV-Window-PublicApi-0238-0001-Handle_command07

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0238


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0239
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0239
//! @SYMAPI			RWindowBase
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		27/06/2007
//! @SYMTestCaseDesc		RetrievePointerMoveBuffer(TDes8 &aBuf): retrieve events from the pointer move buffer (test in RWindow)
//!				Uses API elements: RWsSession::Connect & EventReady & GetEvent & Flush & SimulateRawEvent, RWindowGroup::Construct, RWindow::Construct & Activate & PointerFilter & AllocPointerMoveBuffer & EnablePointerMoveBuffer & DisablePointerMoveBuffer & FreePointerMoveBuffer, TWsEvent::Type & Handle
//! @SYMTestActions		1.	Setup a simple RWindow to test
//!					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	use Activate() RWindow to display and enable to receive events
//!				2.	Use EventReady() & GetEvent() to wait and get TWsEvent, and check its type=EEventFocusGained and to RWindowGroup (handle=1)
//!				3.	Use PointerFilter() to make RWindow not filter out EPointerMoveEvents|EPointerFilterDrag|EPointerFilterEnterExit
//!				4.	Use AllocPointerMoveBuffer() to allicate a 5 points buffer and EnablePointerMoveBuffer()
//!				5.	Use SimulateRawEvent() to send 3 EPointerMove events
//!				6.	Use EventReady() & GetEvent() to wait and get TWsEvent, and check its type=EEventPointerBufferReady and to RWindow (handle=2)
//!				7.	Execute RetrievePointerMoveBuffer() to retrieve events from the pointer move buffer (with 5 points buffer)
//!					and check if it retrieved the same as the 3 EPointerMove events
//!				8.	Use DisablePointerMoveBuffer() and FreePointerMoveBuffer to disable and free the pointer move buffer
//!				9.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	RetrievePointerMoveBuffer returns KErrNone without causing panic, and retrive the points as expected
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	TWsEvent	we
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		we		new

		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005

		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		SetExtentErr			GRAPHICS-WSERV-Window-PublicApi-0239-0001-SetExtentErr_command01
		COMMAND		win		Activate
		COMMAND		ws		Flush
		COMMAND		ws		EventReady
		OUTSTANDING
		COMMAND		ws		GetEvent			GRAPHICS-WSERV-Window-PublicApi-0239-0001-GetEvent_command03
		COMMAND		we		Type				GRAPHICS-WSERV-Window-PublicApi-0239-0001-Type_command04
		COMMAND		we		Handle				GRAPHICS-WSERV-Window-PublicApi-0239-0001-Handle_command05

		COMMAND		ws		PurgePointerEvents
		COMMAND		win		PointerFilter			GRAPHICS-WSERV-Window-PublicApi-0239-0001-PointerFilter_command07
		COMMAND		win		AllocPointerMoveBuffer		GRAPHICS-WSERV-Window-PublicApi-0239-0001-AllocPointerMoveBuffer_command09
		COMMAND		win		EnablePointerMoveBuffer
		COMMAND		win		DiscardPointerMoveBuffer
		COMMAND		ws		SimulateRawEvent		GRAPHICS-WSERV-Window-PublicApi-0239-0001-SimulateRawEvent_command10
		COMMAND		ws		SimulateRawEvent		GRAPHICS-WSERV-Window-PublicApi-0239-0001-SimulateRawEvent_command11
		COMMAND		ws		SimulateRawEvent		GRAPHICS-WSERV-Window-PublicApi-0239-0001-SimulateRawEvent_command12
		COMMAND		ws		SimulateRawEvent		GRAPHICS-WSERV-Window-PublicApi-0239-0001-SimulateRawEvent_command13
		COMMAND		ws		SimulateRawEvent		GRAPHICS-WSERV-Window-PublicApi-0239-0001-SimulateRawEvent_command14
		COMMAND		ws		EventReady
		OUTSTANDING
		COMMAND		ws		GetEvent			GRAPHICS-WSERV-Window-PublicApi-0239-0001-GetEvent_command03
		COMMAND		we		Type				GRAPHICS-WSERV-Window-PublicApi-0239-0001-Type_command15
		COMMAND		we		Handle				GRAPHICS-WSERV-Window-PublicApi-0239-0001-Handle_command06
		COMMAND		ws		EventReady
		OUTSTANDING
		COMMAND		ws		GetEvent			GRAPHICS-WSERV-Window-PublicApi-0239-0001-GetEvent_command03
		COMMAND		we		Type				GRAPHICS-WSERV-Window-PublicApi-0239-0001-Type_command16
		COMMAND		we		Handle				GRAPHICS-WSERV-Window-PublicApi-0239-0001-Handle_command06

		COMMAND		ws		EventReady
		OUTSTANDING
		COMMAND		ws		GetEvent			GRAPHICS-WSERV-Window-PublicApi-0239-0001-GetEvent_command03
		COMMAND		we		Type				GRAPHICS-WSERV-Window-PublicApi-0239-0001-Type_command17
		COMMAND		we		Handle				GRAPHICS-WSERV-Window-PublicApi-0239-0001-Handle_command06
		COMMAND		win		RetrievePointerMoveBuffer	GRAPHICS-WSERV-Window-PublicApi-0239-0001-RetrievePointerMoveBuffer_command18
		COMMAND		win		DisablePointerMoveBuffer
		COMMAND		win		FreePointerMoveBuffer

		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0239






// ****************************************************************************
// RWindow Public APIs implemented for MWsClientClass
// ****************************************************************************

START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0401
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-0401
//! @SYMAPI			MWsClientClass
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		18/12/2006
//! @SYMTestCaseDesc		WsHandle: get the server side handle (test in RWindow)
//!				Uses API elements: MWsClientClass::WsHandle, RWsSession::new & Connect & Close, RWindowGroup::new & Construct & Close, RWindow::new & Construct & Close
//! @SYMTestActions		1.	Create and connect a RWsSession object
//!				2.	Create and construct a RWindowGroup within the RWsSession
//!				3.	Create a RWindow as the child of the RWindowGroup
//!				4.	Execute WsHandle to get RWindow server side handle and check if it's zero before construction
//!				5.	Construct the RWindow object
//!				6.	Execute WsHandle to get RWindow server side handle and check if it's non-zero after construction
//!				7.	Close the RWindow object
//!				8.	Execute WsHandle to get RWindow server side handle and check if it's zero again after close
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get the server side handle of RWindow without causing panic
//!				and its value is zero before construction, non-zero after construction, back to zero after close
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		WsHandle		GRAPHICS-WSERV-Window-PublicApi-0401-0001-WsHandle_expected0
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		WsHandle		GRAPHICS-WSERV-Window-PublicApi-0401-0001-WsHandle_expectnot0
		COMMAND		win		Close
		COMMAND		win		WsHandle		GRAPHICS-WSERV-Window-PublicApi-0401-0001-WsHandle_expected0
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-0401







// ****************************************************************************
// RWindow Public APIs inherited from RWindowTreeNode
// ****************************************************************************
//-----------------------------------------------------------------
// RWindowGroup wingrp_100
//  +- RBlankWindow bnkwin_110
//  |   +- RBlankWindow bnkwin_111
//  |   +- RWindow win_112
//  +- RWindow win_120
//      +- RWindow win_121
//      +- RWindow win_122
//      +- RBankWindow bnkwin_123
//


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3001
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3001
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		Close(): close the node
//!				Uses API elements: RWsSession::Connect, RWindowGroup, RBlankWindow, RWindow::Construct
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Closes all window nodes by using Close() and return KErrNone if successed.
//!				9.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are closed without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3001


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3002
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3002
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		19/12/2006
//! @SYMTestCaseDesc		Destroy(): Closes and deletes the node.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Destroy all window nodes by using Destroy() and return KErrNone if successed.
//!				9.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are destoried without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	Destroy
		COMMAND		bnkwin_123	~
		COMMAND		win_122		Destroy
		COMMAND		win_122		~
		COMMAND		win_121		Destroy
		COMMAND		win_121		~
		COMMAND		win_120		Destroy
		COMMAND		win_120		~
		COMMAND		win_112		Destroy
		COMMAND		win_112		~
		COMMAND		bnkwin_111	Destroy
		COMMAND		bnkwin_111	~
		COMMAND		bnkwin_110	Destroy
		COMMAND		bnkwin_110	~
		COMMAND		wingrp_100	Destroy
		COMMAND		wingrp_100	~
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3002


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3003
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3003
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		Parent(): get the client handle id of the node's parent
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, Parent
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Get the client handle id of the node's parent by using Parent() and return handle ID for the parent, or zero for window groups if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with handle ID for the parent, or zero for window groups without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	Parent			GRAPHICS-WSERV-Window-PublicApi-3003-0001-Parent_command002
		COMMAND		win_122		Parent			GRAPHICS-WSERV-Window-PublicApi-3003-0001-Parent_command004
		COMMAND		win_121		Parent			GRAPHICS-WSERV-Window-PublicApi-3003-0001-Parent_command006
		COMMAND		win_120		Parent			GRAPHICS-WSERV-Window-PublicApi-3003-0001-Parent_command008
		COMMAND		win_112		Parent			GRAPHICS-WSERV-Window-PublicApi-3003-0001-Parent_command010
		COMMAND		bnkwin_111	Parent			GRAPHICS-WSERV-Window-PublicApi-3003-0001-Parent_command012
		COMMAND		bnkwin_110	Parent			GRAPHICS-WSERV-Window-PublicApi-3003-0001-Parent_command014
		COMMAND		wingrp_100	Parent			GRAPHICS-WSERV-Window-PublicApi-3003-0001-Parent_command016

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3003


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3004
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3004
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		PrevSibling(): get the client handle id of the previous node in the sibling list
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, PrevSibling
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Get the client handle id of previous node in the sibling list by using PrevSibling() and return handle ID for the previous sibling, or zero if no previous sibling exists if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with handle ID for the previous sibling, or zero if no previous sibling exists without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	PrevSibling		GRAPHICS-WSERV-Window-PublicApi-3004-0001-PrevSibling_command002
		COMMAND		win_122		PrevSibling		GRAPHICS-WSERV-Window-PublicApi-3004-0001-PrevSibling_command004
		COMMAND		win_121		PrevSibling		GRAPHICS-WSERV-Window-PublicApi-3004-0001-PrevSibling_command006
		COMMAND		win_120		PrevSibling		GRAPHICS-WSERV-Window-PublicApi-3004-0001-PrevSibling_command008
		COMMAND		win_112		PrevSibling		GRAPHICS-WSERV-Window-PublicApi-3004-0001-PrevSibling_command010
		COMMAND		bnkwin_111	PrevSibling		GRAPHICS-WSERV-Window-PublicApi-3004-0001-PrevSibling_command012
		COMMAND		bnkwin_110	PrevSibling		GRAPHICS-WSERV-Window-PublicApi-3004-0001-PrevSibling_command014
		COMMAND		wingrp_100	PrevSibling		GRAPHICS-WSERV-Window-PublicApi-3004-0001-PrevSibling_command016

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3004


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3005
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3005
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		NextSibling(): get the client handle id of the next node in the sibling list
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, NextSibling
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Get the client handle id of the next node in the sibling list by using NextSibling() and return window handle of next sibling, or 0 if no next sibling exists if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with window handle of next sibling, or 0 if no next sibling exists without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	NextSibling		GRAPHICS-WSERV-Window-PublicApi-3005-0001-NextSibling_command002
		COMMAND		win_122		NextSibling		GRAPHICS-WSERV-Window-PublicApi-3005-0001-NextSibling_command004
		COMMAND		win_121		NextSibling		GRAPHICS-WSERV-Window-PublicApi-3005-0001-NextSibling_command006
		COMMAND		win_120		NextSibling		GRAPHICS-WSERV-Window-PublicApi-3005-0001-NextSibling_command008
		COMMAND		win_112		NextSibling		GRAPHICS-WSERV-Window-PublicApi-3005-0001-NextSibling_command010
		COMMAND		bnkwin_111	NextSibling		GRAPHICS-WSERV-Window-PublicApi-3005-0001-NextSibling_command012
		COMMAND		bnkwin_110	NextSibling		GRAPHICS-WSERV-Window-PublicApi-3005-0001-NextSibling_command014
		COMMAND		wingrp_100	NextSibling		GRAPHICS-WSERV-Window-PublicApi-3005-0001-NextSibling_command016

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3005


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3006
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3006
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		Child(): get the client handle id of the nodes' first child
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, Child
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Get the client handle id of the nodes' first child by using Child() and return the client handle of the child node that currently has ordinal position 0. This is 0 if there isn't a child if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the client handle of the child node that currently has ordinal position 0. This is 0 if there isn't a child without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	Child			GRAPHICS-WSERV-Window-PublicApi-3006-0001-Child_command002
		COMMAND		win_122		Child			GRAPHICS-WSERV-Window-PublicApi-3006-0001-Child_command004
		COMMAND		win_121		Child			GRAPHICS-WSERV-Window-PublicApi-3006-0001-Child_command006
		COMMAND		win_120		Child			GRAPHICS-WSERV-Window-PublicApi-3006-0001-Child_command008
		COMMAND		win_112		Child			GRAPHICS-WSERV-Window-PublicApi-3006-0001-Child_command010
		COMMAND		bnkwin_111	Child			GRAPHICS-WSERV-Window-PublicApi-3006-0001-Child_command012
		COMMAND		bnkwin_110	Child			GRAPHICS-WSERV-Window-PublicApi-3006-0001-Child_command014
		COMMAND		wingrp_100	Child			GRAPHICS-WSERV-Window-PublicApi-3006-0001-Child_command016

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3006


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3007
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3007
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		OrdinalPriority(): Gets the ordinal priority of the specified window.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, OrdinalPriority
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Get the ordinal priority of the specified window by using OrdinalPriority() and return the ordinal priority of the specified window if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the ordinal priority of the specified window without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3007-0001-OrdinalPriority_command002
		COMMAND		win_122		OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3007-0001-OrdinalPriority_command004
		COMMAND		win_121		OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3007-0001-OrdinalPriority_command006
		COMMAND		win_120		OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3007-0001-OrdinalPriority_command008
		COMMAND		win_112		OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3007-0001-OrdinalPriority_command010
		COMMAND		bnkwin_111	OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3007-0001-OrdinalPriority_command012
		COMMAND		bnkwin_110	OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3007-0001-OrdinalPriority_command014
		COMMAND		wingrp_100	OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3007-0001-OrdinalPriority_command016

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3007


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3008
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3008
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		OrdinalPosition(): Gets the current ordinal position of the window tree node.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, OrdinalPosition
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Get the current ordinal position of the window tree node by using OrdinalPosition() and return the window's ordinal position if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the window's ordinal position without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3008-0001-OrdinalPosition_command002
		COMMAND		win_122		OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3008-0001-OrdinalPosition_command004
		COMMAND		win_121		OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3008-0001-OrdinalPosition_command006
		COMMAND		win_120		OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3008-0001-OrdinalPosition_command008
		COMMAND		win_112		OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3008-0001-OrdinalPosition_command010
		COMMAND		bnkwin_111	OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3008-0001-OrdinalPosition_command012
		COMMAND		bnkwin_110	OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3008-0001-OrdinalPosition_command014
		COMMAND		wingrp_100	OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3008-0001-OrdinalPosition_command016

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3008


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3009
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3009
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		FullOrdinalPosition(): Get the current full ordinal position of a window.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, FullOrdinalPosition
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Get the current full ordinal position of a window by using FullOrdinalPosition() and return the window's full ordinal position if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the window's full ordinal position without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	FullOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3009-0001-FullOrdinalPosition_command002
		COMMAND		win_122		FullOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3009-0001-FullOrdinalPosition_command004
		COMMAND		win_121		FullOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3009-0001-FullOrdinalPosition_command006
		COMMAND		win_120		FullOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3009-0001-FullOrdinalPosition_command008
		COMMAND		win_112		FullOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3009-0001-FullOrdinalPosition_command010
		COMMAND		bnkwin_111	FullOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3009-0001-FullOrdinalPosition_command012
		COMMAND		bnkwin_110	FullOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3009-0001-FullOrdinalPosition_command014

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3009


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3010
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3010
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetOrdinalPosition(): Sets the ordinal position of a window.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetOrdinalPosition
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets the ordinal position of a window by using SetOrdinalPosition() and return the window's new ordinal position if successed.
//!				9.	Get the current ordinal position of the window tree node by using OrdinalPosition() and return the window's ordinal position if successed.
//!				10.	Verifies the window's ordinal position is same as the setting of the ordinal position of a window if it is same and successed.
//!				11.	Close all window nodes by using Close() and return KErrNone if successed.
//!				12.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the window's ordinal position and same as setting of ordinal position without causing panic.
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3010-0001-SetOrdinalPosition_command002
		COMMAND		win_122		SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3010-0001-SetOrdinalPosition_command004
		COMMAND		win_121		SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3010-0001-SetOrdinalPosition_command006
		COMMAND		bnkwin_123	OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3010-0001-OrdinalPosition_command008
		COMMAND		win_122		OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3010-0001-OrdinalPosition_command010
		COMMAND		win_121		OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3010-0001-OrdinalPosition_command012

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3010


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3011
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3011
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetOrdinalPosition(): Sets the ordinal position and ordinal priority of a window.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetOrdinalPosition
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets the ordinal position and ordinal priority of a window by using SetOrdinalPosition() and return the window's new ordinal position if successed.
//!				9.	Get the current ordinal position of the window tree node by using OrdinalPosition() and return the window's ordinal position if successed.
//!				10.	Gets the ordinal priority of the specified window by using OrdinalPriority() and return the ordinal priority of the specified window if successed.
//!				11.	Verifies the window's ordinal position is same as the setting of the ordinal position of a window if it is same and successed.
//!				12.	Verifies the window's ordinal priority is same as the setting of the ordinal priority of a window if it is same and successed.
//!				13.	Close all window nodes by using Close() and return KErrNone if successed.
//!				14.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the window's ordinal position, ordinal priority and same as setting of ordinal position without causing panic.
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3011-0001-SetOrdinalPosition_command002
		COMMAND		win_122		SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3011-0001-SetOrdinalPosition_command004
		COMMAND		win_121		SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3011-0001-SetOrdinalPosition_command006
		COMMAND		bnkwin_123	OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3011-0001-OrdinalPosition_command008
		COMMAND		win_122		OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3011-0001-OrdinalPosition_command010
		COMMAND		win_121		OrdinalPosition		GRAPHICS-WSERV-Window-PublicApi-3011-0001-OrdinalPosition_command012
		COMMAND		bnkwin_123	OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3011-0001-OrdinalPriority_command014
		COMMAND		win_122		OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3011-0001-OrdinalPriority_command016
		COMMAND		win_121		OrdinalPriority		GRAPHICS-WSERV-Window-PublicApi-3011-0001-OrdinalPriority_command018

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3011


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3012
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3012
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		WindowGroupId(): Returns the window group Id of the parent window group.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, WindowGroupId
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Returns the window group Id of the parent window group by using WindowGroupId() if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the window group Id of the parent window group without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	WindowGroupId
		COMMAND		win_122		WindowGroupId
		COMMAND		win_121		WindowGroupId
		COMMAND		win_120		WindowGroupId
		COMMAND		win_112		WindowGroupId
		COMMAND		bnkwin_111	WindowGroupId
		COMMAND		bnkwin_110	WindowGroupId
		COMMAND		wingrp_100	WindowGroupId

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3012


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3013
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3013
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetPointerCursor(): Sets the pointer cursor from the system pointer cursor list.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetPointerCursor
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets the pointer cursor from the system pointer cursor list by using SetPointerCursor() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are set with the pointer cursor from the system pointer cursor list without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_122		SetPointerCursor	GRAPHICS-WSERV-Window-PublicApi-3013-0001-SetPointerCursor_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3013


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3014
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3014
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetCustomPointerCursor(): Sets the pointer cursor to an application-defined cursor.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetCustomPointerCursor
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets the pointer cursor to an application-defined cursor by using SetCustomPointerCursor() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are set with the pointer cursor to an application-defined cursor without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_122		SetCustomPointerCursor	GRAPHICS-WSERV-Window-PublicApi-3014-0001-SetCustomPointerCursor_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3014


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3015
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3015
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		EnableOnEvents(): Requests notification of 'on' events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, EnableOnEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Requests notification of 'on' events by using EnableOnEvents() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are requests notification of 'on' events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_120		EnableOnEvents		GRAPHICS-WSERV-Window-PublicApi-3015-0001-EnableOnEvents_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3015


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3016
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3016
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		DisableOnEvents(): Cancels notification of 'on' events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, DisableOnEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Requests notification of 'on' events by using EnableOnEvents() and return KErrNone if successed.
//!				9.	Cancels notification of 'on' events by using DisableOnEvents().
//!				10.	Close all window nodes by using Close() and return KErrNone if successed.
//!				11.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are cancels notification of 'on' events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_120		EnableOnEvents		GRAPHICS-WSERV-Window-PublicApi-3016-0001-EnableOnEvents_command002
		COMMAND		win_120		DisableOnEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3016


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3017
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3017
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		EnableGroupChangeEvents(): Requests notification of group-change events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, EnableGroupChangeEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Requests notification of group-change events by using EnableGroupChangeEvents() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are requests notification of group-change events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		wingrp_100	EnableGroupChangeEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3017


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3018
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3018
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		DisableGroupChangeEvents(): Sets the pointer cursor to an application-defined cursor.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, DisableGroupChangeEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Requests notification of group-change events by using EnableGroupChangeEvents() and return KErrNone if successed.
//!				9.	Cancels notification of group changed events by using DisableGroupChangeEvents().
//!				10.	Close all window nodes by using Close() and return KErrNone if successed.
//!				11.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are cancels notification of group changed events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		wingrp_100	EnableGroupChangeEvents
		COMMAND		wingrp_100	DisableGroupChangeEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3018


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3019
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3019
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		EnableFocusChangeEvents(): Enables focus changed events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, EnableFocusChangeEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Enables focus changed events by using EnableFocusChangeEvents() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are enables focus changed events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		wingrp_100	EnableFocusChangeEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3019


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3020
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3020
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		DisableFocusChangeEvents(): Disables delivery of focus changed events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, DisableFocusChangeEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Enables focus changed events by using EnableFocusChangeEvents() and return KErrNone if successed.
//!				9.	Disables delivery of focus changed events by using DisableFocusChangeEvents().
//!				10.	Close all window nodes by using Close() and return KErrNone if successed.
//!				11.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are disables delivery of focus changed events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		wingrp_100	EnableFocusChangeEvents
		COMMAND		wingrp_100	DisableFocusChangeEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3020


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3021
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3021
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		EnableGroupListChangeEvents(): Enables reporting of window group list change events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, EnableGroupListChangeEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Enables reporting of window group list change events by using EnableGroupListChangeEvents() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are enables reporting of window group list change events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		wingrp_100	EnableGroupListChangeEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3021


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3022
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3022
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		DisableGroupListChangeEvents(): Disables reporting of window group list change events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, DisableGroupListChangeEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Enables reporting of window group list change events by using EnableGroupListChangeEvents() and return KErrNone if successed.
//!				9.	Disables reporting of window group list change events by using DisableGroupListChangeEvents().
//!				10.	Close all window nodes by using Close() and return KErrNone if successed.
//!				11.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are disables reporting of window group list change events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		wingrp_100	EnableGroupListChangeEvents
		COMMAND		wingrp_100	DisableGroupListChangeEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3022


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3023
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3023
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		EnableVisibilityChangeEvents(): Enables reporting of window visibility change events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, EnableVisibilityChangeEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Enables reporting of window visibility change events by using EnableVisibilityChangeEvents() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are enables reporting of window visibility change events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_112	EnableVisibilityChangeEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3023


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3024
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3024
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		DisableVisibilityChangeEvents(): Disables reporting of window visibility change events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, DisableVisibilityChangeEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Enables reporting of window visibility change events by using EnableVisibilityChangeEvents() and return KErrNone if successed.
//!				9.	Disables reporting of window visibility change events by using DisableVisibilityChangeEvents().
//!				10.	Close all window nodes by using Close() and return KErrNone if successed.
//!				11.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are disables reporting of window visibility change events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_112	EnableVisibilityChangeEvents
		COMMAND		win_112	DisableVisibilityChangeEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3024


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3025
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3025
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		EnableErrorMessages(): Requests notification of error message events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, EnableErrorMessages
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Requests notification of error message events by using EnableErrorMessages() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are requests notification of error message events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_112	EnableErrorMessages		GRAPHICS-WSERV-Window-PublicApi-3025-0001-EnableErrorMessages_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3025


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3026
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3026
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		DisableErrorMessages(): Cancels notification of error message events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, DisableErrorMessages
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Requests notification of error message events by using EnableErrorMessages() and return KErrNone if successed.
//!				9.	Cancels notification of error message events by using DisableErrorMessages().
//!				10.	Close all window nodes by using Close() and return KErrNone if successed.
//!				11.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are cancels notification of error message events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_112	EnableErrorMessages		GRAPHICS-WSERV-Window-PublicApi-3026-0001-EnableErrorMessages_command002
		COMMAND		win_112	DisableErrorMessages

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3026


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3027
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3027
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		EnableModifierChangedEvents(): Requests notification of modifier changed events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, EnableModifierChangedEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Requests notification of modifier changed events by using EnableModifierChangedEvents() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are requests notification of modifier changed events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_112	EnableModifierChangedEvents	GRAPHICS-WSERV-Window-PublicApi-3027-0001-EnableModifierChangedEvents_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3027


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3028
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3028
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		DisableModifierChangedEvents(): Cancels notification of modifier changed events.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, DisableModifierChangedEvents
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Requests notification of modifier changed events by using EnableModifierChangedEvents() and return KErrNone if successed.
//!				9.	Cancels notification of modifier changed events by using DisableModifierChangedEvents().
//!				10.	Close all window nodes by using Close() and return KErrNone if successed.
//!				11.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are cancels notification of modifier changed events without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new				GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct			GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new				GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct			GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new				GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct			GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new				GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct			GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new				GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct			GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new				GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct			GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new				GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct			GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new				GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct			GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_112		EnableModifierChangedEvents	GRAPHICS-WSERV-Window-PublicApi-3028-0001-EnableModifierChangedEvents_command002
		COMMAND		win_112		DisableModifierChangedEvents

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3028


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3029
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3029
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetNonFading(): Sets whether a window is non-fading.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetNonFading
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets whether a window is non-fading by using SetNonFading() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are set whether a window is non-fading without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_121		SetNonFading		GRAPHICS-WSERV-Window-PublicApi-3029-0001-SetNonFading_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3029


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3030
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3030
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetFaded(): Sets the window as faded or unfaded.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetFaded
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets the window as faded or unfaded by using SetFaded() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are set the window as faded or unfaded without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_121		SetFaded		GRAPHICS-WSERV-Window-PublicApi-3030-0001-SetFaded_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3030


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3031
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3031
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetFaded(): Sets one or more windows as faded or unfaded, specifying a fading map.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetFaded
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets one or more windows as faded or unfaded, specifying a fading map by using SetFaded() and return KErrNone if successed.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are set one or more windows as faded or unfaded, specifying a fading map without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_121		SetFaded		GRAPHICS-WSERV-Window-PublicApi-3031-0001-SetFaded_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3031


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3032
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3032
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		ClearPointerCursor(): Clears pointer cursor settings.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, ClearPointerCursor
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets the pointer cursor from the system pointer cursor list by using SetPointerCursor() and return KErrNone if successed.
//!				9.	Clears pointer cursor settings by using ClearPointerCursor().
//!				10.	Close all window nodes by using Close() and return KErrNone if successed.
//!				11.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are cleared pointer cursor settings without causing panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_122		SetPointerCursor	GRAPHICS-WSERV-Window-PublicApi-3032-0001-SetPointerCursor_command002
		COMMAND		win_122		ClearPointerCursor

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3032




// ****************************************************************************
// Negative testcases of RWindow
// ****************************************************************************


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1208
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1208
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		19/10/2007
//! @SYMTestCaseDesc		SetRequiredDisplayMode(TDisplayMode aMode): SetRequiredDisplayMode() of a RWindow to display mode ENone
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetRequiredDisplayMode() of the RWindow to ENone and check if the returned display mode is EGray2
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetRequiredDisplayMode() of a RWindow to ENone would get returned value of display mode EGray2 (min Gray TDisplayMode)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-PublicApi-1208-0001-SetRequiredDisplayMode_command001
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1208


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1209
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1209
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		19/10/2007
//! @SYMTestCaseDesc		SetRequiredDisplayMode(TDisplayMode aMode): SetRequiredDisplayMode() of a RWindow to display mode of negative value
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetRequiredDisplayMode() of the RWindow to negative value and check if the returned display mode is EGray2
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetRequiredDisplayMode() of a RWindow to negative value would get returned value of display mode EGray2 (min Gray TDisplayMode)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-PublicApi-1209-0001-SetRequiredDisplayMode_command001
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1209

//!START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1001
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1001
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		05/10/2007
//! @SYMTestCaseDesc		RWindow(): fail to execute follow-up Construct for a RWindow that created by its default constructor
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() a RWindow with its default C++ constructor
//!				4.	Execute Contruct() the RWindow as the child of RWindowGroup and see if it meets expected panic code
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Get panic KERN-EXEC code=3
//! @SYMTestType		CIT
//!	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
//!		CREATE_OBJECT	RWsSession	ws
//!		CREATE_OBJECT	RWindowGroup	wingrp
//!		CREATE_OBJECT	RWindow		win
//!		COMMAND		ws		new
//!		COMMAND		ws		Connect
//!		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
//!		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
//!		COMMAND		win		new
//!		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
//!	END_TEST_BLOCK	!PanicString=KERN-EXEC	!PanicCode=3
//!	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
//!END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1001


//!START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1002
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1002
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		05/10/2007
//! @SYMTestCaseDesc		RWindow(RWsSession &aWs): fail to execute follow-up Construct for a RBackedUpWindow that new() within an unconnected RWsSession
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() a RWsSession
//!				2.	new() a RWindow within the RWsSession before Connect() it
//!				3.	Connect() the RWsSession to WSERV
//!				4.	new() and Construct() a RWindowGroup within the RWsSession
//!				5.	Execute Contruct() the RWindow as the child of RWindowGroup and see if it meets expected panic code
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic KERN-EXEC code=3
//! @SYMTestType		CIT
//!	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
//!		CREATE_OBJECT	RWsSession	ws
//!		CREATE_OBJECT	RWindowGroup	wingrp
//!		CREATE_OBJECT	RWindow		win
//!		COMMAND		ws		new
//!		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
//!		COMMAND		ws		Connect
//!		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
//!		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
//!		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
//!	END_TEST_BLOCK	!PanicString=KERN-EXEC	!PanicCode=3
//!	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
//!END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1002


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1003
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1003
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		08/10/2007
//! @SYMTestCaseDesc		Construct(const RWindowTreeNode &parent, TUint32 aHandle): fail to Construct() a RBlankWindow as a child of a invalid parent RWindowTreeNode
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() a RWindowGroup within the RWsSession but not Construct() it
//!				3.	new() a RWindow within the RWsSession
//!				4.	Execute Contruct() the RWindow as the child of RWindowGroup and see if it meets expected panic code
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=6 (Invalid window handle)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=6
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1003


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1005
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1005
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		09/10/2007
//! @SYMTestCaseDesc		BeginRedraw(): execute BeginRedraw when already inside a redraw cycle
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute BeginRedraw() to begin a redraw cycle
//!				5.	Execute BeginRedraw() again and see if it meets expected panic code
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=69 (Already inside a begin/end redraw pair)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		BeginRedraw
		COMMAND		win		BeginRedraw
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=69
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1005


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1006
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1006
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		09/10/2007
//! @SYMTestCaseDesc		BeginRedraw(const TRect &aRect): execute BeginRedraw a rectangle when already inside a redraw cycle
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute BeginRedraw() to begin a redraw cycle in the specified rectangle
//!				5.	Execute BeginRedraw() again and see if it meets expected panic code
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=69 (Already inside a begin/end redraw pair)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		BeginRedraw		GRAPHICS-WSERV-Window-PublicApi-1006-0001-BeginRedraw_command001
		COMMAND		win		BeginRedraw		GRAPHICS-WSERV-Window-PublicApi-1006-0001-BeginRedraw_command001
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=69
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1006


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1007
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1007
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		09/10/2007
//! @SYMTestCaseDesc		BeginRedraw(const TRect &aRect): execute BeginRedraw a invalid rectangle
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute BeginRedraw() to begin a redraw cycle in an invalid rectangle
//!				5.	Use GetDrawRect() to get and check if the draw rectangle is the same as the invalid rectangle
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	BeginRedraw a invalid rectangle would not generate error and the draw rectangle is the same as the specified invalid rectangle
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		BeginRedraw		GRAPHICS-WSERV-Window-PublicApi-1007-0001-BeginRedraw_command001
		COMMAND		win		GetDrawRect		GRAPHICS-WSERV-Window-PublicApi-1007-0001-GetDrawRect_command002
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1007


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1008
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1008
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		09/10/2007
//! @SYMTestCaseDesc		EndRedraw(): execute EndRedraw() before begin a redraw cycle
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute EndRedraw() before begin a redraw cycle
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Execute EndRedraw() before begin a redraw cycle would get panic WSERV code=69
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		EndRedraw
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=69
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1008


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1009
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1009
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		11/10/2007
//! @SYMTestCaseDesc		Invalidate(const TRect &aRect): execute Invalidate() with a invalid rectangle
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Use GetInvalidRegion() to check if the invalid region is empty (i.e. NULL)
//!				5.	Execute Invalidate() with a invalid rectangle
//!				6.	Use GetInvalidRegion() to check if the invalid region is still empty (i.e. NULL)
//!				7.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Invalidate() with a invalid rectangle would not generate error, and would not change the invalid region
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-1009-0001-GetInvalidRegion_command001
		COMMAND		win		Invalidate		GRAPHICS-WSERV-Window-PublicApi-1009-0001-Invalidate_command002
		COMMAND		win		GetInvalidRegion	GRAPHICS-WSERV-Window-PublicApi-1009-0001-GetInvalidRegion_command001
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1009


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1010
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1010
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		11/10/2007
//! @SYMTestCaseDesc		SetSize(const TSize &size): set RWindow to invalid size (negative width/height)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetSize() with a invalid size (negative width and height)
//!				5.	Use Size() to check if the RWindow size is width 0 and height 0
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetSize() with negative width and height would not generate error and set RWindow size to width 0 and height 0
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		SetSize			GRAPHICS-WSERV-Window-PublicApi-1010-0001-SetSize_command001
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-1010-0001-Size_command002
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1010


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1011
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1011
//! @SYMAPI			RWindow
//! @SYMAuthor			Victor Liu
//! @SYMCreationDate		11/10/2007
//! @SYMTestCaseDesc		SetExtent(const TPoint &point, const TSize &size): set RWindow to invalid size (negative width/height)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetExtent() with a invalid size (negative width and height)
//!				5.	Use Size() to check if the RWindow size is width 0 and height 0
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetExtent() with negative width and height would not generate error and set RWindow size to width 0 and height 0
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command004
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command005
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0001-0001-new_command007
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0001-0001-Construct_command008
		COMMAND		win		SetExtent		GRAPHICS-WSERV-Window-PublicApi-1011-0001-SetExtent_command001
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-1011-0001-Size_command002
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1011




// ****************************************************************************
// Negative testcases of RWindow inherited from RDrawableWindow
// ****************************************************************************




// ****************************************************************************
// Negative testcases of RWindow inherited from RWindowBase
// ****************************************************************************

START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1201
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1201
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		15/10/2007
//! @SYMTestCaseDesc		SetSizeErr(const TSize &size): set RWindow to invalid size (negative width/height)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	SetAutoFlush() to TRUE for the RWsSession
//!				5.	Execute Activate() the RWindow
//!				6.	Execute Activate() the RWindow again and see if it meets expected panic code
//!				7.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=11 (Window already active)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		win		Activate
		COMMAND		win		Activate
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=11
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1201


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1202
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1202
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		15/10/2007
//! @SYMTestCaseDesc		SetSizeErr(const TSize &size): set RWindow to invalid size (negative width/height)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetSizeErr() with a invalid size (negative width and height)
//!				5.	Use Size() to check if the RWindow size is width 0 and height 0
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetSizeErr() with negative width and height would not generate error and set RWindow size to width 0 and height 0
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetSizeErr		GRAPHICS-WSERV-Window-PublicApi-1202-0001-SetSizeErr_command001
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-1202-0001-Size_command002
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1202


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1203
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1203
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		16/10/2007
//! @SYMTestCaseDesc		SetExtentErr(const TPoint &point, const TSize &size): set RWindow to invalid size (negative width/height)
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetExtentErr() with a invalid size (negative width and height)
//!				5.	Use Size() to check if the RWindow size is width 0 and height 0
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetExtentErr() with negative width and height would not generate error and set RWindow size to width 0 and height 0
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetExtentErr		GRAPHICS-WSERV-Window-PublicApi-1203-0001-SetExtentErr_command001
		COMMAND		win		Size			GRAPHICS-WSERV-Window-PublicApi-1203-0001-Size_command002
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1203


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1204
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1204
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		16/10/2007
//! @SYMTestCaseDesc		InquireOffset(const RWindowTreeNode &aWindow): InquireOffset() with invalid RWindowTreeNode
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute InquireOffset() of RWindow with invalid RWindowTreeNode and see if it meets expected panic code
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=6 (Invalid window handle)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		InquireOffset		GRAPHICS-WSERV-Window-PublicApi-1204-0001-InquireOffset_command001
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=6
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1204


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1205
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1205
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		17/10/2007
//! @SYMTestCaseDesc		SetShadowHeight(TInt aHeight): set RWindow shadow height to negative value
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetShadowHeight() with negative shadow height and see if it meets expected panic code
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=29 (A client attempted to set a negative shadow height)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetShadowHeight		GRAPHICS-WSERV-Window-PublicApi-1205-0001-SetShadowHeight_command001
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=29
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1205


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1206
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1206
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		17/10/2007
//! @SYMTestCaseDesc		SetCornerType(TCornerType aCornerType, TInt aCornerFlags=0): set RWindow with invalid corner type
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetCornerType() with invalid corner type and see if it meets expected panic code
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=35 (A client passed an invalid or unrecognised corner type or flag)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetCornerType		GRAPHICS-WSERV-Window-PublicApi-1206-0001-SetCornerType_command001
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=35
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1206


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1207
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1207
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		17/10/2007
//! @SYMTestCaseDesc		SetCornerType(TCornerType aCornerType, TInt aCornerFlags=0): set RWindow with invalid corner flag
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetCornerType() with invalid corner flag and see if it meets expected panic code
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=35 (A client passed an invalid or unrecognised corner type or flag)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetCornerType		GRAPHICS-WSERV-Window-PublicApi-1207-0001-SetCornerType_command001
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=35
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1207


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1210b
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1210b
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		19/10/2007
//! @SYMTestCaseDesc		SetRequiredDisplayMode(TDisplayMode aMode): SetRequiredDisplayMode() of a RWindow to display mode of invalid large value
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute SetRequiredDisplayMode() of the RWindow to invalid large value and check if the returned display mode is EColor16
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	SetRequiredDisplayMode() of a RWindow to invalid large value without causing any panic
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		SetRequiredDisplayMode	GRAPHICS-WSERV-Window-PublicApi-1210b-0001-SetRequiredDisplayMode_command001
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK	
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1210b


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1211
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1211
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		22/10/2007
//! @SYMTestCaseDesc		CancelPointerRepeatEventRequest(): CancelPointerRepeatEventRequest() before RequestPointerRepeatEvent()
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute CancelPointerRepeatEventRequest() before calling RequestPointerRepeatEvent()
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	CancelPointerRepeatEventRequest() before RequestPointerRepeatEvent() would not generate error
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI		\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new				GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct			GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new				GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct			GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		CancelPointerRepeatEventRequest
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1211


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1212
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1212
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		23/10/2007
//! @SYMTestCaseDesc		AllocPointerMoveBuffer(): execute AllocPointerMoveBuffer() again when already allocated
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute AllocPointerMoveBuffer()
//!				5.	Execute AllocPointerMoveBuffer() and see if it generates expected error
//!				6.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Execute AllocPointerMoveBuffer() when already allocated would generate KErrInUse (-14)
//! @SYMTestType		CIT
	START_TEST_BLOCK		10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT		RWsSession	ws
		CREATE_OBJECT		RWindowGroup	wingrp
		CREATE_OBJECT		RWindow		win
		COMMAND			ws		new
		COMMAND			ws		Connect
		COMMAND			wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND			wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND			win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND			win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND			win		AllocPointerMoveBuffer	GRAPHICS-WSERV-Window-PublicApi-1212-0001-AllocPointerMoveBuffer_command001
		COMMAND	!Error=-14	win		AllocPointerMoveBuffer	GRAPHICS-WSERV-Window-PublicApi-1212-0001-AllocPointerMoveBuffer_command001
		COMMAND			win		Close
		COMMAND			wingrp		Close
		COMMAND			ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1212


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1213
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1213
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		23/10/2007
//! @SYMTestCaseDesc		FreePointerMoveBuffer(): FreePointerMoveBuffer() before AllocPointerMoveBuffer()
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute FreePointerMoveBuffer() before calling AllocPointerMoveBuffer()
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	FreePointerMoveBuffer() before AllocPointerMoveBuffer() would not generate error
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		FreePointerMoveBuffer
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1213


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1214
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1214
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		25/10/2007
//! @SYMTestCaseDesc		EnablePointerMoveBuffer(): EnablePointerMoveBuffer() without AllocPointerMoveBuffer() in advace
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute EnablePointerMoveBuffer() without AllocPointerMoveBuffer() in advace and see if it meets expected panic code
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	Get panic WSERV code=43 (A client attempted to enable a pointer move buffer when none was allocated)
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		win		EnablePointerMoveBuffer
	END_TEST_BLOCK	!PanicString=WSERV	!PanicCode=43
	RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1214


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1215
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1215
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		25/10/2007
//! @SYMTestCaseDesc		EnablePointerMoveBuffer(): execute EnablePointerMoveBuffer() again when already enabled
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	use AllocPointerMoveBuffer() to allocate pointer move buffer
//!				5.	Execute EnablePointerMoveBuffer()
//!				6.	Execute EnablePointerMoveBuffer() again
//!				7.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	Execute EnablePointerMoveBuffer() again when already enabled would not generate error
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		ws		SetAutoFlush		GRAPHICS-WSERV-Window-Setup-0002-0001-SetAutoFlush_command015
		COMMAND		win		AllocPointerMoveBuffer	GRAPHICS-WSERV-Window-PublicApi-1215-0001-AllocPointerMoveBuffer_command001
		COMMAND		win		EnablePointerMoveBuffer
		COMMAND		win		EnablePointerMoveBuffer
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1215


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1216
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-1216
//! @SYMAPI			RWindow
//! @SYMAuthor			Ryan Lu
//! @SYMCreationDate		25/10/2007
//! @SYMTestCaseDesc		DisablePointerMoveBuffer(): DisablePointerMoveBuffer() before EnablePointerMoveBuffer()
//!				Uses API elements: RWsSession::Connect, RWindowGroup::Construct, RWindow::Construct
//! @SYMTestActions		1.	new() and Connect() a RWsSession
//!				2.	new() and Construct() a RWindowGroup within the RWsSession
//!				3.	new() and Construct() a RWindow as the child of RWindowGroup
//!				4.	Execute DisablePointerMoveBuffer() before calling EnablePointerMoveBuffer()
//!				5.	Close all objects used
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	DisablePointerMoveBuffer() before EnablePointerMoveBuffer() would not generate error
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp
		CREATE_OBJECT	RWindow		win
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command008
		COMMAND		wingrp		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command009
		COMMAND		win		new			GRAPHICS-WSERV-Window-Setup-0002-0001-new_command011
		COMMAND		win		Construct		GRAPHICS-WSERV-Window-Setup-0002-0001-Construct_command012
		COMMAND		win		DisablePointerMoveBuffer
		COMMAND		win		Close
		COMMAND		wingrp		Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-1216




// ****************************************************************************
// Negative testcases of RWindow implemented for MWsClientClass
// ****************************************************************************




// ****************************************************************************
// Negative testcases of RWindow inherited from RWindowTreeNode
// ****************************************************************************
START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3101
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3101
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetOrdinalPosition(): Sets the ordinal position of a window.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetOrdinalPosition
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets the ordinal position of a window by using SetOrdinalPosition() with negative position.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the window's ordinal position.
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3101-0001-SetOrdinalPosition_command002
		COMMAND		win_122		SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3101-0001-SetOrdinalPosition_command004
		COMMAND		win_121		SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3101-0001-SetOrdinalPosition_command006

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3101


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3102
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3102
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetOrdinalPosition(): Sets the ordinal position and ordinal priority of a window.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetOrdinalPosition
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets the ordinal position of a window by using SetOrdinalPosition() with negative position.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Medium
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are returned with the window's ordinal position, ordinal priority and same as setting of ordinal position without causing panic.
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		bnkwin_123	SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3102-0001-SetOrdinalPosition_command002
		COMMAND		win_122		SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3102-0001-SetOrdinalPosition_command004
		COMMAND		win_121		SetOrdinalPosition	GRAPHICS-WSERV-Window-PublicApi-3102-0001-SetOrdinalPosition_command006

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3102


START_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3103
//! @SYMTestCaseID		GRAPHICS-WSERV-Window-PublicApi-3103
//! @SYMAPI			RWindowTreeNode
//! @SYMAuthor			Shirly Kuo
//! @SYMCreationDate		20/12/2006
//! @SYMTestCaseDesc		SetFaded(): Sets one or more windows as faded or unfaded, specifying a fading map.
//!				Uses API elements: RWsSession::Connect(), RWindowGroup, RBlankWindow, RWindow::Construct, Close, SetFaded
//! @SYMTestActions		1.	Constructs an initialised window server session by using RWsSession::RWsSession() and return KErrNone if successed. 
//!				2.	Connects the client session to the window server by using RWsSession::Connect() and return KErrNone if successed.
//!				3.	Creates an initialised window group handle within a server session by using RWindowGroup::RWindowGroup() and return KErrNone if successed.
//!				4.	Creates three initialised RBlankWindow handles by using RBlankWindow::RBlankWindow() and return KErrNone if successed.
//!				5.	Completes the construction of three valid blank-window handles by using RBlankWindow::Construct() and return KErrNone if successed.
//!				6.	Creates three initialised RWindow handles by using RWindow::RWindow() and return KErrNone if successed.
//!				7.	Completes the construction of three valid window handles by using RWindow::Construct() and return KErrNone if successed.
//!				8.	Sets one or more windows as faded or unfaded, specifying a fading map by using SetFaded() with negative black and white maps.
//!				9.	Close all window nodes by using Close() and return KErrNone if successed.
//!				10.	Close the window session by using Close() and return KErrNone if successed.
//! @SYMTestStatus		Implemented
//! @SYMTestPriority		Low
//! @SYMTestExpectedResults	All nodes in the constructed window hierarchy are set one or more windows as faded or unfaded, specifying a fading map.
//! @SYMTestType		CIT
	START_TEST_BLOCK	10		T_GraphicsWservAPI	\graphics\GRAPHICS-WSERV-Window-PublicApi.ini
		CREATE_OBJECT	RWsSession	ws
		CREATE_OBJECT	RWindowGroup	wingrp_100
		CREATE_OBJECT	RBlankWindow	bnkwin_110
		CREATE_OBJECT	RBlankWindow	bnkwin_111
		CREATE_OBJECT	RWindow		win_112
		CREATE_OBJECT	RWindow		win_120
		CREATE_OBJECT	RWindow		win_121
		CREATE_OBJECT	RWindow		win_122
		CREATE_OBJECT	RBlankWindow	bnkwin_123
		COMMAND		ws		new
		COMMAND		ws		Connect
		COMMAND		wingrp_100	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command004
		COMMAND		wingrp_100	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command005
		COMMAND		bnkwin_110	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command007
		COMMAND		bnkwin_110	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command008
		COMMAND		bnkwin_111	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command010
		COMMAND		bnkwin_111	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command011
		COMMAND		win_112		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command013
		COMMAND		win_112		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command014
		COMMAND		win_120		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command016
		COMMAND		win_120		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command017
		COMMAND		win_121		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command019
		COMMAND		win_121		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command020
		COMMAND		win_122		new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command022
		COMMAND		win_122		Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command023
		COMMAND		bnkwin_123	new			GRAPHICS-WSERV-Window-PublicApi-3000-0001-new_command025
		COMMAND		bnkwin_123	Construct		GRAPHICS-WSERV-Window-PublicApi-3000-0001-Construct_command026

		COMMAND		win_121		SetFaded		GRAPHICS-WSERV-Window-PublicApi-3103-0001-SetFaded_command002

		COMMAND		bnkwin_123	Close
		COMMAND		win_122		Close
		COMMAND		win_121		Close
		COMMAND		win_120		Close
		COMMAND		win_112		Close
		COMMAND		bnkwin_111	Close
		COMMAND		bnkwin_110	Close
		COMMAND		wingrp_100	Close
		COMMAND		ws		Close
	END_TEST_BLOCK
END_TESTCASE	GRAPHICS-WSERV-Window-PublicApi-3103
