graphicsapitest/graphicssvs/wserv/scripts/GRAPHICS-WSERV-WsScreenDevice-PublicAPI.script
author Faisal Memon <faisal.memon@nokia.com>
Thu, 06 May 2010 11:31:11 +0100
branchNewGraphicsArchitecture
changeset 47 48b924ae7197
parent 0 5d03bc08d59c
permissions -rw-r--r--
Applied patch 1, to provide a syborg specific minigui oby file. Need to compare this with the "stripped" version currently in the tree. This supplied version applies for Nokia builds, but need to repeat the test for SF builds to see if pruning is needed, or if the file needs to be device-specific.

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

/////////////////////////////////////////////////////////////////////
// GRAPHICS-WSERV-WsScreenDevice-PublicAPI.script
//
// Tests all public elements of the CWsScreenDevice
// classes as a means of confidence that the APIs work as expected.
//
// The purpose is to provide a regression test suite of PublishedAll APIs for CWsScreenDevice
// The tests are fully automated.
/////////////////////////////////////////////////////////////////////

LOAD_SUITE      T_GraphicsWservAPI
DELAY           1000

//! @file
//! @SYMTestSuiteName           GRAPHICS-WSERV-WsScreenDevice-PublicAPI
//! @SYMScriptTestEnvironment   This test script requires a basic ROM.

/////////////////////////////////////////////////////////////////////
// CWsScreenDevice class
/////////////////////////////////////////////////////////////////////


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0001
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0001
//! @SYMAPI                     CWsScreenDevice::CWsScreenDevice()
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            create a CWsScreenDevice object by C++ default constructor
//! @SYMTestActions             1. Construct a CWsScreenDevice
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     CWsScreenDevice was created without causing panic.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 scrdev            new       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0001

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0002
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0002
//! @SYMAPI                     CWsScreenDevice::CWsScreenDevice(RWsSession{ref})
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Create a CWsScreenDevice attached to a RWsSession and destruct it after closing RWsSession
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Close the RWsSession object(There could be a resource leak as the CWsScreenDevice is not deleted before close the RWsSession)
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     CWsScreenDevice was created without causing panic.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0002-0001-new_command03       
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0002


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0003
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0003
//! @SYMAPI                     CWsScreenDevice::~CWsScreenDevice()
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Create a CWsScreenDevice attached to a RWsSession and destruct it before closing RWsSession
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Destruct the CWsScreenDevice object
//!                             4. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     CWsScreenDevice was destructed without causing panic.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0003-0001-new_command03       
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0003


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0004
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0004
//! @SYMAPI                     CWsScreenDevice::Construct()
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Create a CWsScreenDevice attached to a RWsSession and complete the construction
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Destruct the CWsScreenDevice object
//!                             5. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and returns KErrNone 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0004-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0004



START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0005
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0005
//! @SYMAPI                     CWsScreenDevice::Construct(TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Create a CWsScreenDevice attached to a RWsSession and complete the construction, specify the screen on which the application will start.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Destruct the CWsScreenDevice object
//!                             5. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and returns KErrNone 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0005-0001-new_command03       
        COMMAND                 scrdev            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0005-0001-Construct_command04         
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0005



START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0006
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0006
//! @SYMAPI                     CWsScreenDevice::DisplayMode()
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the device's display mode.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the screen's display mode 
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and returns the default display mode as defined in the environment file
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0006-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            DisplayMode   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0006-0001-DisplayMode_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0006



