graphicsapitest/graphicssvs/bitgdi/scripts/GRAPHICS-BITGDI-FbsBitGcBitmap-PublicApi.script
Revise some of the compositor performance improvements to improve correctness.
Implement pixel blending using a variation of Jim Blinn's no-division blending algorithm.
Move transparency type simplification further up the composition code.
Remove some unnecessary fields.
Output to YUV implementation needs revision as it is actually converting from YUV (copy of source conversion code).
//
// 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-BITGDI-FbsBitGcBitmap-PublicApi
//! @SYMScriptTestEnvironment
/////////////////////////////////////////////////////////////////////
// GRAPHICS-BITGDI-FbsBitGcBitmap-PublicApi.script
//
// Tests all public elements of the CFbsBitGcBitmap
// 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 CFbsBitGcBitmap
// The tests are fully automated.
/////////////////////////////////////////////////////////////////////
LOAD_SUITE T_GraphicsBitgdiApi
DELAY 1000
START_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0001
//! @SYMTestCaseID GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0001
//! @SYMAPI CFbsBitGcBitmap::Address()
//! @SYMAuthor Dorothy Zhang
//! @SYMCreationDate 09/01/2009
//! @SYMTestCaseDesc Get the bitmap address without bitmap created
//! @SYMTestActions 1. Create a CFbsBitGcBitmap object
//! 2. Create a RFbsSession with font and bitmap server
//! 3. Call Address to get the bitmap address
//! 4. Destroy the object anc close the session
//! @SYMTestStatus Implemented
//! @SYMTestPriority High
//! @SYMTestExpectedResults The CFbsBitGcBitmap::Address() call returns NULL as expected and should not cause any panic.
//! @SYMTestType CIT
START_TEST_BLOCK 10 T_GraphicsBitgdiApi c:\graphics\GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI.ini
CREATE_OBJECT RFbsSession RFbsSession1
CREATE_OBJECT CFbsBitGcBitmap CFbsBitGcBitmap1
COMMAND RFbsSession1 Connect
COMMAND CFbsBitGcBitmap1 new
COMMAND CFbsBitGcBitmap1 Address
COMMAND CFbsBitGcBitmap1 ~
COMMAND RFbsSession1 Disconnect
END_TEST_BLOCK
END_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0001
START_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0002
//! @SYMTestCaseID GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0002
//! @SYMAPI CFbsBitGcBitmap::Address()
//! @SYMAuthor Dorothy Zhang
//! @SYMCreationDate 09/01/2009
//! @SYMTestCaseDesc Get a new created bitmap address
//! @SYMTestActions 1. Create a CFbsBitGcBitmap object
//! 2. Create a RFbsSession with font and bitmap server
//! 3. Create a 100x200 bitmap
//! 4. Call Address to get the bitmap address
//! 5. Destroy the object and close the session
//! @SYMTestStatus Implemented
//! @SYMTestPriority High
//! @SYMTestExpectedResults The CFbsBitGcBitmap::Address() call returns are expected and should not cause any panic.
//! @SYMTestType CIT
START_TEST_BLOCK 10 T_GraphicsBitgdiApi c:\graphics\GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI.ini
CREATE_OBJECT RFbsSession RFbsSession1
CREATE_OBJECT CFbsBitGcBitmap CFbsBitGcBitmap1
COMMAND RFbsSession1 Connect
COMMAND CFbsBitGcBitmap1 new
COMMAND CFbsBitGcBitmap1 Create GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0002-0001-Create_Command03
COMMAND CFbsBitGcBitmap1 Address GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0002-0001-Address_Command04
COMMAND CFbsBitGcBitmap1 ~
COMMAND RFbsSession1 Disconnect
END_TEST_BLOCK
END_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0002
START_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0003
//! @SYMTestCaseID GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0003
//! @SYMAPI CFbsBitGcBitmap::LockHeap()
//! @SYMAuthor Dorothy Zhang
//! @SYMCreationDate 09/01/2009
//! @SYMTestCaseDesc Lock the global bitmap heap
//! @SYMTestActions 1. Create a CFbsBitGcBitmap object
//! 2. Create a RFbsSession with font and bitmap server
//! 3. Call LockHeap to lock the global bitmap heap
//! 4. Call UnlockHeap to unlock the global bitmap heap
//! 5. Destroy the object and disconnect the session
//! @SYMTestStatus Implemented
//! @SYMTestPriority High
//! @SYMTestExpectedResults The CFbsBitGcBitmap::LockHeap() call should not cause any panic.
//! @SYMTestType CIT
START_TEST_BLOCK 10 T_GraphicsBitgdiApi c:\graphics\GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI.ini
CREATE_OBJECT RFbsSession RFbsSession1
CREATE_OBJECT CFbsBitGcBitmap CFbsBitGcBitmap1
COMMAND RFbsSession1 Connect
COMMAND CFbsBitGcBitmap1 new
COMMAND CFbsBitGcBitmap1 LockHeap
COMMAND CFbsBitGcBitmap1 UnlockHeap
COMMAND CFbsBitGcBitmap1 ~
COMMAND RFbsSession1 Disconnect
END_TEST_BLOCK
END_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0003
START_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0004
//! @SYMTestCaseID GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0004
//! @SYMAPI CFbsBitGcBitmap::LockHeap()
//! @SYMAuthor Dorothy Zhang
//! @SYMCreationDate 09/01/2009
//! @SYMTestCaseDesc Lock the global bitmap heap with a new bitmap created
//! @SYMTestActions 1. Create a CFbsBitGcBitmap object
//! 2. Create a RFbsSession with font and bitmap server
//! 3. Create a 100x200 bitmap
//! 4. Call LockHeap to lock the global bitmap heap
//! 5. Call UnlockHeap to unlock the global bitmap heap
//! 6. Destroy the object and disconnect the session
//! @SYMTestStatus Implemented
//! @SYMTestPriority High
//! @SYMTestExpectedResults The CFbsBitGcBitmap::LockHeap() call should not cause any panic.
//! @SYMTestType CIT
START_TEST_BLOCK 10 T_GraphicsBitgdiApi c:\graphics\GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI.ini
CREATE_OBJECT RFbsSession RFbsSession1
CREATE_OBJECT CFbsBitGcBitmap CFbsBitGcBitmap1
COMMAND RFbsSession1 Connect
COMMAND CFbsBitGcBitmap1 new
COMMAND CFbsBitGcBitmap1 Create GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0004-0001-Create_Command03
COMMAND CFbsBitGcBitmap1 LockHeap
COMMAND CFbsBitGcBitmap1 UnlockHeap
COMMAND CFbsBitGcBitmap1 ~
COMMAND RFbsSession1 Disconnect
END_TEST_BLOCK
END_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0004
START_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0005
//! @SYMTestCaseID GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0005
//! @SYMAPI CFbsBitGcBitmap::LockHeap()
//! @SYMAuthor Dorothy Zhang
//! @SYMCreationDate 09/01/2009
//! @SYMTestCaseDesc Get the address of the first pixel in the bitmap with LockHeap and UnlockHeap call in pairs
//! @SYMTestActions 1. Create a CFbsBitGcBitmap object
//! 2. Create a RFbsSession with font and bitmap server
//! 3. Create a 100x200 bitmap
//! 4. Call LockHeap to lock the global bitmap heap
//! 5. Call DataAddress to get the address of the first pixel in the bitmap
//! 6. Call UnlockHeap to unlock the global bitmap heap
//! 7. Destroy the object and disconnect the session.
//! @SYMTestStatus Implemented
//! @SYMTestPriority High
//! @SYMTestExpectedResults The CFbsBitGcBitmap::UnlockHeap() call should not cause any panic.
//! @SYMTestType CIT
START_TEST_BLOCK 10 T_GraphicsBitgdiApi c:\graphics\GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI.ini
CREATE_OBJECT RFbsSession RFbsSession1
CREATE_OBJECT CFbsBitGcBitmap CFbsBitGcBitmap1
COMMAND RFbsSession1 Connect
COMMAND CFbsBitGcBitmap1 new
COMMAND CFbsBitGcBitmap1 Create GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0005-0001-Create_Command03
COMMAND CFbsBitGcBitmap1 LockHeap
COMMAND CFbsBitGcBitmap1 DataAddress
COMMAND CFbsBitGcBitmap1 UnlockHeap
COMMAND CFbsBitGcBitmap1 ~
COMMAND RFbsSession1 Disconnect
END_TEST_BLOCK
END_TESTCASE GRAPHICS-BITGDI-FbsBitGcBitmap-PublicAPI-0005