START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0010
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0010
//! @SYMAPI                     CWsScreenDevice::PointerRect()
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the active area for the pointing device
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Gets the active area for the pointing device using PointerRect()
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and the returned active area is as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0010-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            PointerRect   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0010-0001-PointerRect_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0010


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0011
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0011
//! @SYMAPI                     CWsScreenDevice::CreateContext(CGraphicsContext{ptr}{ref})
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Creates a graphics context for this device, and set context's background color to TRgb(255,0,0)
//! @SYMTestActions             1. Setup a CWindowGc to test and a RWindow to display its drawing result
//!                             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, SetBackgroundColor to TRgb(255,0,0)
//!                             1.6 SetAutoFlush to TRUE for the RWsSession
//!                             1.7 Activate the CWindowGc to the RWindow
//!                             2.Use RWindow::BeginRedraw() to start a redraw cycle
//!                             3.RWindow::EndRedraw() 
//!                             4.check some pixels is drawn with the pen color TRgb(255,0,0)  
//!                             5.Deactive RWindow, destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CreateContext() method returns KErrNone and creates a CWindowGc object
//!                             2. the drawing result of testaction 1.5
//!                             2.1 the pixels (19,10) is drawn with the pen color TRgb(255,0,0)  
//!                             2.2 the pixels (50,30) is drawn with the pen color TRgb(255,0,0)  
//!                             2.3 the pixels (20,29) is drawn with the pen color TRgb(255,0,0)  
//!                             2.4 the pixels (10,50) is drawn with the pen color TRgb(255,0,0)  
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            CreateContext GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-CreateContext_command05              
        COMMAND                 wingrp            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-new_command06
        COMMAND                 wingrp            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-Construct_command07
        COMMAND                 win               new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-new_command08
        COMMAND                 win               Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate  
        COMMAND                 ws                SetAutoFlush  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 win               EndRedraw
        COMMAND                 scrdev            checkPixels   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0011-0001-checkPixels_command17
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~        
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0011


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0012
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0012
//! @SYMAPI                     CWsScreenDevice::CreateContext(CWindowGc{ptr}{ref})
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Creates a graphics context for this device, and set context's background color to TRgb(255,0,0)
//! @SYMTestActions             1. Setup a CWindowGc to test and a RWindow to display its drawing result
//!                             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, SetBackgroundColor to TRgb(0,255,0)
//!                             1.6 SetAutoFlush to TRUE for the RWsSession
//!                             1.7 Activate the CWindowGc to the RWindow
//!                             2.Use RWindow::BeginRedraw() to start a redraw cycle
//!                             3.RWindow::EndRedraw() 
//!                             4.check some pixels is drawn with the pen color TRgb(0,255,0)  
//!                             5.Deactive RWindow, destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CreateContext() method returns KErrNone and creates a CWindowGc object
//!                             2. the drawing result of testaction 1.5
//!                             2.1 the pixels (19,10) is drawn with the pen color TRgb(0,255,0)  
//!                             2.2 the pixels (50,30) is drawn with the pen color TRgb(0,255,0)  
//!                             2.3 the pixels (20,29) is drawn with the pen color TRgb(0,255,0)  
//!                             2.4 the pixels (10,50) is drawn with the pen color TRgb(0,255,0)  
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            CreateContext GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-CreateContext_command05              
        COMMAND                 wingrp            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-new_command06
        COMMAND                 wingrp            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-Construct_command07
        COMMAND                 win               new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-new_command08
        COMMAND                 win               Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate  
        COMMAND                 ws                SetAutoFlush  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 win               EndRedraw
        COMMAND                 scrdev            checkPixels   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0012-0001-checkPixels_command17
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~        
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0012


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0013
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0013
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInTwips(CFont{ptr}{ref}, const TFontSpec{ref})
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the nearest font in twips to that specified
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Gets the nearest font matches the design height in twips 
//!                             5. Check the returned font is expected 
//!                             6. Destruct the CWsScreenDevice object
//!                             7. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and the returned device font is as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0013-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0013-0001-GetNearestFontToDesignHeightInTwips_command05              
        COMMAND                 font              FontSpecInTwips                      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0013-0001-FontSpecInTwips_command06              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0013


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0014
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0014
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInTwips(CFont{ptr}{ref}, const TFontSpec{ref}, TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the nearest font in twips to that specified
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Gets the nearest font matches the max height in twips 
//!                             5. Check the returned font is expected
//!                             6. Destruct the CWsScreenDevice object
//!                             7. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and the returned device font is as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0014-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0014-0001-GetNearestFontToMaxHeightInTwips_command05        
        COMMAND                 font              FontSpecInTwips                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0014-0001-FontSpecInTwips_command06              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0014


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0015
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0015
//! @SYMAPI                     CWsScreenDevice::NumTypefaces()
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the number of typefaces supported by the screen device
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Gets the number of typefaces supported by the screen device using NumTypefaces()
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and the returned number is as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0015-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            NumTypefaces  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0015-0001-NumTypefaces_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0015


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0016
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0016
//! @SYMAPI                     CWsScreenDevice::TypefaceSupport(TTypefaceSupport{ref}, TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets typeface information for a particular typeface index number
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Gets typeface information for a particular typeface index number
//!                             5. Check the returned typeface information is expected   
//!                             6. Destruct the CWsScreenDevice object
//!                             7. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and the returned typeface information is as expected 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0016-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            TypefaceSupport  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0016-0001-TypefaceSupport_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0016


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0017
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0017
//! @SYMAPI                     CWsScreenDevice::TypefaceSupport(TTypefaceSupport{ref}, TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Negative test, gets typeface information for a particular typeface index number, input 100 as aTypefaceIndex.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Gets typeface information for a particular typeface index number 
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0017-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            TypefaceSupport  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0017-0001-TypefaceSupport_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0017


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0018
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0018
//! @SYMAPI                     CWsScreenDevice::FontHeightInTwips(TInt, TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the height in twips of the specified font
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Gets the height in twips of the specified font 
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and the returned font height is as expected 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0018-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            FontHeightInTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0018-0001-FontHeightInTwips_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0018


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0019
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0019
//! @SYMAPI                     CWsScreenDevice::FontHeightInTwips(TInt, TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Negative test, gets the height in twips of the specified font, input 100 as aTypefaceIndex.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Gets the height in twips of the specified font using FontHeightInTwips()
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and the returns 0  
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0019-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            FontHeightInTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0019-0001-FontHeightInTwips_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0019




START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0020
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0020
//! @SYMAPI                     CWsScreenDevice::SizeInPixels()
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Create a CWsScreenDevice attached to a RWsSession and complete the construction, gets the size of the screen device area in pixels.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the screen's size in pixels
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned screen sizes in pixels and twips are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0020-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            SizeInPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0020-0001-SizeInPixels_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0020


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0021
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0021
//! @SYMAPI                     CWsScreenDevice::SizeInTwips()
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the size of the screen device area in twips
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the screen's size in twips
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned screen sizes in twips and twips are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0021-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            SizeInTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0021-0001-SizeInTwips_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0021


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0022
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0022
//! @SYMAPI                     CWsScreenDevice::HorizontalTwipsToPixels(TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Translates a horizontal dimension of a screen device in twips into pixels
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Translates a horizontal dimension twips into pixels 
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned pixels are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0022-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            HorizontalTwipsToPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0022-0001-HorizontalTwipsToPixels_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0022


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0023
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0023
//! @SYMAPI                     CWsScreenDevice::VerticalTwipsToPixels(TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Translates a vertical dimension of a screen device in twips into pixels
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Translates a vertical dimension twips into pixels 
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned pixels are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0023-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            VerticalTwipsToPixels    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0023-0001-VerticalTwipsToPixels_command05             
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0023


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0024
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0024
//! @SYMAPI                     CWsScreenDevice::HorizontalPixelsToTwips(TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Translates a horizontal dimension of a screen device in pixels into twips
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Translates a horizontal dimension pixels into twips 
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned twips are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0024-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            HorizontalPixelsToTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0024-0001-HorizontalPixelsToTwips_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0024

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0025
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0025
//! @SYMAPI                     CWsScreenDevice::VerticalPixelsToTwips(TInt)
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Translates a vertical dimension of a screen device in pixels into twips
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Translates a vertical dimension pixels into twips 
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned twips are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0025-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            VerticalPixelsToTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0025-0001-VerticalPixelsToTwips_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0025



START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0048
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0048
//! @SYMAPI                     CWsScreenDevice::SetScreenSizeAndRotation(const TPixelsAndRotation{ref});
//!                             CWsScreenDevice::GetDefaultScreenSizeAndRotation(TPixelsAndRotation{ref})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Sets the current screen size in pixels, and the rotation for the screen device
//!                             Gets the current screen size in pixels and the rotation
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call SetScreenSizeAndRotation(const TPixelsAndRotation&) to set the current screen size in pixels, and the rotation for the screen device
//!                             5. Call GetDefaultScreenSizeAndRotation(TPixelsAndRotation&) to get the screen size and rotation with default mode, and check them to be as expected
//!                             6. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     1. SetScreenSizeAndRotation(const TPixelsAndRotation&) method without causing panic
//!                             2. Method GetDefaultScreenSizeAndRotation(TPixelsAndRotation&) called without causing panic and get values as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0048-0001-new_command03
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0048-0001-SetScreenSizeAndRotation_command05
        COMMAND                 scrdev            GetDefaultScreenSizeAndRotation       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0048-0001-GetDefaultScreenSizeAndRotation_command06
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0048


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0049
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0049
//! @SYMAPI                     CWsScreenDevice::GetScreenModeSizeAndRotation(TInt, TPixelsAndRotation{ref})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the screen rotation and size (in pixels) for the specified screen mode
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetScreenModeSizeAndRotation(TInt, TPixelsAndRotation&) to get the screen size in pixels and rotation with specified mode, and check them to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetScreenModeSizeAndRotation(TInt, TPixelsAndRotation&) called without causing panic and get values as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0049-0001-new_command03
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeSizeAndRotation          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0049-0001-GetScreenModeSizeAndRotation_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0049


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0050
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0050
//! @SYMAPI                     CWsScreenDevice::SetScreenSizeAndRotation(const TPixelsTwipsAndRotation{ref});
//!                             CWsScreenDevice::GetDefaultScreenSizeAndRotation(TPixelsTwipsAndRotation{ref})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Sets the current screen size in twips and pixels, and the rotation for the screen device
//!                             Gets the current screen size (in both pixels and twips) and rotation
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call SetScreenSizeAndRotation(const TPixelsTwipsAndRotation&) to sets the current screen size (in both twips and pixels) and the rotation for the screen device
//!                             5. Call GetDefaultScreenSizeAndRotation(TPixelsTwipsAndRotation&) to get the screen size (in both twips and pixels) and rotation with specified mode, and check them to be as expected
//!                             6. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     1. SetScreenSizeAndRotation(const TPixelsTwipsAndRotation&) method without causing panic
//!                             2. Method GetDefaultScreenSizeAndRotation(TPixelsTwipsAndRotation&) called without causing panic and get values as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0050-0001-new_command03
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0050-0001-SetScreenSizeAndRotation_command05
        COMMAND                 scrdev            GetDefaultScreenSizeAndRotation       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0050-0001-GetDefaultScreenSizeAndRotation_command06
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0050

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0051
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0051
//! @SYMAPI                     CWsScreenDevice::GetScreenModeSizeAndRotation(TInt, TPixelsTwipsAndRotation{ref})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the screen rotation and size, in both pixels and twips, for the specified screen mode
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetScreenModeSizeAndRotation(TInt, TPixelsTwipsAndRotation&) to get the screen size (in both twips and pixels) and rotation with specified mode, and check them to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetScreenModeSizeAndRotation(TInt, TPixelsTwipsAndRotation&) called without causing panic and get values as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0051-0001-new_command03
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeSizeAndRotation          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0051-0001-GetScreenModeSizeAndRotation_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0051

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0052
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0052
//! @SYMAPI                     CWsScreenDevice::ScreenModeEnforcement()
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the current screen mode enforcement settings
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call ScreenModeEnforcement() to get the current screen mode enforcement settings and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method ScreenModeEnforcement() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0052-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            ScreenModeEnforcement         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0052-0001-ScreenModeEnforcement_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0052


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0053
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0053
//! @SYMAPI                     CWsScreenDevice::NumScreenModes()
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the number of available screen modes
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call NumScreenModes() to get the number of screen modes and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method NumScreenModes() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0053-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            NumScreenModes                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0053-0001-NumScreenModes_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0053


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0054
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0054
//! @SYMAPI                     CWsScreenDevice::GetScreenSizeModeList(RArray<TInt>{ptr})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the available screen size modes
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetScreenSizeModeList() to get the count of the available screen size modes and check it to be expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetScreenSizeModeList() called without causing panic and the values are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0054-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenSizeModeList         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0054-0001-GetScreenSizeModeList_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0054

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0055
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0055
//! @SYMAPI                     CWsScreenDevice::GetDefaultScreenModeOrigin()
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the origin for the current screen mode
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetDefaultScreenModeOrigin() to get the origin for the default screen mode and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetDefaultScreenModeOrigin() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0055-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetDefaultScreenModeOrigin            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0055-0001-GetDefaultScreenModeOrigin_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0055


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0056
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0056
//! @SYMAPI                     CWsScreenDevice::CurrentScreenMode()
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the current screen mode index
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call CurrentScreenMode() to get the current screen mode index and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method CurrentScreenMode() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0056-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CurrentScreenMode             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0056-0001-CurrentScreenMode_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0056


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0057
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0057
//! @SYMAPI                     CWsScreenDevice::GetRotationsList(TInt, CArrayFixFlat<TInt>{ptr})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the list of valid rotations for a particular screen size
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetRotationsList() to get the count of the available rotations for a particular screen size and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetRotationsList() called without causing panic and the values are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0057-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetRotationsList              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0057-0001-GetRotationsList_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0057

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0058
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0058
//! @SYMAPI                     CWsScreenDevice::GetScreenModeOrigin(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Get the origin of the screen for the specified screen mode
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetScreenModeOrigin() to get the origin for the specified screen mode and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetScreenModeOrigin() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0058-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeOrigin                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0058-0001-GetScreenModeOrigin_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0058

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0059
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0059
//! @SYMAPI                     CWsScreenDevice::SetAppScreenMode(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Sets the application's screen mode; this also sets all the attributes of the screen mode
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call SetAppScreenMode() to set the application's screen mode
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     SetAppScreenMode method without causing panic.(There seems no methods to check the value is set as expected)
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0059-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            SetAppScreenMode      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0059-0001-SetAppScreenMode_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0059

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0060
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0060
//! @SYMAPI                     CWsScreenDevice::GetCurrentScreenModeScale()
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the scale for the current screen mode
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetCurrentScreenModeScale() to get the scale for the current screen mode and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetCurrentScreenModeScale() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0060-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetCurrentScreenModeScale             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0060-0001-GetCurrentScreenModeScale_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0060

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0061
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0061
//! @SYMAPI                     CWsScreenDevice::GetScreenModeScale(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the scale for the specified screen mode
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetScreenModeScale() to get the scale for the specified screen mode and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetScreenModeScale() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0061-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeScale                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0061-0001-GetScreenModeScale_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0061

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0062
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0062
//! @SYMAPI                     CWsScreenDevice::GetCurrentScreenModeScaledOrigin()
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the current screen mode's scaled origin
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetCurrentScreenModeScaledOrigin() to get the scaled origin for the current screen mode and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetCurrentScreenModeScaledOrigin() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0062-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetCurrentScreenModeScaledOrigin      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0062-0001-GetCurrentScreenModeScaledOrigin_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0062

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0063
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0063
//! @SYMAPI                     CWsScreenDevice::GetScreenModeScaledOrigin(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the specfied screen mode's scaled origin
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetScreenModeScaledOrigin() to get the scaled origin for the specified screen mode and check it to be as expected
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetScreenModeScaledOrigin() called without causing panic and return expected value
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0063-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeScaledOrigin             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0063-0001-GetScreenModeScaledOrigin_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0063

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0064
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0064
//! @SYMAPI                     CWsScreenDevice::GetScreenModeDisplayMode(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the display mode of the screen for the specified screen mode
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Call GetScreenModeDisplayMode() to get the display mode of the screen for the specified screen mode
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     Method GetScreenModeDisplayMode() called without causing panic and return expected display mode
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0064-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeDisplayMode      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0064-0001-GetScreenModeDisplayMode_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK   
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0064


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0100
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0100
//! @SYMAPI                     CWsScreenDevice::GetPixel(TRgb {ref}, const TPoint {ref}) const
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets color of specified point of screen
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession 
//!                             3. Completes the construction
//!                             4. Gets pixel at point(1, 1) to verify the color of pixel is white
//!                             5. Destructs the CWsScreenDevice object
//!                             6. Closes the CWsScreenDevice object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     The color of specified point matchs with expected value 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0100-0001-new_command03       
        COMMAND                 scrdev            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0100-0001-Construct_command04  
        COMMAND                 scrdev            GetPixel      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0100-0001-GetPixel_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0100

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0101
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0101
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets a scanline into a buffer
//! @SYMTestActions             1. Setup a CWindowGc and a RWindow.
//!                             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 EColor64K) for the RWindow, SetBackgroundColor to TRgb(255,0,0)
//!                             1.6 SetAutoFlush to TRUE for the RWsSession
//!                             1.7 Activate the CWindowGc to the RWindow
//!                             2.Use RWindow::BeginRedraw() to start a redraw cycle
//!                             3.RWindow::EndRedraw() 
//!                             4.Get scanline from screen.
//!                             5.Deactive RWindow, destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. The scanline get copied, and no panic get raised 
//!                             2. Check the scanline(Get pixel (1,1) of the scanline, the color is red).
//! @SYMTestType                CIT
        START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-CreateContext_command05
        CREATE_OBJECT           RWindowGroup      wingrp
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-Construct_command07
        CREATE_OBJECT           RWindow           win
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 win               EndRedraw
        COMMAND                 scrdev            GetScanLine                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0101-0001-GetScanLine_command17
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0101

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0102
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0102
//! @SYMAPI                     TInt CWsScreenDevice::AddFile(const TDesC {ref}, TInt {ref});
//!                             CWsScreenDevice::RemoveFile(TInt)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            1. Adds a font file to the device's typeface store
//!                             2. Removes a font file from device's typeface store
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Creates a CFont object
//!                             5. Checks that the font does not exist
//!                             6. Adds a font file to the device's typeface store.
//!                             7. Checks the expected font is added successfully
//!                             8. Removes a font file from device's typeface store
//!                             9. Checks the expected font is removed successfully
//!                             10. Destructs the CWsScreenDevice object
//!                             11. Closes the CWsScreenDevice object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. Checks that the font named 'Acb14' exists or not, it is negtive case, expects the font does not exist.
//!                             2. The specified font file is added to device's typeface store,
//!                             3. Checks that the font named 'Act14' is added successfully.
//!                             4. The added file is removed from device's typeface store successfully.
//!                             5. Checks that the font named 'Act14' is removed as expected, it is negtive case, expects the font does not exist.
//!                             6. Releases the reference of font added.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-new_command03       
        COMMAND                 scrdev            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-Construct_command04 
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-GetNearestFontToDesignHeightInTwips_command05
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-FontSpecInTwips_command06
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-ReleaseFont_command07
        COMMAND                 scrdev            AddFile            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-AddFile_command08
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-GetNearestFontToDesignHeightInTwips_command09
        COMMAND                 font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-FontSpecInTwips_command10
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-ReleaseFont_command11
        COMMAND                 scrdev            RemoveFile         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-RemoveFile_command12
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-GetNearestFontToDesignHeightInTwips_command13
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-FontSpecInTwips_command14
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0102-0001-ReleaseFont_command15
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0102

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0104
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0104
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInPixels(CFont {ptr}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the nearest font in pixels to that specified
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Creates a CFont object
//!                             5. Gets the nearest font in pixels to that specified.
//!                             6. Checks if the returned device font is as expected
//!                             7. Destructs the CWsScreenDevice object
//!                             8. Closes the CWsScreenDevice object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     KErrNone is returned and the returned device font is as expected. 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0104-0001-new_command03       
        COMMAND                 scrdev            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0104-0001-Construct_command04  
        COMMAND                 scrdev            GetNearestFontToDesignHeightInPixels     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0104-0001-GetNearestFontToDesignHeightInPixels_command05
        COMMAND                 font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0104-0001-FontSpecInTwips_command06
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0105-0001-ReleaseFont_command07
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0104

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0105
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0105
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInPixels(CFont {ptr}{ref}, const TFontSpec {ref}, TInt)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the nearest font in pixels to that specified
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Create a CFont object
//!                             5. Gets the nearest font in pixels to that specified.
//!                             6. Checks if the returned device font is as expected
//!                             7. Destruct the CWsScreenDevice object
//!                             8. Close the CWsScreenDevice object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     KErrNone is returned and the returned device font is as expected. 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0105-0001-new_command03       
        COMMAND                 scrdev            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0105-0001-Construct_command04  
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0105-0001-GetNearestFontToMaxHeightInPixels_command05
        COMMAND                 font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0105-0001-FontSpecInTwips_command06
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0105-0001-ReleaseFont_command07
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0105

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0106
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0106
//! @SYMAPI                     CWsScreenDevice::RectCompare(const TRect {ref}, const TRect {ref})
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            12/10/2007
//! @SYMTestCaseDesc            Set up and draw 3 50*50 rect regions on white screen. Region1 is the same as region2. Region3 is different.
//!                             Compare region1 and region2.
//!                             Compare region1 and region3.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw 3 rectangle(50*50 size,filled with red, border is black)in 3 different regions.Region1 is the same as region2. Region3 is different.
//!                             8. Call CWsScreenDevice::RectCompare() to compare region1 and region2.
//!                             9. Call CWsScreenDevice::RectCompare() to compare region1 and region3.
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. RectCompare which compares region1 and region2 returns ETrue.
//!                             2. RectCompare which compares region1 and region3 returns EFalse.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-CreateContext_command05
        CREATE_OBJECT           RWindowGroup      wingrp
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-Construct_command07
        CREATE_OBJECT           RWindow           win
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-DrawRect_command19
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-DrawRect_command20
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-DrawRect_command21
        COMMAND                 win               EndRedraw
        COMMAND                 scrdev            RectCompare                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-RectCompare_command23
        COMMAND                 scrdev            RectCompare                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0106-0001-RectCompare_command24
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0106

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0107
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0107
//! @SYMAPI                     CWsScreenDevice::RectCompare(const TRect {ref}, const TRect {ref})
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/24/2007
//! @SYMTestCaseDesc            Set up and draw 3 50*50 rect regions on white screen. Region1 is the same as region2. Region3 is different, Overloaded with flag EIncludeSprite.
//!                             Compare region1 and region2.
//!                             Compare region1 and region3.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw 3 rectangle(50*50 size,filled with red, border is black)in 3 different regions.Region1 is the same as region2. Region3 is different.
//!                             8. Verifys region1 and region2 are identical.
//!                             9. Verifys region1 and region3 are not identical.
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. RectCompare which compares region1 and region2 returns ETrue.
//!                             2. RectCompare which compares region1 and region3 returns EFalse.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-CreateContext_command05
        CREATE_OBJECT           RWindowGroup      wingrp
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-Construct_command07
        CREATE_OBJECT           RWindow           win
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-DrawRect_command19
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-DrawRect_command20
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-DrawRect_command21
        COMMAND                 win               EndRedraw
        COMMAND                 scrdev            RectCompare                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-RectCompare_command23
        COMMAND                 scrdev            RectCompare                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0107-0001-RectCompare_command24
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0107

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0108
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0108
//! @SYMAPI                     CWsScreenDevice::RectCompare(const TRect{ref}, const TRect{ref}, TUint)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            14/12/2007
//! @SYMTestCaseDesc            Draw two sprites on the screen, set a text cursor.
//!                             Then compares two rect areas of the screen to verify if they have the same content. Using three compare style: remove sprite, include sprite, text cursor.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a CWindowGc attached to CWsScreenDevice.
//!                             4. Create a RWindowGroup attached to RWsSession.
//!                             5. Create a RWindow, setup it and activate.
//!                             6. SetAutoFlush to TRUE for the RWsSession.
//!                             7. Active CWindowGc.
//!                             8. Use RWindow::BeginRedraw() to start a redraw cycle
//!                             9. Use RWindow::EndRedraw() to end draw
//!                             10. Create 2 RWsSprite attached to RWsSession by using RWsSprite(RWsSession &aWs) and construct.
//!                             11. Create 4 CFbsBitmap objects and load bitmaps.
//!                             12. Append these CFbsBitmaps to RWsSprites.
//!                             13. Set RWsSprites's position using SetPosition().
//!                             14. Set a text cursor using RWindowGroup::SetTextCursor().
//!                             15. Call RectCompare() to compare 2 areas of same content with ERemoveSprite.
//!                             16. Call RectCompare() to compare 2 areas of same content with EIncludeSprite.
//!                             17. Call RectCompare() to compare 2 areas of different content with EIncludeTextCursor.
//!                             18. Deactive RWindow, destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. No panic 
//!                             2. compare result 
//!                             2.1 15 returns ETrue  
//!                             2.2 16 returns ETrue  
//!                             2.3 17 returns EFalse  
//! @SYMTestType                CIT
        START_TEST_BLOCK        10           T_GraphicsWservAPI \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
                CREATE_OBJECT           RWsSession          ws
                CREATE_OBJECT           CWsScreenDevice     scrdev
                CREATE_OBJECT           CWindowGc           wgc
                CREATE_OBJECT           CFbsBitmap          fbsbmp1
                CREATE_OBJECT           CFbsBitmap          fbsbmp2
                CREATE_OBJECT           CFbsBitmap          fbsbmp3
                CREATE_OBJECT           CFbsBitmap          fbsbmp4
                CREATE_OBJECT           RWindowGroup        wingrp
                CREATE_OBJECT           RWindow             win
                CREATE_OBJECT           RWsSprite           sprite1
                CREATE_OBJECT           RWsSprite           sprite2
                COMMAND                 ws                  new
                COMMAND                 ws                  Connect
                COMMAND                 scrdev              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-new_command03       
                COMMAND                 scrdev              Construct
                COMMAND                 scrdev              CreateContext       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-CreateContext_command05
                COMMAND                 wingrp              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-new_command06
                COMMAND                 wingrp              Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-Construct_command07
                COMMAND                 win                 new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-new_command08
                COMMAND                 win                 Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-Construct_command09
                COMMAND                 win                 Activate
                COMMAND                 ws                  SetAutoFlush        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-SetAutoFlush_command11
                COMMAND                 wgc                 Activate            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-Activate_command12
                COMMAND                 win                 BeginRedraw
                COMMAND                 win                 EndRedraw

                COMMAND                 sprite1             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-new_command15
                COMMAND                 sprite1             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-construct_command16
                COMMAND                 fbsbmp1             new           
                COMMAND                 fbsbmp1             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-loadmask_command18
                
                COMMAND                 fbsbmp2             new           
                COMMAND                 fbsbmp2             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-load_command20
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-appendmember_command21
                
                COMMAND                 fbsbmp3             new           
                COMMAND                 fbsbmp3             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-load_command23
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-appendmember_command24

                COMMAND                 fbsbmp4             new           
                COMMAND                 fbsbmp4             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-load_command26
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-appendmember_command27

                COMMAND                 sprite1             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-SetPosition_command28
                
                COMMAND                 sprite2             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-new_command29
                COMMAND                 sprite2             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-construct_command30
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-appendmember_command31
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-appendmember_command32
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-appendmember_command33

                COMMAND                 sprite2             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-SetPosition_command34
                COMMAND                 sprite1             Activate
                COMMAND                 sprite2             Activate
                
                COMMAND                 wingrp              SetTextCursor       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-SetTextCursor_command37
                
                DELAY 1000000
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-RectCompare_command38
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-RectCompare_command39
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0108-0001-RectCompare_command40
                
                COMMAND                 fbsbmp1             ~
                COMMAND                 fbsbmp2             ~
                COMMAND                 fbsbmp3             ~
                COMMAND                 fbsbmp4             ~
                COMMAND                 wgc                 Deactivate
                COMMAND                 win                 Close
                COMMAND                 wingrp              Close
                COMMAND                 wgc                 ~
                COMMAND                 sprite1             Close
                COMMAND                 sprite2             Close
                COMMAND                 scrdev              ~        
                COMMAND                 ws                  Close
        END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0108

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0109
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0109
//! @SYMAPI                     CWsScreenDevice::GetScreenNumber() const
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/24/2007
//! @SYMTestCaseDesc            Get device's screen number
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Gets the number of device's screen installed.
//!                             5. Destructs the CWsScreenDevice object
//!                             6. Closes the CWsScreenDevice object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     The number of screens of device is retrieved, the value is as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0109-0001-new_command03       
        COMMAND                 scrdev            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0109-0001-Construct_command04  
        COMMAND                 scrdev            GetScreenNumber   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0109-0001-GetScreenNumber_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0109

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0110
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0110
//! @SYMAPI                     CWsScreenDevice::SetBackLight(TBool) const
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/24/2007
//! @SYMTestCaseDesc            Set back light off, then on.
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Turns backlight off
//!                             5. Turns backlight on
//!                             6. Destructs the CWsScreenDevice object
//!                             7. Closes the CWsScreenDevice object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic ocurred. 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0110-0001-new_command03       
        COMMAND                 scrdev            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0110-0001-Construct_command04  
        COMMAND                 scrdev            SetBackLight  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0110-0001-SetBackLight_command05
        COMMAND                 scrdev            SetBackLight  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0110-0001-SetBackLight_command06
        COMMAND                 scrdev            ~   
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0110


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0146
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0146
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInPixels(CFont {ptr}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Kevin Zeng, Ray Liang
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Get a font first, then release font, get another font, no panic occurs when case end.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Creat a font.
//!                             3. Create a CWsScreenDevice attached to RWsSession.
//!                             4. Complete the construction.
//!                             5. Call GetNearestFontToDesignHeightInPixels() to get a font.
//!                             6. Call ReleaseFont() method.
//!                             7. Call GetNearestFontToDesignHeightInPixels() to get a font again.
//!                             8. Destruct the CWsScreenDevice object
//!                             9. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0146-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetNearestFontToDesignHeightInPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0146-0001-GetNearestFontToDesignHeightInPixels_command05      
        COMMAND                 scrdev            ReleaseFont                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0146-0001-ReleaseFont_command06
        COMMAND                 scrdev            GetNearestFontToDesignHeightInPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0146-0001-GetNearestFontToDesignHeightInPixels_command07      
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0146


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0150
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0150
//! @SYMAPI                     CWsScreenDevice::FontHeightInPixels(TInt, TInt)
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the height of the specified font in pixels.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Complete the construction.
//!                             4. Call FontHeightInPixels() method with different parameter values.
//!                             5. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     FontHeightInPixels returns expected value.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0150-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0150-0001-FontHeightInPixels_command05
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0150-0001-FontHeightInPixels_command06
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0150-0001-FontHeightInPixels_command07
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0150-0001-FontHeightInPixels_command08
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0150

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0151
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0151
//! @SYMAPI                     CWsScreenDevice::::FontHeightInPixels(TInt, TInt)
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Negative test, using large numbers in the parameters.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Complete the construction.
//!                             4. Call FontHeightInPixels() method with large parameter values.
//!                             5. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     FontHeightInPixels returns 0 with no panic.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0151-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0151-0001-FontHeightInPixels_command05
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0151-0001-FontHeightInPixels_command06
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0151

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0153
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0153
//! @SYMAPI                     CWsScreenDevice::PaletteAttributes(TBool {ref}, TInt {ref})
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets the attributes of the device's palette.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Creat a font.
//!                             3. Create a CWsScreenDevice attached to RWsSession.
//!                             4. Complete the construction.
//!                             5. Call PaletteAttributes() method.
//!                             6. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     PaletteAttributes retrieves  expected values.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0153-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            PaletteAttributes         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0153-0001-PaletteAttributes_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0153

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0154
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0154
//! @SYMAPI                     CWsScreenDevice::SetCustomPalette(const CPalette {ptr})
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Sets the custom palette.
//!                             Gets the screen device's palette.
//!                             Support for palette will depend on the screen driver implementation, it's not supported in techview. 
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Creat a font.
//!                             3. Create a Palette.
//!                             3. Create a CWsScreenDevice attached to RWsSession.
//!                             4. Complete the construction.
//!                             5. Call SetCustomPalette() with the existing palette.
//!                             6. Call GetPalette() to get the palette.
//!                             7. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     SetCustomPalette returns KErrNone. GetPalette retrieves a palette as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CPalette          palette
        COMMAND                 palette           NewL                                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0154-0001-NewL_command01       
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0154-0001-new_command04       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            SetCustomPalette                      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0154-0001-SetCustomPalette_command06      
        COMMAND                 scrdev            GetPalette                            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0154-0001-GetPalette_command07
        COMMAND                 palette           ~        
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0154

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0156
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0156
//! @SYMAPI                     CWsScreenDevice::GetFontById(CFont {ptr}{ref}, TUid, const TAlgStyle {ref})
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Gets a font by its bitmap UID and check the font is got.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a TAlgStyle.
//!                             3. Create a CWsScreenDevice attached to RWsSession.
//!                             4. Complete the construction.
//!                             5. Call GetFontById() with the uid and algstyle to check the font got.
//!                             6. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. GetFontById returns KErrNone.
//!                             2. HeightInPixels returns expected value.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           TAlgStyle         algstyle
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 algstyle          new
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0156-0001-new_command04       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetFontById                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0156-0001-GetFontById_command07
        COMMAND                 font              HeightInPixels                        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0156-0001-HeightInPixels_command08
        COMMAND                 algstyle          ~
        COMMAND                 scrdev            ~
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0156

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0157
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0157
//! @SYMAPI                     CWsScreenDevice::GetFontById(CFont {ptr}{ref}, TUid, const TAlgStyle {ref})
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc            Negative test, using an error UID.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Cteaate a TAlgStyle.
//!                             3. Create a CWsScreenDevice attached to RWsSession.
//!                             4. Complete the construction.
//!                             5. Call GetFontById() with a algstyle and a error uid.
//!                             6. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     GetFontById returns a error.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           TAlgStyle         algstyle
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 algstyle          new
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0157-0001-new_command04       
        COMMAND                 scrdev            Construct
        COMMAND !Error=-1       scrdev            GetFontById                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0157-0001-GetFontById_command07
        COMMAND                 scrdev            ~        
        COMMAND                 algstyle          ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0157


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0158
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0158
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap {ptr})
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            12/10/2007
//! @SYMTestCaseDesc            Set up and draw a 100*100 rect on white screen, inside of the rect is red and border is black.
//!                             Craete a screen size bitmap.Copy the entire screen to the bitmap and check the bitmap's pixel.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle(100*100 size,filled with red, border is black).
//!                             7. Create a CFbsBitmap as the size of the screen.
//!                             8. Call CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap *) to copy the whole screen to bitmap.
//!                             9. GetPixel from the bitmap, check the rectangle(inside is red, border is black and outside is white).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CopyScreenToBitmap methods return KErrNone. 
//!                             2. The bitmap which is copyed to is correct
//!                                 2.1 The pixels (0,0) is color TRgb(0,0,0); The border is black.
//!                                 2.2 The pixels (99,99) is color TRgb(0,0,0); The border is black.
//!                                 2.3 The pixels (50,99) is color TRgb(0,0,0); The border is black.
//!                                 2.4 The pixels (99,50) is color TRgb(0,0,0); The border is black.
//!                                 2.5 The pixels (50,100) is color TRgb(255,255,255); Outside is white.
//!                                 2.6 The pixels (100,50) is color TRgb(255,255,255); Outside is white.
//!                                 2.7 The pixels (1,1) is color TRgb(255,0,0); Inside is red.
//!                                 2.8 The pixels (98,98) is color TRgb(255,0,0); Inside is red.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-CreateContext_command05
        CREATE_OBJECT           RWindowGroup      wingrp
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-Construct_command07
        CREATE_OBJECT           RWindow           win
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-DrawRect_command19
        COMMAND                 win               EndRedraw
        CREATE_OBJECT           CFbsBitmap        fbsbitmap
        COMMAND                 fbsbitmap         new
        COMMAND                 fbsbitmap         Create                                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-Create_command22
        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-CopyScreenToBitmap_command23
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-GetPixel_command24
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-GetPixel_command25
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-GetPixel_command26
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-GetPixel_command27
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-GetPixel_command28
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-GetPixel_command29
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-GetPixel_command30
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0158-0001-GetPixel_command31
        COMMAND                 fbsbitmap         ~        
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0158

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0159
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0159
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap {ptr}, const TRect {ref})
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            12/10/2007
//! @SYMTestCaseDesc            Set up and draw a 100*100 rect on white screen, inside of the rect is red and border is black.
//!                             Craete a 100*100 bitmap.Copy the 100*100 rect in the screen to the bitmap and check the bitmap's pixel.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle(100*100 size,filled with red, border is black).
//!                             7. Create a CFbsBitmap as the size of the screen.
//!                             8. Call CWsScreenDevice::CopyScreenToBitmap((const CFbsBitmap *aBitmap,const TRect &aRect) to copy a 100*100 rect to a 100*100 bitmap.
//!                             9. GetPixel from the bitmap, check the rectangle(inside is red, border is black).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CopyScreenToBitmap methods return KErrNone. 
//!                             2. The bitmap which is copyed to is correct
//!                                 2.1 The pixels (0,0) is color TRgb(0,0,0); The border is black.
//!                                 2.2 The pixels (99,99) is color TRgb(0,0,0); The border is black.
//!                                 2.3 The pixels (50,99) is color TRgb(0,0,0); The border is black.
//!                                 2.4 The pixels (99,50) is color TRgb(0,0,0); The border is black.
//!                                 2.5 The pixels (1,1) is color TRgb(255,0,0); Inside is red.
//!                                 2.6 The pixels (98,98) is color TRgb(255,0,0); Inside is red.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-CreateContext_command05
        CREATE_OBJECT           RWindowGroup      wingrp
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-Construct_command07
        CREATE_OBJECT           RWindow           win
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-DrawRect_command19
        COMMAND                 win               EndRedraw
        CREATE_OBJECT           CFbsBitmap        fbsbitmap
        COMMAND                 fbsbitmap         new
        COMMAND                 fbsbitmap         Create                                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-Create_command22
        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-CopyScreenToBitmap_command23
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-GetPixel_command24
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-GetPixel_command25
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-GetPixel_command26
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-GetPixel_command27
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-GetPixel_command28
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0159-0001-GetPixel_command29
        COMMAND                 fbsbitmap         ~        
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0159

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0160
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0160
//! @SYMAPI                     CWsScreenDevice::Construct(TInt)
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            01/03/2008
//! @SYMTestCaseDesc            Negative test, uses invalid input values
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction with aDefaultScreenNumber = 10000
//!                             4. Destruct the CWsScreenDevice object
//!                             5. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 65 panic received at Test Action 3.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0160-0001-new_command03       
        COMMAND                 scrdev            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0160-0001-Construct_command04         
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV  !PanicCode=65
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0160

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0161
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0161
//! @SYMAPI                     CWsScreenDevice::HorizontalTwipsToPixels(TInt)
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            01/03/2008
//! @SYMTestCaseDesc            Uses big twips/0/small negative twips
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Translates three horizontal dimension in twips into pixels
//!                             4.1 input twips = 762000000, return 64000000 for emulator and 54635895 for H4.
//!                             4.2 input twips = 0, return 0.
//!                             4.3 input twips = -762000000, return -63999999 for emulator and -54635894 for H4.
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned pixels are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0161-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            HorizontalTwipsToPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0161-0001-HorizontalTwipsToPixels_command05
        COMMAND                 scrdev            HorizontalTwipsToPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0161-0001-HorizontalTwipsToPixels_command06
        COMMAND                 scrdev            HorizontalTwipsToPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0161-0001-HorizontalTwipsToPixels_command07
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0161

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0162
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0162
//! @SYMAPI                     CWsScreenDevice::VerticalTwipsToPixels(TInt)
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            01/03/2008
//! @SYMTestCaseDesc            Uses big twips/0/small negative twips
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Translates three vertical dimension in twips into pixels
//!                             4.1 input twips = 285800000, return 24000000 for emulator and 22555738 for H4.
//!                             4.2 input twips = 0, return 0.
//!                             4.3 input twips = -285800000, return -23999999 for emulator and -22555737 for H4.
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned pixels are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0162-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            VerticalTwipsToPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0162-0001-VerticalTwipsToPixels_command05
        COMMAND                 scrdev            VerticalTwipsToPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0162-0001-VerticalTwipsToPixels_command06
        COMMAND                 scrdev            VerticalTwipsToPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0162-0001-VerticalTwipsToPixels_command07
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0162

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0163
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0163
//! @SYMAPI                     CWsScreenDevice::HorizontalPixelsToTwips(TInt)
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            01/03/2008
//! @SYMTestCaseDesc            Uses big pixels/0/small negative pixels
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Translates three horizontal dimension in pixels into twips 
//!                             4.1 input pixel = 64000000, return 762000000 for emulator and 892600000 for H4.
//!                             4.2 input pixel = 0, return 0.
//!                             4.3 input pixel = -64000000, return -761999999 for emulator and -892599999 for H4.
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned twips are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0163-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            HorizontalPixelsToTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0163-0001-HorizontalPixelsToTwips_command05
        COMMAND                 scrdev            HorizontalPixelsToTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0163-0001-HorizontalPixelsToTwips_command06
        COMMAND                 scrdev            HorizontalPixelsToTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0163-0001-HorizontalPixelsToTwips_command07
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0163

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0164
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0164
//! @SYMAPI                     CWsScreenDevice::VerticalPixelsToTwips(TInt)
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            01/03/2008
//! @SYMTestCaseDesc            Uses big pixels/0/small negative pixels
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Translates three vertical dimension in pixels into twips 
//!                             4.1 input pixel = 24000000, return 285800000 for emulator and 304100000 for H4.
//!                             4.2 input pixel = 0, return 0.
//!                             4.3 input pixel = -24000000, return -285799999 for emulator and -304099999 for H4.
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic and the returned twips are as expected
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0164-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            VerticalPixelsToTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0164-0001-VerticalPixelsToTwips_command05
        COMMAND                 scrdev            VerticalPixelsToTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0164-0001-VerticalPixelsToTwips_command06
        COMMAND                 scrdev            VerticalPixelsToTwips  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0164-0001-VerticalPixelsToTwips_command07
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0164

//!START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0165
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0165
//! @SYMAPI                     CWsScreenDevice::CreateContext(CWindowGc{ptr}{ref})
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            01/03/2008
//! @SYMTestCaseDesc            Negative test.
//!                             Create a CWsScreenDevice object neither attached to a RWsSession nor complete the construction, then call the CreateContext with it.
//! @SYMTestActions             1.New a CWsScreenDevice without attached to a RWsSession
//!                             2.Create a CWindowGc within the CWsScreenDevice by CreateContext
//!                             3.Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     KERN-EXEC 3 panic received at Test Action 2.
//! @SYMTestType                CIT
//!    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
//!        CREATE_OBJECT           CWsScreenDevice   scrdev
//!        CREATE_OBJECT           CWindowGc         wgc
//!        COMMAND                 scrdev            new
//!        COMMAND                 scrdev            CreateContext GRAPHICS-WSERV-WsScreenDevice-PublicApi-0165-0001-CreateContext_command02
//!        COMMAND                 wgc               ~        
//!        COMMAND                 scrdev            ~        
//!    END_TEST_BLOCK              !PanicString=KERN-EXEC  !PanicCode=3
//!    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
//!END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0165

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0180
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0180
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInTwips(CFont {prt}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/03/2008
//! @SYMTestCaseDesc            Negative test, gets an existent font name but too big/too small/negative size
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction.
//!                             4. Get font in twips for DejaVu Sans Mono, 1000000 twips font.
//!                             5. Check the returned font is expected 
//!                             6. Get font in twips for DejaVu Sans Mono, 0 twips font.
//!                             7. Check the returned font is expected 
//!                             8. Get font in twips for DejaVu Sans Mono, -1 twips font.
//!                             9. Check the returned font is expected 
//!                             10. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The function GetNearestFontToDesignHeightInTwips() call returns KErrNone and no panic.
//!                             2. The returned font is as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0180-0001-new_command03       
        COMMAND                 scrdev            Construct    
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0180-0001-GetNearestFontToDesignHeightInTwips_command05
        COMMAND                 font              FontSpecInTwips                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0180-0001-FontSpecInTwips_command06              
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0180-0001-GetNearestFontToDesignHeightInTwips_command07
        COMMAND                 font              FontSpecInTwips                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0180-0001-FontSpecInTwips_command08              
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0180-0001-GetNearestFontToDesignHeightInTwips_command09
        COMMAND                 font              FontSpecInTwips                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0180-0001-FontSpecInTwips_command10              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK   
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0180

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0181
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0181
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInTwips(CFont {prt}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/03/2008
//! @SYMTestCaseDesc            Negative test, try to get a font by an empty font name.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction. 
//!                             4. Get the font in twips for "" (empty name), 50 twips font.
//!                             5. Check the returned font is expected 
//!                             6. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The function GetNearestFontToDesignHeightInTwips() call returns KErrNone and no panic.
//!                             2. The returned font is as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev  
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0181-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0181-0001-GetNearestFontToDesignHeightInTwips_command05
        COMMAND                 font              FontSpecInTwips                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0181-0001-FontSpecInTwips_command06              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close        
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0181

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInTwips(CFont {prt}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/07/2008
//! @SYMTestCaseDesc            1. Try to get a font before adding it to the typeface.
//!                             2. Add the font and try to get it, verify the font is as expected.
//!                             3. Remove the font and try to get it again.
//! @SYMTestActions             1. Create and connects a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction.
//!                             4. Try to get a non-exist font "Acb14" and check it.
//!                             5. Add the "Acb14" font file to the device's typeface store.
//!                             6. Try to get the "Acb14" font and check the returned font.
//!                             7. Remove the font file from device's typeface store
//!                             8. Try to get the "Acb14" font again and check the returned font.
//!                             9. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The FontSpecInTwips() call at Test Action 4 should not return the font name "Acb14".
//!                             2. The FontSepcInTwips() call at Test Action 6 should not return the font name "Acb14" because wserv font system cached the first get.
//!                             3. The FontSpecInTwips() call at Test Action 8 should not return the font name "Acb14" .
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev 
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-new_command03       
        COMMAND                 scrdev            Construct    
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-GetNearestFontToDesignHeightInTwips_command05
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-FontSpecInTwips_command06
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-ReleaseFont_command07
        COMMAND                 scrdev            AddFile            GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-AddFile_command08
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-GetNearestFontToDesignHeightInTwips_command09
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-FontSpecInTwips_command10
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-ReleaseFont_command11
        COMMAND                 scrdev            RemoveFile         GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-RemoveFile_command12
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-GetNearestFontToDesignHeightInTwips_command13
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-FontSpecInTwips_command14
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182-0001-ReleaseFont_command15
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close      
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0182

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInTwips(CFont {prt}{ref}, const TFontSpec {ref}, TInt)
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/07/2008
//! @SYMTestCaseDesc            Negative test, gets an existent font but too big/too small/negative size.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction.
//!                             4. Get the font for DejaVu Sans Mono, 1000000 twips font, specifying max height = 100.
//!                             5. Check the returned font is as expected.
//!                             6. Get the font for DejaVu Sans Mono, 0 twips font, specifying max height=100.
//!                             7. Check the returned font is as expected.
//!                             8. Get the font for DejaVu Sans Mono, -1 twips font, specifying max height=100.
//!                             9. Check the returned font is as expected.
//!                             10. Get the font for DejaVu Sans Mono, 72 twips font, specifying max height = 1000000.
//!                             11. Check KErrTooBig error is returned.
//!                             12. Get the font for DejaVu Sans Mono, 72 twips font, specifying max height = 0.
//!                             13. Check the returned font is as expected.
//!                             14. Get the font for DejaVu Sans Mono, 72 twips font, specifying max height = -1.
//!                             15. Check the returned font is as expected.
//!                             16. Get the font for DejaVu Sans Mono, 10000 twips font, specifying max height = -1.
//!                             17. Check the returned font is as expected.
//!                             18. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The GetNearestFontToMaxHeightInTwips() call at Test Action 7 returns KErrTooBig (Error=-40) and no panic.
//!                             2. The Other GetNearestFontToMaxHeightInTwips() calls return KErrNone and no panic.
//!                             3. The returned font is as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-GetNearestFontToMaxHeightInTwips_command05
        COMMAND                 font              FontSpecInTwips                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0183-0001-FontSpecInTwips_command06              
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-ReleaseFont_command07     
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-GetNearestFontToMaxHeightInTwips_command08
        COMMAND                 font              FontSpecInTwips                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0183-0001-FontSpecInTwips_command09              
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-ReleaseFont_command10  
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-GetNearestFontToMaxHeightInTwips_command11
        COMMAND                 font              FontSpecInTwips                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0183-0001-FontSpecInTwips_command12              
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-ReleaseFont_command13
        COMMAND   !Error=-40    scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-GetNearestFontToMaxHeightInTwips_command14
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-ReleaseFont_command15
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-GetNearestFontToMaxHeightInTwips_command16
        COMMAND                 font              FontSpecInTwips                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0183-0001-FontSpecInTwips_command17            
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-ReleaseFont_command18
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-GetNearestFontToMaxHeightInTwips_command19
        COMMAND                 font              FontSpecInTwips                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0183-0001-FontSpecInTwips_command20            
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-ReleaseFont_command21
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-GetNearestFontToMaxHeightInTwips_command22
        COMMAND                 font              FontSpecInTwips                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0183-0001-FontSpecInTwips_command23              
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183-0001-ReleaseFont_command24
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK   
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0183

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0184
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0184
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInTwips(CFont {prt}{ref}, const TFontSpec {ref}, TInt)
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/07/2008
//! @SYMTestCaseDesc            Negative test, try to get a font by an empty font name.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction.
//!                             4. Get the font in twips for "" (empty name), 50 twips font, 60 max font.
//!                             5. Check the returned font is as expected.
//!                             6. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The function GetNearestFontToMaxHeightInTwips() call returns KErrNone and no panic.
//!                             2. The returned font is as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev  
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0184-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0184-0001-GetNearestFontToMaxHeightInTwips_command05
        COMMAND                 font              FontSpecInTwips                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0184-0001-FontSpecInTwips_command06              
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0184-0001-ReleaseFont_command07
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close        
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0184

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInTwips(CFont {prt}{ref}, const TFontSpec {ref}, TInt)
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/08/2008
//! @SYMTestCaseDesc            1. Try to get a font before adding it to the typeface.
//!                             2. Add the font and try to get it, verify the font is as expected.
//!                             3. Remove the font and try to get it again.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to a RWsSession
//!                             3. Complete the construction
//!                             4. Get a non exist font in twips and then check it.
//!                             5. Add a font file to the device's typeface store.
//!                             6. Try to get the "Acb14" font and check the returned font.
//!                             7. Remove the font file from device's typeface store
//!                             8. Get the removed font again and check it.
//!                             9. Destruct and close all ojects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The FontSpecInTwips() call at Test Action 4 should not return the font "Acb14".
//!                             2. The FontSepcInTwips() call at Test Action 6 should not return the font name "Acb14" because wserv font system cached the first get.
//!                             3. The FontSpecInTwips() call at Test Action 8 should not return the font "Acb14".
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev 
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-GetNearestFontToMaxHeightInTwips_command05
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-FontSpecInTwips_command06
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-ReleaseFont_command07
        COMMAND                 scrdev            AddFile            GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-AddFile_command08
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-GetNearestFontToMaxHeightInTwips_command09
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-FontSpecInTwips_command10
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-ReleaseFont_command11
        COMMAND                 scrdev            RemoveFile         GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-RemoveFile_command12
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-GetNearestFontToMaxHeightInTwips_command13
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-FontSpecInTwips_command14
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185-0001-ReleaseFont_command15
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close      
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0185


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInTwips(CFont {prt}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/07/2008
//! @SYMTestCaseDesc            Add the font and try to get it, verify the font is as expected.                       
//! @SYMTestActions             1. Create and connects a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction.
//!                             4. Add the "Acb14" font file to the device's typeface store.
//!                             5. Try to get the "Acb14" font and check the returned font.
//!                             6. Remove the font file from device's typeface store
//!                             7. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     The FontSpecInTwips() call should return the font name "Acb14".
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev 
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186-0001-new_command03       
        COMMAND                 scrdev            Construct    
        COMMAND                 scrdev            AddFile            GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186-0001-AddFile_command05
        COMMAND                 scrdev            GetNearestFontToDesignHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186-0001-GetNearestFontToDesignHeightInTwips_command06
        COMMAND                 font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186-0001-FontSpecInTwips_command07
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186-0001-ReleaseFont_command08
        COMMAND                 scrdev            RemoveFile         GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186-0001-RemoveFile_command09
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close      
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0186

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInTwips(CFont {prt}{ref}, const TFontSpec {ref}, TInt)
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/08/2008
//! @SYMTestCaseDesc            Add the font and try to get it, verify the font is as expected. 
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to a RWsSession
//!                             3. Complete the construction
//!                             4. Add a font file to the device's typeface store.
//!                             5. Check the expected font is added successfully.
//!                             6. Remove the font file from device's typeface store
//!                             7. Destruct and close all ojects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     The FontSpecInTwips() call should return the font "Acb14".                       
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev 
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            AddFile            GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187-0001-AddFile_command05
        COMMAND                 scrdev            GetNearestFontToMaxHeightInTwips GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187-0001-GetNearestFontToMaxHeightInTwips_command06
        COMMAND                 font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187-0001-FontSpecInTwips_command07
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187-0001-ReleaseFont_command08
        COMMAND                 scrdev            RemoveFile         GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187-0001-RemoveFile_command09
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close      
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0187


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0192
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0192
//! @SYMAPI                     CWsScreenDevice::TypefaceSupport(TTypefaceSupport{ref}, TInt)
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/3/2008
//! @SYMTestCaseDesc            Negative test, uses -1 as faceindex parameter.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get typeface information for -1 as index number 
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     FBSCLI 26 panic received at Test Action 4. 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0192-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            TypefaceSupport   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0192-0001-TypefaceSupport_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    !PanicString=FBSCLI   !PanicCode=26
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0192

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0194
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0194
//! @SYMAPI                     CWsScreenDevice::FontHeightInTwips(TInt, TInt) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/3/2007
//! @SYMTestCaseDesc            Negative test, uses (0,-1),(10000,10000) and (0,10000) as the parameters.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the height in twips of the specified font using FontHeightInTwips(), input is (0,-1).
//!                             4. Get the height in twips of the specified font using FontHeightInTwips(), input is (10000,10000).
//!                             4. Get the height in twips of the specified font using FontHeightInTwips(), input is (0,10000).
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic and the FontHeightInTwips() returns 0.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0194-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            FontHeightInTwips     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0194-0001-FontHeightInTwips_command05              
        COMMAND                 scrdev            FontHeightInTwips     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0194-0001-FontHeightInTwips_command06              
        COMMAND                 scrdev            FontHeightInTwips     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0194-0001-FontHeightInTwips_command07              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0194

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0195
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0195
//! @SYMAPI                     CWsScreenDevice::FontHeightInTwips(TInt, TInt) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/3/2007
//! @SYMTestCaseDesc            Negative test, uses (-1,0) as the parameters.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the height in twips of the specified font using FontHeightInTwips(), input is (-1,0)
//!                             5. Destruct the CWsScreenDevice object
//!                             6. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     FBSCLI 26 panic received at Test Action 4. 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0195-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            FontHeightInTwips     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0195-0001-FontHeightInTwips_command05              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    !PanicString=FBSCLI   !PanicCode=26
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0195

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0200
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0200
//! @SYMAPI                     CWsScreenDevice::GetPixel(TRgb {ref}, const TPoint {ref})
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            28/12/2007
//! @SYMTestCaseDesc            Test for negative x- and y-coordinate/too big x- and y-coordinate.
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Gets pixel at point(-1, 0) and check the RGB color is white.
//!                             5. Gets pixel at point(0, -1) and check the RGB color is white.
//!                             6. Gets pixel at point(-1, -1) and check the RGB color is white.
//!                             7. Gets pixel at point(10000, 0) and check the RGB color is white.
//!                             8. Gets pixel at point(0, 10000) and check the RGB color is white.
//!                             9. Gets pixel at point(10000, 10000) and check the RGB color is white.
//!                             10. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     GetPixel doesn't cause panic
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT   RWsSession          ws
        CREATE_OBJECT   CWsScreenDevice     scrdev
        COMMAND         ws                  new
        COMMAND         ws                  Connect
        COMMAND         scrdev              new                      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0200-0001-new_command03
        COMMAND         scrdev              Construct
        COMMAND         scrdev              GetPixel                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0200-0001-GetPixel_command05
        COMMAND         scrdev              GetPixel                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0200-0001-GetPixel_command06
        COMMAND         scrdev              GetPixel                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0200-0001-GetPixel_command07
        COMMAND         scrdev              GetPixel                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0200-0001-GetPixel_command08
        COMMAND         scrdev              GetPixel                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0200-0001-GetPixel_command09
        COMMAND         scrdev              GetPixel                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0200-0001-GetPixel_command10
        COMMAND         scrdev              ~
        COMMAND         ws                  Close
   END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0200

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0201
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0201
//! @SYMAPI                     CWsScreenDevice::AddFile(const TDesC {ref}, TInt)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Negative test, adds non-existent file.
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Completes the construction.
//!                             4. Adds a font file which does not exist to the device's typeface store.
//!                             5. Destructs and closes all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     The function AddFile() call returns error code -1.
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT      RWsSession         ws
        CREATE_OBJECT      CWsScreenDevice    scrdev
        COMMAND            ws                 new
        COMMAND            ws                 Connect
        COMMAND            scrdev             new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0201-0001-new_command03
        COMMAND            scrdev             Construct     
        COMMAND !Error=-1  scrdev             AddFile       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0201-0001-AddFile_command05
        COMMAND            scrdev             ~
        COMMAND            ws                 Close
   END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0201

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0202
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0202
//! @SYMAPI                     CWsScreenDevice::AddFile(const TDesC {ref}, TInt)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Negative test, adds invalid symbian font file.
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Completes the construction.
//!                             4. Adds a font file which is invalid to the device's typeface store.
//!                             5. Destructs and closes all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     The function AddFile() call returns error code -5.
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT      RWsSession         ws
        CREATE_OBJECT      CWsScreenDevice    scrdev
        COMMAND            ws                 new
        COMMAND            ws                 Connect
        COMMAND            scrdev             new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0202-0001-new_command03
        COMMAND            scrdev             Construct     
        COMMAND !Error=-5  scrdev             AddFile       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0202-0001-AddFile_command05
        COMMAND            scrdev             ~
        COMMAND            ws                 Close
   END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0202

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0203
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0203
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInPixels(CFont {ptr}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Negative test, gets an existent font name but negative/too big/too small size
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Gets font in pixels for font DejaVu Sans Mono whose height is -1.
//!                             5. Check the returned font is as expected. 
//!                             6. Gets font in pixels for font DejaVu Sans Mono whose height is 10000.
//!                             7. Check the returned font is as expected. 
//!                             8. Gets font in pixels for font DejaVu Sans Mono whose height is 0.
//!                             9. Check the returned font is as expected. 
//!                             10. Destructs the CWsScreenDevice object.
//!                             11. Closes the CWsScreenDevice object.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. The function GetNearestFontToDesignHeightInPixels() call returns KErrNone and no panic.
//!                             2. The returned font is as expected.
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT         RWsSession        ws
        CREATE_OBJECT         CWsScreenDevice   scrdev
        CREATE_OBJECT         CFbsFont          font
        COMMAND               ws                new
        COMMAND               ws                Connect
        COMMAND               scrdev            new         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0203-0001-new_command03
        COMMAND               scrdev            Construct   
        COMMAND               scrdev            GetNearestFontToDesignHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicApi-0203-0001-GetNearestFontToDesignHeightInPixels_command05
        COMMAND               font              FontSpecInTwips                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0203-0001-FontSpecInTwips_command06              
        COMMAND               scrdev            GetNearestFontToDesignHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicApi-0203-0001-GetNearestFontToDesignHeightInPixels_command07
        COMMAND               font              FontSpecInTwips                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0203-0001-FontSpecInTwips_command08              
        COMMAND               scrdev            GetNearestFontToDesignHeightInPixels  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0203-0001-GetNearestFontToDesignHeightInPixels_command09
        COMMAND               font              FontSpecInTwips                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0203-0001-FontSpecInTwips_command10              
        COMMAND               scrdev            ~
        COMMAND               ws                Close
   END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0203

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0204
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0204
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInPixels(CFont {prt}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            01/07/2008
//! @SYMTestCaseDesc            Negative test, gets an empty font name
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction.
//!                             4. Get the font in pixels for "" (empty name), 50 pixels font.
//!                             5. Check the returned font is as expected.
//!                             6. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The function GetNearestFontToDesignHeightInPixels() call returns KErrNone and no panic.
//!                             2. The returned font is as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev  
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0204-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToDesignHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0204-0001-GetNearestFontToDesignHeightInPixels_command05
        COMMAND                 font              FontSpecInTwips                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0204-0001-FontSpecInTwips_command06              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close        
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0204

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0206
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0206
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToDesignHeightInPixels(CFont {ptr}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc             1. Try to get a font before adding it to the typeface, 
//!                              2. Add the font and try to get it, verify the font is as expected
//!                              3. Remove the font and try to get it again
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Try to get a font before adding it to the typeface.
//!                             5. Add the font and try to get it, verify the font is as expected.
//!                             6. Remove the font and try to get it again
//!                             7. Destructs the CWsScreenDevice object
//!                             8. Closes the CWsScreenDevice object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. The function GetNearestFontToDesignHeightInPixels() calls return KErrNone and no panic.
//!                             2. The first FontSpecInTwips() call should not return the font name "Acb14".
//!                             3. The second FontSepcInTwips() call returns font name "Acb14"
//!                             4. The third FontSpecInTwips() call should not return the font name "Acb14" .
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToDesignHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-GetNearestFontToDesignHeightInPixels_command05
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-FontSpecInTwips_command06
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-ReleaseFont_command07
        COMMAND                 scrdev            AddFile            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-AddFile_command08
        COMMAND                 scrdev            GetNearestFontToDesignHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-GetNearestFontToDesignHeightInPixels_command09
        COMMAND                 font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-FontSpecInTwips_command10
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-ReleaseFont_command11
        COMMAND                 scrdev            RemoveFile         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-RemoveFile_command12
        COMMAND                 scrdev            GetNearestFontToDesignHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-GetNearestFontToDesignHeightInPixels_command13
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-FontSpecInTwips_command14
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0206-0001-ReleaseFont_command15
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0206

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInPixels(CFont {prt}{ref}, const TFontSpec {ref}, TInt)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            01/07/2008
//! @SYMTestCaseDesc            Negative test, gets an existent font but too small/negative size.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction.
//!                             4. Get the font for DejaVu Sans Mono, 1000000 pixels font, specifying max size=1000.
//!                             5. Check the returned font is as expected.
//!                             6. Get the font for DejaVu Sans Mono, 0 pixels font, specifying max size=1000.
//!                             7. Check the returned font is as expected.
//!                             8. Get the font for DejaVu Sans Mono, -1 pixels font, specifying max size=1000.
//!                             9. Check the returned font is as expected.
//!                             10. Get the font for DejaVu Sans Mono, 1000 pixels font, specifying max size = 1000000.
//!                             11. Check KErrTooBig error is returned.
//!                             12. Get the font for DejaVu Sans Mono, 1000 pixels font, specifying max size = 0.
//!                             13. Check the returned font is as expected.
//!                             14. Get the font for DejaVu Sans Mono, 1000 pixels font, specifying max size = -1(halt the emulator, defect).
//!                             15. Check the returned font is as expected.
//!                             16. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The GetNearestFontToMaxHeightInTwips() call at Test Action 10 returns KErrTooBig (Error=-40) and no panic.
//!                             2. The Other GetNearestFontToMaxHeightInTwips() calls return KErrNone and no panic.
//!                             3. The returned font is as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-GetNearestFontToMaxHeightInPixels_command05      
        COMMAND                 font              FontSpecInTwips                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0207-0001-FontSpecInTwips_command06         
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-ReleaseFont_command07
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-GetNearestFontToMaxHeightInPixels_command08
        COMMAND                 font              FontSpecInTwips                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0207-0001-FontSpecInTwips_command09        
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-ReleaseFont_command10
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-GetNearestFontToMaxHeightInPixels_command11
        COMMAND                 font              FontSpecInTwips                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0207-0001-FontSpecInTwips_command12         
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-ReleaseFont_command13
        COMMAND   !Error=-40    scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-GetNearestFontToMaxHeightInPixels_command14
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-ReleaseFont_command15
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-GetNearestFontToMaxHeightInPixels_command16
        COMMAND                 font              FontSpecInTwips                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0207-0001-FontSpecInTwips_command17         
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-ReleaseFont_command18
//!        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-GetNearestFontToMaxHeightInPixels_command19
//!        COMMAND                 font              FontSpecInTwips                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0207-0001-FontSpecInTwips_command20         
//!        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207-0001-ReleaseFont_command21
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK   
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0207

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0208
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0208
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInPixels(CFont {prt}{ref}, const TFontSpec {ref}, TInt)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            01/07/2008
//! @SYMTestCaseDesc            Negative test, try to get a font by an empty font name.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to a RWsSession.
//!                             3. Complete the construction.
//!                             4. Get the font in pixels for "" (empty name), 50 pixels font, 60 max font.
//!                             5. Check the returned font is as expected.
//!                             6. Destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Low
//! @SYMTestExpectedResults     1. The function GetNearestFontToMaxHeightInPixels() call returns KErrNone and no panic.
//!                             2. The returned font is as expected.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev  
        CREATE_OBJECT           CFbsFont          font        
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0208-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0208-0001-GetNearestFontToMaxHeightInPixels_command05
        COMMAND                 font              FontSpecInTwips                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0208-0001-FontSpecInTwips_command06              
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close        
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0208

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0210
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0210
//! @SYMAPI                     CWsScreenDevice::GetNearestFontToMaxHeightInPixels(CFont {ptr}{ref}, const TFontSpec {ref})
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            11/23/2007
//! @SYMTestCaseDesc             1. Try to get a font before adding it to the typeface, 
//!                              2. Add the font and try to get it, verify the font is as expected
//!                              3. Remove the font and try to get it again
//! @SYMTestActions             1. Creates and connects a RWsSession
//!                             2. Creates a CWsScreenDevice attached to a RWsSession
//!                             3. Completes the construction
//!                             4. Creates a CFont object
//!                             5. Try to get a font before adding it to the typeface.
//!                             6. Add the font and try to get it, verify the font is as expected.
//!                             7. Remove the font and try to get it again.
//!                             8. Destructs the CWsScreenDevice object
//!                             9. Closes the CWsScreenDevice object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. The function GetNearestFontToMaxHeightInPixels() calls return KErrNone and no panic.
//!                             2. The first FontSpecInTwips() call should not return the font name "Acb14".
//!                             3. The second FontSepcInTwips() call returns font name "Acb14"
//!                             4. The third FontSpecInTwips() call should not return the font name "Acb14" .
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-new_command03       
        COMMAND                 scrdev            Construct     
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-GetNearestFontToMaxHeightInPixels_command05
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-FontSpecInTwips_command06
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-ReleaseFont_command07
        COMMAND                 scrdev            AddFile            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-AddFile_command08
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-GetNearestFontToMaxHeightInPixels_command09
        COMMAND                 font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-FontSpecInTwips_command10
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-ReleaseFont_command11
        COMMAND                 scrdev            RemoveFile         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-RemoveFile_command12
        COMMAND                 scrdev            GetNearestFontToMaxHeightInPixels GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-GetNearestFontToMaxHeightInPixels_command13
        COMMAND   !Error=-1     font              FontSpecInTwips    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-FontSpecInTwips_command14
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0210-0001-ReleaseFont_command15
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0210

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0211
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0211
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Negative test, uses a zero-length buffer.
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Creates a CWindowGc object.
//!                             4. Completes the construction.
//!                             5. Creates a RWindowGroup object attached to the RWsSession object created before.
//!                             6. Creates a RWindow object attached to the RWindowGroup object created before.
//!                             7. Initializes the display mode of the screen.
//!                             8. Sets background color of screen to red.
//!                             9. Flushes the buffer to screen.
//!                             10. Begins to draw screen, then end to draw screen.
//!                             11. Gets scanline from screen.
//!                             12. Deactives RWindow, destructs and closes all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 37 panic received at Test Action 11. 
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT   RWsSession          ws
        CREATE_OBJECT   CWsScreenDevice     scrdev
        CREATE_OBJECT   CWindowGc           wgc
        CREATE_OBJECT   RWindowGroup        wingrp
        CREATE_OBJECT   RWindow             win            
        COMMAND         ws                  new
        COMMAND         ws                  Connect        
        COMMAND         scrdev              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-new_command03
        COMMAND         scrdev              Construct
        COMMAND         scrdev              CreateContext           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-CreateContext_command05
        COMMAND         wingrp              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-new_command06
        COMMAND         wingrp              Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-Construct_command07
        COMMAND         win                 new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-new_command08
        COMMAND         win                 Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-Construct_command09
        COMMAND         win                 SetRequiredDisplayMode  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-SetRequiredDisplayMode_command10
        COMMAND         win                 SetBackgroundColor      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-SetBackgroundColor_command11
        COMMAND         win                 Activate
        COMMAND         ws                  SetAutoFlush            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-SetAutoFlush_command13
        COMMAND         wgc                 Activate                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-Activate_command14
        COMMAND         win                 BeginRedraw
        COMMAND         win                 EndRedraw
        COMMAND         scrdev              GetScanLine             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0211-0001-GetScanLine_command17
        COMMAND         wgc                 Deactivate
        COMMAND         win                 Close
        COMMAND         wingrp              Close
        COMMAND         wgc                 ~
        COMMAND         scrdev              ~
        COMMAND         ws                  Close
   END_TEST_BLOCK !PanicString=WSERV !PanicCode=80
   RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0211

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0214
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0214
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Test for a zero-length scanline.
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Creates a CWindowGc object.
//!                             4. Completes the construction.
//!                             5. Creates a RWindowGroup object attached to the RWsSession object created before.
//!                             6. Creates a RWindow object attached to the RWindowGroup object created before.
//!                             7. Initializes the display mode of the screen.
//!                             8. Sets background color of screen to red.
//!                             9. Flushes the buffer to screen.
//!                             10. Begins to draw screen, then end to draw screen.
//!                             11. Gets scanline from screen.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic received at Test Action 11. 
//!                            
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession          ws
        CREATE_OBJECT           CWsScreenDevice     scrdev
        CREATE_OBJECT           CWindowGc           wgc
        CREATE_OBJECT           RWindowGroup        wingrp
        CREATE_OBJECT           RWindow             win            
        COMMAND                 ws                  new
        COMMAND                 ws                  Connect        
        COMMAND                 scrdev              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-new_command03
        COMMAND                 scrdev              Construct
        COMMAND                 scrdev              CreateContext           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-CreateContext_command05
        COMMAND                 wingrp              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-new_command06
        COMMAND                 wingrp              Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-Construct_command07
        COMMAND                 win                 new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-new_command08
        COMMAND                 win                 Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-Construct_command09
        COMMAND                 win                 SetRequiredDisplayMode  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-SetRequiredDisplayMode_command10
        COMMAND                 win                 SetBackgroundColor      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-SetBackgroundColor_command11
        COMMAND                 win                 Activate
        COMMAND                 ws                  SetAutoFlush            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-SetAutoFlush_command13
        COMMAND                 wgc                 Activate                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-Activate_command14
        COMMAND                 win                 BeginRedraw
        COMMAND                 win                 EndRedraw
        COMMAND                 scrdev              GetScanLine             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0214-0001-GetScanLine_command17

   END_TEST_BLOCK 				
   RUN_TEST_STEP				100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0214

//! START_TESTCASE              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0215
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0215
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Test for a negative-length scanline.
//!                             This case is used for regression test.
//!                             The function GetScanLine() call causes FAULT: KERN 0x00000004 (4), the emulator is forced to exit.(Defect)
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Creates a CWindowGc object.
//!                             4. Completes the construction.
//!                             5. Creates a RWindowGroup object attached to the RWsSession object created before.
//!                             6. Creates a RWindow object attached to the RWindowGroup object created before.
//!                             7. Initializes the display mode of the screen.
//!                             8. Sets background color of screen to red.
//!                             9. Flushes the buffer to screen.
//!                             10. Begins to draw screen, then end to draw screen.
//!                             11. Gets scanline from screen.
//!                             12. Deactives RWindow, destructs and closes all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. USER 23 panic received at Test Action 11. 
//! @SYMTestType                CIT
//!   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
//!        CREATE_OBJECT        RWsSession          ws
//!        CREATE_OBJECT        CWsScreenDevice     scrdev
//!        CREATE_OBJECT        CWindowGc           wgc
//!        CREATE_OBJECT        RWindowGroup        wingrp
//!        CREATE_OBJECT        RWindow             win            
//!        COMMAND              ws                  new
//!        COMMAND              ws                  Connect        
//!        COMMAND              scrdev              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-new_command03
//!        COMMAND              scrdev              Construct
//!        COMMAND              scrdev              CreateContext           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-CreateContext_command05
//!        COMMAND              wingrp              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-new_command06
//!        COMMAND              wingrp              Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-Construct_command07
//!        COMMAND              win                 new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-new_command08
//!        COMMAND              win                 Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-Construct_command09
//!        COMMAND              win                 SetRequiredDisplayMode  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-SetRequiredDisplayMode_command10
//!        COMMAND              win                 SetBackgroundColor      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-SetBackgroundColor_command11
//!        COMMAND              win                 Activate
//!        COMMAND              ws                  SetAutoFlush            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-SetAutoFlush_command13
//!        COMMAND              wgc                 Activate                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-Activate_command14
//!        COMMAND              win                 BeginRedraw
//!        COMMAND              win                 EndRedraw
//!        COMMAND              scrdev              GetScanLine             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0215-0001-GetScanLine_command17
//!        COMMAND              wgc                 Deactivate
//!        COMMAND              win                 Close
//!        COMMAND              wingrp              Close
//!        COMMAND              wgc                 ~
//!        COMMAND              scrdev              ~
//!        COMMAND              ws                  Close
//!   END_TEST_BLOCK !PanicString=USER !PanicCode=23
//! END_TESTCASE                GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0215

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0216
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0216
//! @SYMAPI                     CWsScreenDevice::FontHeightInPixels(TInt, TInt) const
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            07/01/2008
//! @SYMTestCaseDesc            Negative test, gets the height of the specified font by specifying a negative typeface index number.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Complete the construction.
//!                             4. Gets font height with typeface index = -1 and height index = 0
//!                             5. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     FBSCLI 26 panic received at Test Action 4. 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0216-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0216-0001-FontHeightInPixels_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close           
    END_TEST_BLOCK              !PanicString=FBSCLI !PanicCode=26
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0216

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0217
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0217
//! @SYMAPI                     CWsScreenDevice::FontHeightInPixels(TInt, TInt) const
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            07/01/2008
//! @SYMTestCaseDesc            Negative test, gets the height of the specified font by specifying a negative font height index number.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Complete the construction.
//!                             4. Gets font height with typeface index = 0 and height index = -1
//!                             5. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     The FontHeightInPixels call doesn't cause panic
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0217-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0217-0001-FontHeightInPixels_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close           
    END_TEST_BLOCK              
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0217

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0218
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0218
//! @SYMAPI                     CWsScreenDevice::FontHeightInPixels(TInt, TInt) const
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            07/01/2008
//! @SYMTestCaseDesc            Negative test, gets the height of the specified font by specifying large typeface index and font height index numbers.
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Complete the construction.
//!                             4. Gets font height with typeface index = 10000 and height index = 10000
//!                             5. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     The FontHeightInPixels call doesn't cause panic
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0218-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            FontHeightInPixels        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0218-0001-FontHeightInPixels_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close           
    END_TEST_BLOCK              
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0218

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0219
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0219
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Test for a 99999-length scanline with starting point (0, 0).
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Creates a CWindowGc object.
//!                             4. Completes the construction.
//!                             5. Creates a RWindowGroup object attached to the RWsSession object created before.
//!                             6. Creates a RWindow object attached to the RWindowGroup object created before.
//!                             7. Initializes the display mode of the screen.
//!                             8. Sets background color of screen to red.
//!                             9. Flushes the buffer to screen.
//!                             10. Begins to draw screen, then end to draw screen.
//!                             11. Gets scanline from screen.
//!                             12. Deactives RWindow, destructs and closes all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 37 panic received at Test Action 11. 
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession          ws
        CREATE_OBJECT           CWsScreenDevice     scrdev
        CREATE_OBJECT           CWindowGc           wgc
        CREATE_OBJECT           RWindowGroup        wingrp
        CREATE_OBJECT           RWindow             win            
        COMMAND                 ws                  new
        COMMAND                 ws                  Connect        
        COMMAND                 scrdev              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-new_command03
        COMMAND                 scrdev              Construct
        COMMAND                 scrdev              CreateContext           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-CreateContext_command05
        COMMAND                 wingrp              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-new_command06
        COMMAND                 wingrp              Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-Construct_command07
        COMMAND                 win                 new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-new_command08
        COMMAND                 win                 Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-Construct_command09
        COMMAND                 win                 SetRequiredDisplayMode  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-SetRequiredDisplayMode_command10
        COMMAND                 win                 SetBackgroundColor      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-SetBackgroundColor_command11
        COMMAND                 win                 Activate
        COMMAND                 ws                  SetAutoFlush            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-SetAutoFlush_command13
        COMMAND                 wgc                 Activate                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-Activate_command14
        COMMAND                 win                 BeginRedraw
        COMMAND                 win                 EndRedraw
        COMMAND                 scrdev              GetScanLine             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0219-0001-GetScanLine_command17
        COMMAND                 wgc                 Deactivate
        COMMAND                 win                 Close
        COMMAND                 wingrp              Close
        COMMAND                 wgc                 ~
        COMMAND                 scrdev              ~
        COMMAND                 ws                  Close
   END_TEST_BLOCK !PanicString=WSERV    !PanicCode=80
   RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0219

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0220
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0220
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Test for a 10-length scanline with negative starting point (-1, -1).
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Creates a CWindowGc object.
//!                             4. Completes the construction.
//!                             5. Creates a RWindowGroup object attached to the RWsSession object created before.
//!                             6. Creates a RWindow object attached to the RWindowGroup object created before.
//!                             7. Initializes the display mode of the screen.
//!                             8. Sets background color of screen to red.
//!                             9. Flushes the buffer to screen.
//!                             10. Begins to draw screen, then end to draw screen.
//!                             11. Gets scanline from screen.
//!                             12. Deactives RWindow, destructs and closes all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. GetScanLine doesn't cause panic.
//!                             2. The length of the scanline buffer is as expected. The scanline data in the buffer is as expected.
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession          ws
        CREATE_OBJECT           CWsScreenDevice     scrdev
        CREATE_OBJECT           CWindowGc           wgc
        CREATE_OBJECT           RWindowGroup        wingrp
        CREATE_OBJECT           RWindow             win            
        COMMAND                 ws                  new
        COMMAND                 ws                  Connect        
        COMMAND                 scrdev              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-new_command03
        COMMAND                 scrdev              Construct
        COMMAND                 scrdev              CreateContext           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-CreateContext_command05
        COMMAND                 wingrp              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-new_command06
        COMMAND                 wingrp              Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-Construct_command07
        COMMAND                 win                 new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-new_command08
        COMMAND                 win                 Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-Construct_command09
        COMMAND                 win                 SetRequiredDisplayMode  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-SetRequiredDisplayMode_command10
        COMMAND                 win                 SetBackgroundColor      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-SetBackgroundColor_command11
        COMMAND                 win                 Activate
        COMMAND                 ws                  SetAutoFlush            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-SetAutoFlush_command13
        COMMAND                 wgc                 Activate                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-Activate_command14
        COMMAND                 win                 BeginRedraw
        COMMAND                 win                 EndRedraw
        COMMAND                 scrdev              GetScanLine             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0220-0001-GetScanLine_command17
        COMMAND                 wgc                 Deactivate
        COMMAND                 win                 Close
        COMMAND                 wingrp              Close
        COMMAND                 wgc                 ~
        COMMAND                 scrdev              ~
        COMMAND                 ws                  Close
   END_TEST_BLOCK 
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0220

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0221
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0221
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Test for a 10-length scanline with starting point (10000, 10000).
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Creates a CWindowGc object.
//!                             4. Completes the construction.
//!                             5. Creates a RWindowGroup object attached to the RWsSession object created before.
//!                             6. Creates a RWindow object attached to the RWindowGroup object created before.
//!                             7. Initializes the display mode of the screen.
//!                             8. Sets background color of screen to red.
//!                             9. Flushes the buffer to screen.
//!                             10. Begins to draw screen, then end to draw screen.
//!                             11. Gets scanline from screen.
//!                             12. Deactives RWindow, destructs and closes all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     GetScanLine doesn't cause panic.
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession          ws
        CREATE_OBJECT           CWsScreenDevice     scrdev
        CREATE_OBJECT           CWindowGc           wgc
        CREATE_OBJECT           RWindowGroup        wingrp
        CREATE_OBJECT           RWindow             win            
        COMMAND                 ws                  new
        COMMAND                 ws                  Connect        
        COMMAND                 scrdev              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-new_command03
        COMMAND                 scrdev              Construct
        COMMAND                 scrdev              CreateContext           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-CreateContext_command05
        COMMAND                 wingrp              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-new_command06
        COMMAND                 wingrp              Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-Construct_command07
        COMMAND                 win                 new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-new_command08
        COMMAND                 win                 Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-Construct_command09
        COMMAND                 win                 SetRequiredDisplayMode  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-SetRequiredDisplayMode_command10
        COMMAND                 win                 SetBackgroundColor      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-SetBackgroundColor_command11
        COMMAND                 win                 Activate
        COMMAND                 ws                  SetAutoFlush            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-SetAutoFlush_command13
        COMMAND                 wgc                 Activate                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-Activate_command14
        COMMAND                 win                 BeginRedraw
        COMMAND                 win                 EndRedraw
        COMMAND                 scrdev              GetScanLine             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0221-0001-GetScanLine_command17
        COMMAND                 wgc                 Deactivate
        COMMAND                 win                 Close
        COMMAND                 wingrp              Close
        COMMAND                 wgc                 ~
        COMMAND                 scrdev              ~
        COMMAND                 ws                  Close
   END_TEST_BLOCK 
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0221

//! START_TESTCASE              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0222
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0222
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Test for a 10-length scanline with starting point (0, 0). 
//!                             Sets the display mode to -1 within the GetScanLine call.
//!                             This case is used for regression test.
//!                             The function GetScanLine() call causes FAULT: KERN 0x00000004 (4), the emulator is forced to exit.(Defect)
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Creates a CWindowGc object.
//!                             4. Completes the construction.
//!                             5. Creates a RWindowGroup object attached to the RWsSession object created before.
//!                             6. Creates a RWindow object attached to the RWindowGroup object created before.
//!                             7. Initializes the display mode of the screen.
//!                             8. Sets background color of screen to red.
//!                             9. Flushes the buffer to screen.
//!                             10. Begins to draw screen, then end to draw screen.
//!                             11. Gets scanline from screen.
//!                             12. Deactives RWindow, destructs and closes all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. USER 23 panic received at Test Action 11. 
//!                             2. The length of the scanline buffer is as expected. The scanline data in the buffer is as expected.
//! @SYMTestType                CIT
//!   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
//!        CREATE_OBJECT        RWsSession          ws
//!        CREATE_OBJECT        CWsScreenDevice     scrdev
//!        CREATE_OBJECT        CWindowGc           wgc
//!        CREATE_OBJECT        RWindowGroup        wingrp
//!        CREATE_OBJECT        RWindow             win            
//!        COMMAND              ws                  new
//!        COMMAND              ws                  Connect        
//!        COMMAND              scrdev              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-new_command03
//!        COMMAND              scrdev              Construct
//!        COMMAND              scrdev              CreateContext           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-CreateContext_command05
//!        COMMAND              wingrp              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-new_command06
//!        COMMAND              wingrp              Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-Construct_command07
//!        COMMAND              win                 new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-new_command08
//!        COMMAND              win                 Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-Construct_command09
//!        COMMAND              win                 SetRequiredDisplayMode  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-SetRequiredDisplayMode_command10
//!        COMMAND              win                 SetBackgroundColor      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-SetBackgroundColor_command11
//!        COMMAND              win                 Activate
//!        COMMAND              ws                  SetAutoFlush            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-SetAutoFlush_command13
//!        COMMAND              wgc                 Activate                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-Activate_command14
//!        COMMAND              win                 BeginRedraw
//!        COMMAND              win                 EndRedraw
//!        COMMAND              scrdev              GetScanLine             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0222-0001-GetScanLine_command17
//!        COMMAND              wgc                 Deactivate
//!        COMMAND              win                 Close
//!        COMMAND              wingrp              Close
//!        COMMAND              wgc                 ~
//!        COMMAND              scrdev              ~
//!        COMMAND              ws                  Close
//!   END_TEST_BLOCK !PanicString=USER !PanicCode=23
//! END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0222

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0223
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0223
//! @SYMAPI                     CWsScreenDevice::GetScanLine(TDes8 {ref}, const TPoint {ref}, TInt, TDisplayMode)
//! @SYMAuthor                  Allen CHANG
//! @SYMCreationDate            02/01/2008
//! @SYMTestCaseDesc            Test for a 0-length scanline with starting point (0, 0).
//! @SYMTestActions             1. Creates a RWsSession object and connects to window server.
//!                             2. Creates a CWsScreenDevice attached to the RWsSession object created before.
//!                             3. Creates a CWindowGc object.
//!                             4. Completes the construction.
//!                             5. Creates a RWindowGroup object attached to the RWsSession object created before.
//!                             6. Creates a RWindow object attached to the RWindowGroup object created before.
//!                             7. Initializes the display mode of the screen.
//!                             8. Sets background color of screen to red.
//!                             9. Flushes the buffer to screen.
//!                             10. Begins to draw screen, then end to draw screen.
//!                             11. Gets scanline from screen.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic received at Test Action 11. 
//! @SYMTestType                CIT
   START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession          ws
        CREATE_OBJECT           CWsScreenDevice     scrdev
        CREATE_OBJECT           CWindowGc           wgc
        CREATE_OBJECT           RWindowGroup        wingrp
        CREATE_OBJECT           RWindow             win            
        COMMAND                 ws                  new
        COMMAND                 ws                  Connect        
        COMMAND                 scrdev              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-new_command03
        COMMAND                 scrdev              Construct
        COMMAND                 scrdev              CreateContext           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-CreateContext_command05
        COMMAND                 wingrp              new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-new_command06
        COMMAND                 wingrp              Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-Construct_command07
        COMMAND                 win                 new                     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-new_command08
        COMMAND                 win                 Construct               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-Construct_command09
        COMMAND                 win                 SetRequiredDisplayMode  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-SetRequiredDisplayMode_command10
        COMMAND                 win                 SetBackgroundColor      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-SetBackgroundColor_command11
        COMMAND                 win                 Activate
        COMMAND                 ws                  SetAutoFlush            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-SetAutoFlush_command13
        COMMAND                 wgc                 Activate                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-Activate_command14
        COMMAND                 win                 BeginRedraw
        COMMAND                 win                 EndRedraw
        COMMAND                 scrdev              GetScanLine             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0223-0001-GetScanLine_command17
   END_TEST_BLOCK                
   RUN_TEST_STEP				100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0223



START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0230
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0230
//! @SYMAPI                     CWsScreenDevice::ReleaseFont(CFont{ptr}) 
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            2/13/2008
//! @SYMTestCaseDesc            Verify the behaviour of ReleaseFont. 
//!                             Get font and draw text use it, then release font, then use font to draw again, a panic will arise.
//! @SYMTestActions             1. Setup a CWindowGc to test and a RWindow to display its drawing result
//!                             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. Start a redraw cycle
//!                             3. Set Gc pen color to TRgb(255,0,255)
//!                             4. Get font in pixels for Arial, 30 pixels font.
//!                             5. Use font to draw text.
//!                             5.1 Gc uses font.
//!                             5.2 Draw text at (50,100).
//!                             5.3 Gc discard font.
//!                             6. Release font.
//!                             7. Use font to draw text.
//!                             7.1 Gc uses font.
//!                             7.2 Draw text at (50,100).
//!                             7.3 Gc discard font.
//!                             8. End a redraw cycle
//!                             9.Deactive RWindow, destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 14(13 for emulator DEBUG) panic received at Test Action 5.1. 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            CreateContext GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-CreateContext_command05              
        COMMAND                 wingrp            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-new_command06
        COMMAND                 wingrp            Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-Construct_command07
        COMMAND                 win               new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-new_command08
        COMMAND                 win               Construct     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               Activate  
        COMMAND                 ws                SetAutoFlush  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-SetAutoFlush_command12
        COMMAND                 wgc               Activate      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-Activate_command13
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetPenColor   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-SetPenColor_command015
        COMMAND                 scrdev            GetNearestFontToDesignHeightInPixels     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-GetNearestFontToDesignHeightInPixels_command016
        COMMAND                 wgc               UseFont       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-UseFont_command017
        COMMAND                 wgc               DrawText      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-DrawText_command018
        COMMAND                 wgc               DiscardFont 
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-ReleaseFont_command19
        COMMAND                 wgc               UseFont       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-UseFont_command020
        COMMAND                 wgc               DrawText      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0230-0001-DrawText_command021
        COMMAND                 wgc               DiscardFont 
        COMMAND                 win               EndRedraw
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~        
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    !panicstring=WSERV !paniccode=14
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0230


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0231
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0231
//! @SYMAPI                     CWsScreenDevice::ReleaseFont(CFont{ptr}) 
//! @SYMAuthor                  Ray Liang
//! @SYMCreationDate            2/13/2008
//! @SYMTestCaseDesc            Negative test for NULL CFont. 
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Release font with NULL CFont pointer.
//!                             4. Destruct the CWsScreenDevice object
//!                             5. Close the RWsSession object
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     No panic. 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CFbsFont          font
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0231-0001-new_command03       
        COMMAND                 scrdev            Construct             
        COMMAND                 scrdev            ReleaseFont        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0231-0001-ReleaseFont_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0231

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0279
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0279
//! @SYMAPI                     CWsScreenDevice::RectCompare(const TRect{ref}, const TRect{ref})
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            01/18/2007
//! @SYMTestCaseDesc            Compare two areas with sprite or text cursor over them.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a CWindowGc attached to CWsScreenDevice.
//!                             4. Create a RWindowGroup attached to RWsSession.
//!                             5. Create a RWindow, setup it and activate.
//!                             6. SetAutoFlush to TRUE for the RWsSession.
//!                             7. Active CWindowGc.
//!                             8. Setup and draw 2 rectangles(60*60 size,filled with red, border is black)in 2 different regions with same content. 
//!                             9. Create 2 RWsSprite attached to RWsSession by using RWsSprite(RWsSession &aWs) and construct.
//!                             10. Create 4 CFbsBitmap objects and load bitmaps.
//!                             11. Append these CFbsBitmaps to RWsSprites.
//!                             12. Set RWsSprites's position using SetPosition().
//!                             13. Compare 2 rectangles with sprites over them.
//!                             13.1. Compare 2 rectangles with same graphics and a sprite over one of them.
//!                             13.2. Compare 2 rectangles with different graphics and same sprites.
//!                             14. Destruct CFbsBitmaps objects and close RWsSprite objects.
//!                             15. Set a text cursor using RWindowGroup::SetTextCursor().
//!                             16. Compare 2 rectangles with a text cursor over one of them.
//!                             16.1. Compare 2 rectangles with same graphics and a text cursor over one of them.
//!                             16.2. Compare 2 rectangles with different graphics and a text cursor over one of them.
//!                             17. Deactive RWindow, destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. No panic 
//!                             2. Result of comparing 2 rectangles with sprites
//!                             2.1. Step 13.1 return ETrue  
//!                             2.2. Step 13.2 return EFalse  
//!                             3. Result of comparing 2 rectangles with a text cursor
//!                             3.1. Step 16.1 return ETrue  
//!                             3.2. Step 16.2 return EFalse  
//! @SYMTestType                CIT
        START_TEST_BLOCK        10           T_GraphicsWservAPI \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
                CREATE_OBJECT           RWsSession          ws
                CREATE_OBJECT           CWsScreenDevice     scrdev
                CREATE_OBJECT           CWindowGc           wgc
                CREATE_OBJECT           CFbsBitmap          fbsbmp1
                CREATE_OBJECT           CFbsBitmap          fbsbmp2
                CREATE_OBJECT           CFbsBitmap          fbsbmp3
                CREATE_OBJECT           CFbsBitmap          fbsbmp4
                CREATE_OBJECT           RWindowGroup        wingrp
                CREATE_OBJECT           RWindow             win
                CREATE_OBJECT           RWsSprite           sprite1
                CREATE_OBJECT           RWsSprite           sprite2
                CREATE_OBJECT           RWsSprite           sprite3
                COMMAND                 ws                  new
                COMMAND                 ws                  Connect
                COMMAND                 scrdev              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-new_command03       
                COMMAND                 scrdev              Construct
                COMMAND                 scrdev              CreateContext       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-CreateContext_command05
                COMMAND                 wingrp              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-new_command06
                COMMAND                 wingrp              Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-Construct_command07
                COMMAND                 win                 new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-new_command08
                COMMAND                 win                 Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-Construct_command09
                COMMAND                 win                 Activate
                COMMAND                 ws                  SetAutoFlush        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-SetAutoFlush_command11
                COMMAND                 wgc                 Activate            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-Activate_command12
                COMMAND                 win                 BeginRedraw
                COMMAND                 wgc                 SetBrushColor       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-SetBrushColor_command14
                COMMAND                 wgc                 SetBrushStyle       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-SetBrushStyle_command15
                COMMAND                 wgc                 SetPenColor         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-SetPenColor_command16
                COMMAND                 wgc                 DrawRect            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-DrawRect_command17
                COMMAND                 wgc                 DrawRect            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-DrawRect_command18
                COMMAND                 win                 EndRedraw
                COMMAND                 sprite1             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-new_command20
                COMMAND                 sprite1             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-construct_command21
                COMMAND                 fbsbmp1             new           
                COMMAND                 fbsbmp1             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-loadmask_command23
                
                COMMAND                 fbsbmp2             new           
                COMMAND                 fbsbmp2             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-load_command25
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-appendmember_command26
                
                COMMAND                 fbsbmp3             new           
                COMMAND                 fbsbmp3             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-load_command28
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-appendmember_command29

                COMMAND                 fbsbmp4             new           
                COMMAND                 fbsbmp4             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-load_command31
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-appendmember_command32
                COMMAND                 sprite1             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-SetPosition_command33
                
                COMMAND                 sprite2             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-new_command34
                COMMAND                 sprite2             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-construct_command35
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-appendmember_command36
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-appendmember_command37
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-appendmember_command38
                COMMAND                 sprite2             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-SetPosition_command39
                
                COMMAND                 sprite1             Activate
                COMMAND                 sprite2             Activate
                
                DELAY 1000000
                
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-RectCompare_command43
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-RectCompare_command44
                
                COMMAND                 fbsbmp1             ~
                COMMAND                 fbsbmp2             ~
                COMMAND                 fbsbmp3             ~
                COMMAND                 fbsbmp4             ~
                COMMAND                 sprite1             Close
                COMMAND                 sprite2             Close
                
                COMMAND                 wingrp              SetTextCursor       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-SetTextCursor_command51

                DELAY 1000000
                
                //!COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-RectCompare_command53
                //!COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0279-0001-RectCompare_command54
                
                COMMAND                 wgc                 Deactivate
                COMMAND                 win                 Close
                COMMAND                 wingrp              Close
                COMMAND                 wgc                 ~
                COMMAND                 scrdev              ~        
                COMMAND                 ws                  Close
        END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0279

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0280
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0280
//! @SYMAPI                     CWsScreenDevice::RectCompare(const TRect{ref}, const TRect{ref})
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            01/07/2008
//! @SYMTestCaseDesc            Compare rectangles which are outside the screen.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Refresh window with white color.
//!                             7. Compare two regions (rect1 (0,-50)-(50,50) & rect2 (50,-50)-(100,50)).
//!                             8. Compare two regions (rect1 (-50,0)-(50,50) & rect2 (-50,50)-(50,100)).
//!                             9. Compare two big regions (rect1 (-10000,-10000)-(0,0) & rect2 (0,0)-(10000,10000)).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. Action 7 return EFalse.
//!                             2. Action 8 return EFalse.
//!                             3. Action 9 return EFalse.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-CreateContext_command05
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-Construct_command07
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 win               EndRedraw
        COMMAND                 scrdev            RectCompare                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-RectCompare_command23
        COMMAND                 scrdev            RectCompare                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-RectCompare_command24
        COMMAND                 scrdev            RectCompare                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0280-0001-RectCompare_command25
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0280

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0281
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0281
//! @SYMAPI                     CWsScreenDevice::RectCompare(const TRect{ref}, const TRect{ref}, TUint)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            01/07/2007
//! @SYMTestCaseDesc            Compares two areas of the screen to see if they have the same content with flag ERemoveSprite, EIncludeSprite or EIncludeTextCursor 
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a CWindowGc attached to CWsScreenDevice.
//!                             4. Create a RWindowGroup attached to RWsSession.
//!                             5. Create a RWindow, setup it and activate.
//!                             6. SetAutoFlush to TRUE for the RWsSession.
//!                             7. Active CWindowGc.
//!                             8. Setup and draw 2 rectangles(60*60 size,filled with red, border is black)in 2 different regions with same content. 
//!                             9. Create 3 RWsSprite attached to RWsSession by using RWsSprite(RWsSession &aWs) and construct.
//!                             10. Create 4 CFbsBitmap objects and load bitmaps.
//!                             11. Append these CFbsBitmaps to RWsSprites.
//!                             12. Set RWsSprites's position using SetPosition().
//!                             13. Compare 2 rectangles with sprites.
//!                             13.1. Compare 2 rectangles with same graphics and different sprites using flag ERemoveSprite.
//!                             13.2. Compare 2 rectangles with different graphics and same sprites using flag ERemoveSprite.
//!                             13.3. Compare 2 rectangles with same graphics and different sprites using flag EIncludeSprite.
//!                             13.4. Compare 2 rectangles with different graphics and same sprites using flag EIncludeSprite.
//!                             13.5. Compare 2 rectangles with same graphics and sprites using flag EIncludeSprite.
//!                             14. Destruct CFbsBitmaps objects and close RWsSprite objects.
//!                             15. Set a text cursor using RWindowGroup::SetTextCursor().
//!                             16. Compare 2 rectangles with a text cursor.
//!                             16.1. Compare 2 rectangles with same graphics and a text cursor over one of them using flag ERemoveSprite.
//!                             16.2. Compare 2 rectangles with different graphics and a text cursor over one of them using flag ERemoveSprite.
//!                             16.3. Compare 2 rectangles with same graphics and a text cursor over one of them using flag EIncludeTextCursor.
//!                             16.4. Compare 2 rectangles with different graphics and a text cursor over one of them using flag EIncludeTextCursor.
//!                             16.5. Compare 2 rectangles with same graphics and no cursors using flag EIncludeTextCursor.
//!                             17. Deactive RWindow, destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. No panic 
//!                             2. Result of comparing 2 rectangles with sprites
//!                             2.1. Step 13.1 returns ETrue  
//!                             2.2. Step 13.2 returns EFalse  
//!                             2.3. Step 13.3 returns EFalse  
//!                             2.4. Step 13.4 returns EFalse  
//!                             2.5. Step 13.5 returns ETrue  
//!                             3. Result of comparing 2 rectangles with a text cursor
//!                             3.1. Step 16.1 returns ETrue  
//!                             3.2. Step 16.2 returns EFalse  
//!                             3.3. Step 16.3 returns EFalse  
//!                             3.4. Step 16.4 returns EFalse  
//!                             3.5. Step 16.5 returns ETrue   
//! @SYMTestType                CIT
        START_TEST_BLOCK        10           T_GraphicsWservAPI \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
                CREATE_OBJECT           RWsSession          ws
                CREATE_OBJECT           CWsScreenDevice     scrdev
                CREATE_OBJECT           CWindowGc           wgc
                CREATE_OBJECT           CFbsBitmap          fbsbmp1
                CREATE_OBJECT           CFbsBitmap          fbsbmp2
                CREATE_OBJECT           CFbsBitmap          fbsbmp3
                CREATE_OBJECT           CFbsBitmap          fbsbmp4
                CREATE_OBJECT           RWindowGroup        wingrp
                CREATE_OBJECT           RWindow             win
                CREATE_OBJECT           RWsSprite           sprite1
                CREATE_OBJECT           RWsSprite           sprite2
                CREATE_OBJECT           RWsSprite           sprite3
                COMMAND                 ws                  new
                COMMAND                 ws                  Connect
                COMMAND                 scrdev              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-new_command03       
                COMMAND                 scrdev              Construct
                COMMAND                 scrdev              CreateContext       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-CreateContext_command05
                COMMAND                 wingrp              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-new_command06
                COMMAND                 wingrp              Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-Construct_command07
                COMMAND                 win                 new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-new_command08
                COMMAND                 win                 Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-Construct_command09
                COMMAND                 win                 Activate
                COMMAND                 ws                  SetAutoFlush        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-SetAutoFlush_command11
                COMMAND                 wgc                 Activate            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-Activate_command12
                COMMAND                 win                 BeginRedraw
                COMMAND                 wgc                 SetBrushColor       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-SetBrushColor_command14
                COMMAND                 wgc                 SetBrushStyle       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-SetBrushStyle_command15
                COMMAND                 wgc                 SetPenColor         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-SetPenColor_command16
                COMMAND                 wgc                 DrawRect            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-DrawRect_command17
                COMMAND                 wgc                 DrawRect            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-DrawRect_command18
                COMMAND                 win                 EndRedraw
                COMMAND                 sprite1             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-new_command19
                COMMAND                 sprite1             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-construct_command20
                COMMAND                 fbsbmp1             new           
                COMMAND                 fbsbmp1             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-loadmask_command22
                
                COMMAND                 fbsbmp2             new           
                COMMAND                 fbsbmp2             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-load_command24
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command25
                
                COMMAND                 fbsbmp3             new           
                COMMAND                 fbsbmp3             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-load_command27
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command28

                COMMAND                 fbsbmp4             new           
                COMMAND                 fbsbmp4             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-load_command30
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command31
                COMMAND                 sprite1             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-SetPosition_command32
                
                COMMAND                 sprite2             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-new_command33
                COMMAND                 sprite2             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-construct_command34
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command35
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command36
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command37
                COMMAND                 sprite2             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-SetPosition_command38
                
                COMMAND                 sprite3             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-new_command39
                COMMAND                 sprite3             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-construct_command40
                COMMAND                 sprite3             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command41
                COMMAND                 sprite3             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command42
                COMMAND                 sprite3             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-appendmember_command43
                COMMAND                 sprite3             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-SetPosition_command44
                
                COMMAND                 sprite1             Activate
                COMMAND                 sprite2             Activate
                COMMAND                 sprite3             Activate
                
                DELAY 1000000
                
                //! COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command49
                //! COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command50
                
                //! COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command51
                //! COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command52
                //! COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command53
                
                COMMAND                 fbsbmp1             ~
                COMMAND                 fbsbmp2             ~
                COMMAND                 fbsbmp3             ~
                COMMAND                 fbsbmp4             ~
                COMMAND                 sprite1             Close
                COMMAND                 sprite2             Close
                COMMAND                 sprite3             Close
                
                COMMAND                 wingrp              SetTextCursor       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-SetTextCursor_command61

                DELAY 1000000
                
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command63
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command64
                
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command65
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command66
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0281-0001-RectCompare_command67
                
                COMMAND                 wgc                 Deactivate
                COMMAND                 win                 Close
                COMMAND                 wingrp              Close
                COMMAND                 wgc                 ~
                COMMAND                 scrdev              ~        
                COMMAND                 ws                  Close
        END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0281

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0282
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0282
//! @SYMAPI                     CWsScreenDevice::RectCompare(const TRect{ref}, const TRect{ref}, TUint)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            01/07/2007
//! @SYMTestCaseDesc            Compares two areas beyonding the screen to see if they have the same content with flag ERemoveSprite, EIncludeSprite or EIncludeTextCursor 
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a CWindowGc attached to CWsScreenDevice.
//!                             4. Create a RWindowGroup attached to RWsSession.
//!                             5. Create a RWindow, setup it and activate.
//!                             6. SetAutoFlush to TRUE for the RWsSession.
//!                             7. Active CWindowGc.
//!                             8. Setup and draw 2 rectangles(60*60 size,filled with red, border is black)in 2 different regions with same content. 
//!                             9. Create 3 RWsSprite attached to RWsSession by using RWsSprite(RWsSession &aWs) and construct.
//!                             10. Create 4 CFbsBitmap objects and load bitmaps.
//!                             11. Append these CFbsBitmaps to RWsSprites.
//!                             12. Set RWsSprites's position using SetPosition().
//!                             13. Compare 2 rectangles beyonding the screen with sprites.
//!                             13.1. Compare 2 rectangles beyonding the screen with same graphics and different sprites using flag ERemoveSprite.
//!                             13.2. Compare 2 rectangles beyonding the screen with same graphics and sprites using flag EIncludeSprite.
//!                             14. Destruct CFbsBitmaps objects and close RWsSprite objects.
//!                             15. Set a text cursor using RWindowGroup::SetTextCursor().
//!                             16. Compare 2 rectangles beyonding the screen with a text cursor.
//!                             16.1. Compare 2 rectangles beyonding the screen with same graphics and a text cursor over one of them using flag ERemoveSprite.
//!                             16.2. Compare 2 rectangles beyonding the screen with same graphics and no cursors using flag EIncludeTextCursor.
//!                             17. Deactive RWindow, destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. No panic 
//!                             2. Result of comparing 2 rectangles beyonding the screen with sprites
//!                             2.1. Step 13.1 returns EFalse  
//!                             2.2. Step 13.2 returns EFalse  
//!                             3. Result of comparing 2 rectangles beyonding the screen with a text cursor
//!                             3.1. Step 16.1 returns EFalse  
//!                             3.2. Step 16.2 returns EFalse 
//! @SYMTestType                CIT
        START_TEST_BLOCK        10           T_GraphicsWservAPI \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
                CREATE_OBJECT           RWsSession          ws
                CREATE_OBJECT           CWsScreenDevice     scrdev
                CREATE_OBJECT           CWindowGc           wgc
                CREATE_OBJECT           CFbsBitmap          fbsbmp1
                CREATE_OBJECT           CFbsBitmap          fbsbmp2
                CREATE_OBJECT           CFbsBitmap          fbsbmp3
                CREATE_OBJECT           CFbsBitmap          fbsbmp4
                CREATE_OBJECT           RWindowGroup        wingrp
                CREATE_OBJECT           RWindow             win
                CREATE_OBJECT           RWsSprite           sprite1
                CREATE_OBJECT           RWsSprite           sprite2
                CREATE_OBJECT           RWsSprite           sprite3
                COMMAND                 ws                  new
                COMMAND                 ws                  Connect
                COMMAND                 scrdev              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-new_command03       
                COMMAND                 scrdev              Construct
                COMMAND                 scrdev              CreateContext       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-CreateContext_command05
                COMMAND                 wingrp              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-new_command06
                COMMAND                 wingrp              Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-Construct_command07
                COMMAND                 win                 new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-new_command08
                COMMAND                 win                 Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-Construct_command09
                COMMAND                 win                 Activate
                COMMAND                 ws                  SetAutoFlush        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-SetAutoFlush_command11
                COMMAND                 wgc                 Activate            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-Activate_command12
                COMMAND                 win                 BeginRedraw
                COMMAND                 wgc                 SetBrushColor       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-SetBrushColor_command14
                COMMAND                 wgc                 SetBrushStyle       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-SetBrushStyle_command15
                COMMAND                 wgc                 SetPenColor         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-SetPenColor_command16
                COMMAND                 wgc                 DrawRect            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-DrawRect_command17
                COMMAND                 wgc                 DrawRect            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-DrawRect_command18
                COMMAND                 win                 EndRedraw

                COMMAND                 sprite1             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-new_command19
                COMMAND                 sprite1             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-construct_command20
                COMMAND                 fbsbmp1             new           
                COMMAND                 fbsbmp1             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-loadmask_command22
                
                COMMAND                 fbsbmp2             new           
                COMMAND                 fbsbmp2             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-load_command24
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command25
                
                COMMAND                 fbsbmp3             new           
                COMMAND                 fbsbmp3             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-load_command27
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command28

                COMMAND                 fbsbmp4             new           
                COMMAND                 fbsbmp4             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-load_command30
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command31
                COMMAND                 sprite1             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-SetPosition_command32
                
                COMMAND                 sprite2             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-new_command33
                COMMAND                 sprite2             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-construct_command34
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command35
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command36
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command37
                COMMAND                 sprite2             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-SetPosition_command38
                
                COMMAND                 sprite3             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-new_command39
                COMMAND                 sprite3             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-construct_command40
                COMMAND                 sprite3             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command41
                COMMAND                 sprite3             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command42
                COMMAND                 sprite3             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-appendmember_command43
                COMMAND                 sprite3             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-SetPosition_command44
                
                COMMAND                 sprite1             Activate
                COMMAND                 sprite2             Activate
                COMMAND                 sprite3             Activate
                
                DELAY 1000000
                
                COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-RectCompare_command49
                COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-RectCompare_command50
                
                COMMAND                 fbsbmp1             ~
                COMMAND                 fbsbmp2             ~
                COMMAND                 fbsbmp3             ~
                COMMAND                 fbsbmp4             ~
                COMMAND                 sprite1             Close
                COMMAND                 sprite2             Close
                COMMAND                 sprite3             Close
                
                COMMAND                 wingrp              SetTextCursor       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-SetTextCursor_command58

                DELAY 1000000
                
                COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-RectCompare_command60
                COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0282-0001-RectCompare_command61
                
                COMMAND                 wgc                 Deactivate
                COMMAND                 win                 Close
                COMMAND                 wingrp              Close
                COMMAND                 wgc                 ~
                COMMAND                 scrdev              ~        
                COMMAND                 ws                  Close
        END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0282


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283
//! @SYMAPI                     CWsScreenDevice::RectCompare(const TRect{ref}, const TRect{ref}, TUint)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            01/07/2007
//! @SYMTestCaseDesc            Compares two areas with different sprite to see if they have the same content with flag ERemoveSprite and EIncludeSprite
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a CWindowGc attached to CWsScreenDevice.
//!                             4. Create a RWindowGroup attached to RWsSession.
//!                             5. Create a RWindow, setup it and activate.
//!                             6. SetAutoFlush to TRUE for the RWsSession.
//!                             7. Active CWindowGc.
//!                             8. Create 2 RWsSprite attached to RWsSession by using RWsSprite(RWsSession &aWs) and construct.
//!                             9. Create 4 CFbsBitmap objects and load bitmaps.
//!                             10. Append these CFbsBitmaps to RWsSprites.
//!                             11. Set RWsSprites's position using SetPosition().
//!                             12. Compare 2 rectangles.
//!                             12.1. Compare 2 rectangles with same graphics and different sprite using flag ERemoveSprite.
//!                             12.2. Compare 2 rectangles with same graphics and different sprite using flag EIncludeSprite.
//!                             13. Deactive RWindow, destruct and close all objects used.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. No panic 
//!                             2. Result of comparing 2 rectangles with different sprite
//!                             2.1. Step 12.1 returns EFalse  
//!                             2.2. Step 12.2 returns EFalse  
//! @SYMTestType                CIT
        START_TEST_BLOCK        10           T_GraphicsWservAPI \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
                CREATE_OBJECT           RWsSession          ws
                CREATE_OBJECT           CWsScreenDevice     scrdev
                CREATE_OBJECT           CWindowGc           wgc
                CREATE_OBJECT           CFbsBitmap          fbsbmp1
                CREATE_OBJECT           CFbsBitmap          fbsbmp2
                CREATE_OBJECT           CFbsBitmap          fbsbmp3
                CREATE_OBJECT           CFbsBitmap          fbsbmp4
                CREATE_OBJECT           RWindowGroup        wingrp
                CREATE_OBJECT           RWindow             win
                CREATE_OBJECT           RWsSprite           sprite1
                CREATE_OBJECT           RWsSprite           sprite2
                COMMAND                 ws                  new
                COMMAND                 ws                  Connect
                COMMAND                 scrdev              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-new_command03       
                COMMAND                 scrdev              Construct
                COMMAND                 scrdev              CreateContext       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-CreateContext_command05
                COMMAND                 wingrp              new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-new_command06
                COMMAND                 wingrp              Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-Construct_command07
                COMMAND                 win                 new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-new_command08
                COMMAND                 win                 Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-Construct_command09
                COMMAND                 win                 Activate
                COMMAND                 ws                  SetAutoFlush        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-SetAutoFlush_command11
                COMMAND                 wgc                 Activate            GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-Activate_command12
                COMMAND                 win                 BeginRedraw
                COMMAND                 win                 EndRedraw

                COMMAND                 sprite1             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-new_command15
                COMMAND                 sprite1             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-construct_command16
                COMMAND                 fbsbmp1             new           
                COMMAND                 fbsbmp1             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-loadmask_command18
                
                COMMAND                 fbsbmp2             new           
                COMMAND                 fbsbmp2             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-load_command20
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-appendmember_command21
                
                COMMAND                 fbsbmp3             new           
                COMMAND                 fbsbmp3             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-load_command23
                COMMAND                 sprite1             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-appendmember_command24

                COMMAND                 sprite1             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-SetPosition_command25
                
                COMMAND                 sprite2             new                 GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-new_command26
                COMMAND                 sprite2             Construct           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-construct_command27
 
                COMMAND                 fbsbmp4             new           
                COMMAND                 fbsbmp4             Load                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-load_command29
                COMMAND                 sprite2             AppendMember        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-appendmember_command30
                COMMAND                 sprite2             SetPosition         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-SetPosition_command31
                
                
                COMMAND                 sprite1             Activate
                COMMAND                 sprite2             Activate
                
                DELAY 1000000
                
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-RectCompare_command34
              //!  COMMAND                 scrdev              RectCompare         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283-0001-RectCompare_command35
                
                COMMAND                 fbsbmp1             ~
                COMMAND                 fbsbmp2             ~
                COMMAND                 fbsbmp3             ~
                COMMAND                 fbsbmp4             ~
                COMMAND                 sprite1             Close
                COMMAND                 sprite2             Close
                COMMAND                 wgc                 Deactivate
                COMMAND                 win                 Close
                COMMAND                 wingrp              Close
                COMMAND                 wgc                 ~
                COMMAND                 scrdev              ~        
                COMMAND                 ws                  Close
        END_TEST_BLOCK
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0283

//!START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0291
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0291
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap {ptr})
//! @SYMAuthor                  Dorothy Zhang
//! @SYMCreationDate            01/09/2007
//! @SYMTestCaseDesc            Negative test, uses the bitmap of NULL pointer.
//!                             Copy the entire screen which has a rectangle to the bitmap of NULL pointer.                   
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow and set its displaymode and background color and then activate it.
//!                             5. RWsSession SetAutoFlush
//!                             6. Draw a rectangle(100*100, filled with red, border is black).
//!                             7. Copy the entire screen to a bitmap of NULL pointer.                           
//!                             8. Destruct and close objects used.
//! @SYMTestExpectedResults     KERN-EXEC 3 panic received at Test Action 7.
//!    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
//!        CREATE_OBJECT           RWsSession        ws
//!        CREATE_OBJECT           CWsScreenDevice   scrdev
//!        CREATE_OBJECT           CWindowGc         wgc
//!        CREATE_OBJECT           CFbsBitmap        fbsbitmap
//!        CREATE_OBJECT           RWindowGroup      wingrp
//!        CREATE_OBJECT           RWindow           win
//!        COMMAND                 ws                new       
//!        COMMAND                 ws                Connect        
//!        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-new_command03       
//!        COMMAND                 scrdev            Construct
//!        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-CreateContext_command05
//!        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-new_command06
//!        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-Construct_command07
//!        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-new_command08
//!        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-Construct_command09
//!        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-SetRequiredDisplayMode_command10
//!        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-SetBackgroundColor_command11
//!        COMMAND                 win               Activate
//!        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-SetAutoFlush_command13
//!        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-Activate_command14
//!        COMMAND                 win               BeginRedraw
//!        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-SetBrushColor_command16
//!        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-SetBrushStyle_command17
//!        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-SetPenColor_command18
//!        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-DrawRect_command19
//!        COMMAND                 win               EndRedraw
//!        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0291-0001-CopyScreenToBitmap_command20
//!        COMMAND                 fbsbitmap         ~        
//!        COMMAND                 wgc               Deactivate
//!        COMMAND                 win               Close
//!        COMMAND                 wingrp            Close
//!        COMMAND                 wgc               ~
//!        COMMAND                 scrdev            ~        
//!        COMMAND                 ws                Close      
//!    END_TEST_BLOCK    !PanicString=KERN-EXEC    !PanicCode=3
//!    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
//!END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0291

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0293
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0293
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap{ptr}, const TRect{ref}) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/8/2007
//! @SYMTestCaseDesc            Negative test, copies a rect which is half in screen and half out of screen to a bitmap.
//!                             Set up and draw a 100*100 rect half in screen and half out of screen, copy the 100*100 rect to a 100*100 bitmap.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle(100*100 size, filled with red, border is black). The rectangle is half in the screen and half out of the screen.
//!                             7. Create a CFbsBitmap which size is 100*100.
//!                             8. Copy the rect to the bitmap.
//!                             9. GetPixel from the bitmap, check the rectangle(inside is red, border is black, ouside is white).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CopyScreenToBitmap methods return KErrNone. 
//!                             2. The bitmap which is copyed to is correct(The bitmap's upper half is white, below half is painted).
//!                                 2.1 The pixels (0,0) is color TRgb(255,255,255); The upper half is white.
//!                                 2.2 The pixels (99,99) is color TRgb(0,0,0); The border is black.
//!                                 2.3 The pixels (0,49) is color TRgb(255,255,255); The upper half is white.
//!                                 2.4 The pixels (99,49) is color TRgb(255,255,255); The upper half is white.
//!                                 2.5 The pixels (1,1) is color TRgb(255,255,255); The upper half is white.
//!                                 2.6 The pixels (0,99) is color TRgb(0,0,0); The border is black.
//!                                 2.7 The pixels (1,50) is color TRgb(255,0,0); below half, inside is red.
//!                                 2.8 The pixels (98,98) is color TRgb(255,0,0); below half, inside is red.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        CREATE_OBJECT           CFbsBitmap        fbsbitmap
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-CreateContext_command05
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-Construct_command07
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-DrawRect_command19
        COMMAND                 win               EndRedraw
        COMMAND                 fbsbitmap         new
        COMMAND                 fbsbitmap         Create                                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-Create_command22
        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-CopyScreenToBitmap_command23
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-GetPixel_command24
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-GetPixel_command25
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-GetPixel_command26
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-GetPixel_command27
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-GetPixel_command28
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-GetPixel_command29
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-GetPixel_command30
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0293-0001-GetPixel_command31
        COMMAND                 fbsbitmap         ~        
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0293


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0294
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0294
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap{ptr}, const TRect{ref}) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/8/2007
//! @SYMTestCaseDesc            Negative test, copies a very large rect to a very large bitmap.
//!                             Set up and draw a 100*100 rect on white screen, and copy a 1000*2000 rect to a 1000*2000 bitmap.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle(100*100 size,filled with red, border is black).
//!                             7. Create a CFbsBitmap which size is 1000*2000.
//!                             8. Copy the 1000*2000 rect to the 1000*2000 bitmap.
//!                             9. GetPixel from the bitmap, check the rectangle(inside is red, border is black, ouside is white).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CopyScreenToBitmap methods return KErrNone. 
//!                             2. The bitmap which is copyed to is correct.
//!                                 2.1 The pixels (0,0) is color TRgb(0,0,0); The border is black.
//!                                 2.2 The pixels (99,99) is color TRgb(0,0,0); The border is black.
//!                                 2.3 The pixels (50,99) is color TRgb(0,0,0); The border is black.
//!                                 2.4 The pixels (99,50) is color TRgb(0,0,0); The border is black.
//!                                 2.5 The pixels (1,1) is color TRgb(255,0,0); Inside is red.
//!                                 2.6 The pixels (98,98) is color TRgb(255,0,0); Inside is red.
//!                                 2.7 The pixels (100,100) is color TRgb(255,255,255); Outside is white.
//!                                 2.8 The pixels (999,1999) is color TRgb(255,255,255); Outside is white.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        CREATE_OBJECT           CFbsBitmap        fbsbitmap
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-CreateContext_command05
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-Construct_command07
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-DrawRect_command19
        COMMAND                 win               EndRedraw
        COMMAND                 fbsbitmap         new
        COMMAND                 fbsbitmap         Create                                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-Create_command22
        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-CopyScreenToBitmap_command23
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-GetPixel_command24
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-GetPixel_command25
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-GetPixel_command26
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-GetPixel_command27
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-GetPixel_command28
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-GetPixel_command29
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-GetPixel_command30
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0294-0001-GetPixel_command31
        COMMAND                 fbsbitmap         ~        
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0294

//!START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0295
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0295
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap{ptr}, const TRect{ref}) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/8/2007
//! @SYMTestCaseDesc            Negative test, copies a rect to a bitmap pointer which is NULL.
//!                             Set up and draw a 100*100 rect on white screen and copy the 100*100 rect in the screen to a bitmap, but the bitmap pointer is NULL.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle(100*100 size,filled with red, border is black).
//!                             7. Create a CFbsBitmap wrapper, which's object pointer is NULL.
//!                             8. Copy a 100*100 rect to a bitmap pointer which is NULL.
//!                             9. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     KERN-EXEC 3 panic received at Test Action 8. 
//! @SYMTestType                CIT
//!    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
//!        CREATE_OBJECT           RWsSession        ws
//!        CREATE_OBJECT           CWsScreenDevice   scrdev
//!        CREATE_OBJECT           CWindowGc         wgc
//!        CREATE_OBJECT           RWindowGroup      wingrp
//!        CREATE_OBJECT           RWindow           win
//!        CREATE_OBJECT           CFbsBitmap        fbsbitmap
//!        COMMAND                 ws                new       
//!        COMMAND                 ws                Connect        
//!        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-new_command03       
//!        COMMAND                 scrdev            Construct
//!        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-CreateContext_command05
//!        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-new_command06
//!        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-Construct_command07
//!        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-new_command08
//!        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-Construct_command09
//!        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-SetRequiredDisplayMode_command10
//!        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-SetBackgroundColor_command11
//!        COMMAND                 win               Activate
//!        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-SetAutoFlush_command13
//!        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-Activate_command14
//!        COMMAND                 win               BeginRedraw
//!        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-SetBrushColor_command16
//!        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-SetBrushStyle_command17
//!        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-SetPenColor_command18
//!        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-DrawRect_command19
//!        COMMAND                 win               EndRedraw
//!        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0295-0001-CopyScreenToBitmap_command20
//!        COMMAND                 wgc               Deactivate
//!        COMMAND                 win               Close
//!        COMMAND                 wingrp            Close
//!        COMMAND                 wgc               ~
//!        COMMAND                 scrdev            ~        
//!        COMMAND                 ws                Close   
//!    END_TEST_BLOCK    !PanicString=KERN-EXEC    !PanicCode=3
//!    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
//!END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0295

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0296
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0296
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap{ptr}, const TRect{ref}) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/8/2007
//! @SYMTestCaseDesc            Negative test, copies a rect to a bigger bitmap.
//!                             Set up and draw a 100*100 rect on white screen, and copy the 100*100 rect to a 200*200 bitmap.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle(100*100 size,filled with red, border is black).
//!                             7. Create a CFbsBitmap which size is 200*200.
//!                             8. Copy a 100*100 rect to the 200*200 bitmap.
//!                             9. GetPixel from the bitmap, check the rectangle(inside is red, border is black, ouside is white).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CopyScreenToBitmap methods return KErrNone. 
//!                             2. The bitmap which is copyed to is correct.
//!                                 2.1 The pixels (0,0) is color TRgb(0,0,0); The border is black.
//!                                 2.2 The pixels (99,99) is color TRgb(0,0,0); The border is black.
//!                                 2.3 The pixels (50,99) is color TRgb(0,0,0); The border is black.
//!                                 2.4 The pixels (99,50) is color TRgb(0,0,0); The border is black.
//!                                 2.5 The pixels (1,1) is color TRgb(255,0,0); Inside is red.
//!                                 2.6 The pixels (98,98) is color TRgb(255,0,0); Inside is red.
//!                                 2.7 The pixels (100,100) is color TRgb(255,255,255); Outside is white.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        CREATE_OBJECT           CFbsBitmap        fbsbitmap
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-CreateContext_command05
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-Construct_command07
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-DrawRect_command19
        COMMAND                 win               EndRedraw
        COMMAND                 fbsbitmap         new
        COMMAND                 fbsbitmap         Create                                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-Create_command22
        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-CopyScreenToBitmap_command23
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-GetPixel_command24
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-GetPixel_command25
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-GetPixel_command26
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-GetPixel_command27
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-GetPixel_command28
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-GetPixel_command29
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0296-0001-GetPixel_command30
        COMMAND                 fbsbitmap         ~        
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0296

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0297
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0297
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap{ptr}, const TRect{ref}) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/8/2007
//! @SYMTestCaseDesc            Negative test, copies a rect to a smaller bitmap.
//!                             Set up and draw a 100*100 rect on white screen, and copy the 100*100 rect to a 10*10 bitmap.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle(100*100 size,filled with red, border is black).
//!                             7. Create a CFbsBitmap which size is 10*10.
//!                             8. Copy a 100*100 rect to the 10*10 bitmap.
//!                             9. GetPixel from the bitmap, check the rectangle(inside is red, border is black).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CopyScreenToBitmap methods return KErrNone. 
//!                             2. The bitmap which is copyed to is correct.
//!                                 2.1 The pixels (0,0) is color TRgb(0,0,0); The border is black.
//!                                 2.2 The pixels (9,0) is color TRgb(0,0,0); The border is black.
//!                                 2.3 The pixels (0,9) is color TRgb(0,0,0); The border is black.
//!                                 2.4 The pixels (1,1) is color TRgb(255,0,0); Inside is red.
//!                                 2.5 The pixels (9,9) is color TRgb(255,0,0); Inside is red.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        CREATE_OBJECT           CFbsBitmap        fbsbitmap
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-CreateContext_command05
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-Construct_command07
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-DrawRect_command19
        COMMAND                 win               EndRedraw
        COMMAND                 fbsbitmap         new
        COMMAND                 fbsbitmap         Create                                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-Create_command22
        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-CopyScreenToBitmap_command23
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-GetPixel_command24
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-GetPixel_command25
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-GetPixel_command26
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-GetPixel_command27
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0297-0001-GetPixel_command28
        COMMAND                 fbsbitmap         ~        
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0297

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0298
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0298
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap{ptr}, const TRect{ref}) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/8/2007
//! @SYMTestCaseDesc            Negative test, copies a rect which is out of screen to a same size bitmap.
//!                             Set up and draw a 100*100 rect out of the screen, and copy the 100*100 rect to a 100*100 bitmap.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle out of the screen(100*100 size,filled with red, border is black).
//!                             7. Create a CFbsBitmap which size is 100*100.
//!                             8. Copy the 100*100 rect to the 100*100 bitmap.
//!                             9. GetPixel from the bitmap, check the rectangle.(The whole bitmap is white).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CopyScreenToBitmap methods return KErrNone. 
//!                             2. The bitmap which is copyed to is correct.
//!                                 2.1 The pixels (0,0) is color TRgb(255,255,255). 
//!                                 2.2 The pixels (99,99) is color TRgb(255,255,255). 
//!                                 2.3 The pixels (50,99) is color TRgb(255,255,255). 
//!                                 2.4 The pixels (99,50) is color TRgb(255,255,255). 
//!                                 2.5 The pixels (1,1) is color TRgb(255,255,255). 
//!                                 2.6 The pixels (98,98) is color TRgb(255,255,255). 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        CREATE_OBJECT           CFbsBitmap        fbsbitmap
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-CreateContext_command05
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-Construct_command07
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-DrawRect_command19
        COMMAND                 win               EndRedraw
        COMMAND                 fbsbitmap         new
        COMMAND                 fbsbitmap         Create                                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-Create_command22
        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-CopyScreenToBitmap_command23
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-GetPixel_command24
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-GetPixel_command25
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-GetPixel_command26
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-GetPixel_command27
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-GetPixel_command28
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0298-0001-GetPixel_command29
        COMMAND                 fbsbitmap         ~        
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0298

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0299
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0299
//! @SYMAPI                     CWsScreenDevice::CopyScreenToBitmap(const CFbsBitmap{ptr}, const TRect{ref}) 
//! @SYMAuthor                  Kevin Zeng
//! @SYMCreationDate            1/8/2007
//! @SYMTestCaseDesc            Negative test, copies a rect(-100,-100,0,0) to a same size bitmap.
//!                             Set up and draw a rect(-100,-100,0,0), and copy the 100*100 rect to a 100*100 bitmap.
//! @SYMTestActions             1. Create and connect a RWsSession.
//!                             2. Create a CWsScreenDevice attached to RWsSession.
//!                             3. Create a RWindowGroup attached to RWsSession.
//!                             4. Create a RWindow, setup it and activate.
//!                             5. RWsSession SetAutoFlush.
//!                             6. Setup and draw a rectangle( at rect(-100,-100,0,0), filled with red, border is black).
//!                             7. Create a CFbsBitmap which size is 100*100.
//!                             8. Copy the 100*100 rect to the 100*100 bitmap.
//!                             9. GetPixel from the bitmap, check the rectangle.(The whole bitmap is white).
//!                             10. Destruct and Close.
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     1. CopyScreenToBitmap methods return KErrNone. 
//!                             2. The bitmap which is copyed to is correct.
//!                                 2.1 The pixels (0,0) is color TRgb(255,255,255). 
//!                                 2.2 The pixels (99,99) is color TRgb(255,255,255). 
//!                                 2.3 The pixels (50,99) is color TRgb(255,255,255). 
//!                                 2.4 The pixels (99,50) is color TRgb(255,255,255). 
//!                                 2.5 The pixels (1,1) is color TRgb(255,255,255). 
//!                                 2.6 The pixels (98,98) is color TRgb(255,255,255). 
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        CREATE_OBJECT           CWindowGc         wgc
        CREATE_OBJECT           RWindowGroup      wingrp
        CREATE_OBJECT           RWindow           win
        CREATE_OBJECT           CFbsBitmap        fbsbitmap
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            CreateContext                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-CreateContext_command05
        COMMAND                 wingrp            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-new_command06
        COMMAND                 wingrp            Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-Construct_command07
        COMMAND                 win               new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-new_command08
        COMMAND                 win               Construct                             GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-Construct_command09
        COMMAND                 win               SetRequiredDisplayMode                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-SetRequiredDisplayMode_command10
        COMMAND                 win               SetBackgroundColor                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-SetBackgroundColor_command11
        COMMAND                 win               Activate
        COMMAND                 ws                SetAutoFlush                          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-SetAutoFlush_command13
        COMMAND                 wgc               Activate                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-Activate_command14
        COMMAND                 win               BeginRedraw
        COMMAND                 wgc               SetBrushColor                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-SetBrushColor_command16
        COMMAND                 wgc               SetBrushStyle                         GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-SetBrushStyle_command17
        COMMAND                 wgc               SetPenColor                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-SetPenColor_command18
        COMMAND                 wgc               DrawRect                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-DrawRect_command19
        COMMAND                 win               EndRedraw
        COMMAND                 fbsbitmap         new
        COMMAND                 fbsbitmap         Create                                GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-Create_command22
        COMMAND                 scrdev            CopyScreenToBitmap                    GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-CopyScreenToBitmap_command23
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-GetPixel_command24
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-GetPixel_command25
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-GetPixel_command26
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-GetPixel_command27
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-GetPixel_command28
        COMMAND                 fbsbitmap         GetPixel                              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0299-0001-GetPixel_command29
        COMMAND                 fbsbitmap         ~        
        COMMAND                 wgc               Deactivate
        COMMAND                 win               Close
        COMMAND                 wingrp            Close
        COMMAND                 wgc               ~
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close   
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0299

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0300
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0300
//! @SYMAPI                     CWsScreenDevice::GetScreenModeSizeAndRotation(TInt, TPixelsAndRotation{ref})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the screen rotation and size(in pixels) using mode -1
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the screen size(in pixels) and rotation with mode -1
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0300-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeSizeAndRotation      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0300-0001-GetScreenModeSizeAndRotation_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0300


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0301
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0301
//! @SYMAPI                     CWsScreenDevice::GetScreenModeSizeAndRotation(TInt, TPixelsTwipsAndRotation{ref})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the screen rotation and size(both in pixels and twips) using mode -1
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the screen size(both in pixels and twips) and rotation with mode -1
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                               GRAPHICS-WSERV-WsScreenDevice-PublicApi-0301-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeSizeAndRotation      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0301-0001-GetScreenModeSizeAndRotation_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0301


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0302
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0302
//! @SYMAPI                     CWsScreenDevice::GetRotationsList(TInt, CArrayFixFlat<TInt>{ptr})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the list of valid rotations using mode -1
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the list of valid rotations for mode -1
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0302-0001-new_command03       
        COMMAND                 scrdev            Construct                 
        COMMAND                 scrdev            GetRotationsList          GRAPHICS-WSERV-WsScreenDevice-PublicApi-0302-0001-GetRotationsList_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0302

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0303
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0303
//! @SYMAPI                     CWsScreenDevice::SetAppScreenMode(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, sets the application screen mode with mode -1
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Set the application with mode -1
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0303-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            SetAppScreenMode      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0303-0001-SetAppScreenMode_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0303


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0304
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0304
//! @SYMAPI                     CWsScreenDevice::GetScreenModeOrigin(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test,gets the origin of the screen using mode -1
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the origin of the screen for mode -1
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0304-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeOrigin       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0304-0001-GetScreenModeOrigin_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0304

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0305
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0305
//! @SYMAPI                     CWsScreenDevice::GetScreenModeScale(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the scale using mode -1
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the scale for mode -1
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0305-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeScale        GRAPHICS-WSERV-WsScreenDevice-PublicApi-0305-0001-GetScreenModeScale_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0305

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0306
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0306
//! @SYMAPI                     CWsScreenDevice::GetScreenModeScaledOrigin(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the scaled origin for mode -1
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the scaled origin for mode -1
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0306-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeScaledOrigin     GRAPHICS-WSERV-WsScreenDevice-PublicApi-0306-0001-GetScreenModeScaledOrigin_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0306


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0307
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0307
//! @SYMAPI                     CWsScreenDevice::GetScreenModeDisplayMode(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the display mode for mode -1
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the display mode for mode -1
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicApi-0307-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeDisplayMode      GRAPHICS-WSERV-WsScreenDevice-PublicApi-0307-0001-GetScreenModeDisplayMode_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0307

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0308
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0308
//! @SYMAPI                     CWsScreenDevice::SetScreenSizeAndRotation(const TPixelsAndRotation{ref})
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, uses invalid input values
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the current screen size and rotation, and check them to be same as default value
//!                             5. Set the current screen size in pixels and the rotation for the screen device with invalide values multi times
//!                             5.1 Set screen size to (10000,10000), set rotation to EGraphicsOrientationNormal
//!                             5.2 Set screen size to (1,1), set rotation to EGraphicsOrientationRotated90
//!                             5.3 Set screen size to (0,0), set rotation to EGraphicsOrientationRotated180
//!                             5.4 Set screen size to (-1,-1), set rotation to EGraphicsOrientationRotated270
//!                             5.5 Set screen size to (-10000,-10000), set rotation to EGraphicsOrientationNormal
//!                             5.6 Set screen size to (240,640) for Emulator or (240, 320) for H4 board, set rotation to EGraphicsOrientationNormal
//!                             5.7 Set screen size to (10000,640) for Emulator or (10000, 320) for H4 board, set rotation to EGraphicsOrientationNormal
//!                             6. Get the current screen size and rotation, and check them to be same as default value
//!                             7. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic with invalid values and anything should not be changed.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-new_command03
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetDefaultScreenSizeAndRotation       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-GetDefaultScreenSizeAndRotation_command05
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-SetScreenSizeAndRotation_command06
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-SetScreenSizeAndRotation_command07
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-SetScreenSizeAndRotation_command08
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-SetScreenSizeAndRotation_command09
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-SetScreenSizeAndRotation_command10
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-SetScreenSizeAndRotation_command11
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-SetScreenSizeAndRotation_command12
        COMMAND                 scrdev            GetDefaultScreenSizeAndRotation       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0308-0001-GetDefaultScreenSizeAndRotation_command13
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0308

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0309
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0309
//! @SYMAPI                     CWsScreenDevice::SetScreenSizeAndRotation(const TPixelsTwipsAndRotation{ref})
//! @SYMAuthor                  Niandong Qiao
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, uses invalid input values
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the current screen size and rotation, and check them to be same as default value
//!                             5. Set the current screen size(in both twips and pixels) and the rotation for the screen device with invalide values multi times
//!                             5.1 Set screen size in twips to (100000,100000), in pixels to(10000,10000), set rotation to EGraphicsOrientationNormal
//!                             5.2 Set screen size in twips to (1,1), in pixels to(1,1), set rotation to EGraphicsOrientationRotated90
//!                             5.3 Set screen size in twips to (0,0), in pixels to(0,0), set rotation to EGraphicsOrientationRotated180
//!                             5.4 Set screen size in twips to (-1,-1), in pixels to(-1,-1), set rotation to EGraphicsOrientationRotated270
//!                             5.5 Set screen size in twips to (-100000,-100000), in pixels to(-10000,-10000), set rotation to EGraphicsOrientationNormal
//!                             5.6 Set screen size in twips to (7620,2000) for Emulator or (4463, 2000) for H4 board, in pixels to (640,200) for Emulator or (340,200) for H4 board, set rotation to EGraphicsOrientationNormal
//!                             5.7 Set screen size in twips to (2858,7620) for Emulator or (3041,4463) for H4 board, in pixels to (240,640) for Emulator or (240, 320) for H4 board, set rotation to EGraphicsOrientationNormal
//!                             5.8 Set screen size in twips to (2858,2000) for Emulator or (3041,2000) for H4 board, in pixels to (240,640) for Emulator or (240, 320) for H4 board, set rotation to EGraphicsOrientationNormal
//!                             5.9 Set screen size in twips to (2000,2000) for Emulator or (2000,2000) for H4 board, in pixels to (240,640) for Emulator or (240, 320) for H4 board, set rotation to EGraphicsOrientationNormal
//!                             5.10 Set screen size in twips to (2000,2000) for Emulator or (2000,2000) for H4 board, in pixels to (240,200) for Emulator or (240, 200) for H4 board, set rotation to EGraphicsOrientationNormal
//!                             6. Get the current screen size and rotation, and check them to be same as default value
//!                             7. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            Critical
//! @SYMTestExpectedResults     No panic with invalid values and anything should not be changed.
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                                   GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-new_command03
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetDefaultScreenSizeAndRotation       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-GetDefaultScreenSizeAndRotation_command05
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command06
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command07
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command08
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command09
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command10
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command11
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command12
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command13
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command14
        COMMAND                 scrdev            SetScreenSizeAndRotation              GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-SetScreenSizeAndRotation_command15
        COMMAND                 scrdev            GetDefaultScreenSizeAndRotation       GRAPHICS-WSERV-WsScreenDevice-PublicApi-0309-0001-GetDefaultScreenSizeAndRotation_command16
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0309


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0310
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0310
//! @SYMAPI                     CWsScreenDevice::GetScreenModeSizeAndRotation(TInt, TPixelsAndRotation{ref})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the screen rotation and size(in pixels) using mode 1000(too big)
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the screen size(in pixels) and rotation with mode 1000(too big)
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                               GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0310-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeSizeAndRotation      GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0310-0001-GetScreenModeSizeAndRotation_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0310


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0311
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0311
//! @SYMAPI                     CWsScreenDevice::GetScreenModeSizeAndRotation(TInt, TPixelsTwipsAndRotation{ref})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the screen rotation and size(both in pixels and twips) using mode 1000(too big)
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the screen size(both in pixels and twips) and rotation with mode 1000(too big)
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                               GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0311-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeSizeAndRotation      GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0311-0001-GetScreenModeSizeAndRotation_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0311


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0312
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0312
//! @SYMAPI                     CWsScreenDevice::GetRotationsList(TInt, CArrayFixFlat<TInt>{ptr})
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the list of valid rotations using mode 1000(too big)
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the list of valid rotations for mode 1000(too big)
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0312-0001-new_command03       
        COMMAND                 scrdev            Construct                 
        COMMAND                 scrdev            GetRotationsList          GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0312-0001-GetRotationsList_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0312

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0313
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0313
//! @SYMAPI                     CWsScreenDevice::SetAppScreenMode(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, sets the application screen mode with mode 1000(too big)
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Set the application with mode 1000(too big)
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                   GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0313-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            SetAppScreenMode      GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0313-0001-SetAppScreenMode_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0313


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0314
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0314
//! @SYMAPI                     CWsScreenDevice::GetScreenModeOrigin(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test,gets the origin of the screen using mode 1000(too big)
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the origin of the screen for mode 1000(too big)
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0314-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeOrigin       GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0314-0001-GetScreenModeOrigin_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0314

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0315
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0315
//! @SYMAPI                     CWsScreenDevice::GetScreenModeScale(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the scale using mode 1000(too big)
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the scale for mode 1000(too big)
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                       GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0315-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeScale        GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0315-0001-GetScreenModeScale_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0315

START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0316
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0316
//! @SYMAPI                     CWsScreenDevice::GetScreenModeScaledOrigin(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the scaled origin for mode 1000(too big)
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the scaled origin for mode 1000(too big)
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0316-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeScaledOrigin     GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0316-0001-GetScreenModeScaledOrigin_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0316


START_TESTCASE                  GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0317
//! @SYMTestCaseID              GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0317
//! @SYMAPI                     CWsScreenDevice::GetScreenModeDisplayMode(TInt)
//! @SYMAuthor                  Wekey Weng
//! @SYMCreationDate            12/29/2007
//! @SYMTestCaseDesc            Negative test, gets the display mode for mode 1000(too big)
//! @SYMTestActions             1. Create and connect a RWsSession
//!                             2. Create a CWsScreenDevice attached to RWsSession
//!                             3. Complete the construction
//!                             4. Get the display mode for mode 1000(too big)
//!                             5. Destruct and close all objects used
//! @SYMTestStatus              Implemented
//! @SYMTestPriority            High
//! @SYMTestExpectedResults     WSERV 54 panic received at Test Action 4
//! @SYMTestType                CIT
    START_TEST_BLOCK            10    T_GraphicsWservAPI      \graphics\GRAPHICS-WSERV-WsScreenDevice-PublicAPI.ini
        CREATE_OBJECT           RWsSession        ws
        CREATE_OBJECT           CWsScreenDevice   scrdev
        COMMAND                 ws                new       
        COMMAND                 ws                Connect        
        COMMAND                 scrdev            new                           GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0317-0001-new_command03       
        COMMAND                 scrdev            Construct
        COMMAND                 scrdev            GetScreenModeDisplayMode      GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0317-0001-GetScreenModeDisplayMode_command05
        COMMAND                 scrdev            ~        
        COMMAND                 ws                Close       
    END_TEST_BLOCK              !PanicString=WSERV        !PanicCode=54
    RUN_TEST_STEP	100	T_GraphicsWservAPI	utilityClearPanicDlg    
END_TESTCASE                    GRAPHICS-WSERV-WsScreenDevice-PublicAPI-0317