windowing/windowserver/tauto/TMDISPLAY.CPP
changeset 116 171fae344dd4
parent 103 2717213c588a
--- a/windowing/windowserver/tauto/TMDISPLAY.CPP	Tue Jun 22 15:21:29 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,232 +0,0 @@
-// Copyright (c) 1996-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:
-// Multiple display test
-// 
-//
-
-/**
- @file
- @test
- @internalComponent - Internal Symbian test code
-*/
-
-
-
-#include "TMDISPLAY.H"
-#include <hal.h>
-//
-//
-CTClient* CreateClientL()
-	{
-	return (TheClient=new(ELeave) TestClient());
-	}
-	
-TInt ProcMultiDisplay(TAny* aScreenNo)
-	{
-	return TestLibStartUp(CreateClientL,(TInt)aScreenNo);
-	}
-
-
-//
-//
-
-CTMultiDisplay::CTMultiDisplay(CTestStep* aStep) : CTWsGraphicsBase(aStep)
-	{
-	INFO_PRINTF1(_L("Testing Mutli display functions"));
-	}
-
-void CTMultiDisplay::ConstructL()
-	{
-	}
-	
-CTMultiDisplay::~CTMultiDisplay()
-	{
-	}
-
-TInt DoSetFocusScreenL(TInt aFocusScreen,TAny* /*aArg*/)
-	{
-	RWsSession ws;
-	User::LeaveIfError(ws.Connect());
-	ws.SetFocusScreen(aFocusScreen);
-	ws.Close();
-	return EWsExitReasonBad;
-	}
-
-/**
-@SYMTestCaseID		GRAPHICS-WSERV-0051
-
-@SYMDEF             DEF081259
-
-@SYMTestCaseDesc    Test focusing on the two different screens
-					available
-
-@SYMTestPriority    High
-
-@SYMTestStatus      Implemented
-
-@SYMTestActions     Test the response to different calls to focus
-					on the two screens available
-
-@SYMTestExpectedResults Foucisng on the different screens is correct
-*/	
-void CTMultiDisplay::DoFocusScreenTestL()
-	{
-	_LIT(KSubTitle,"FocusScreen API");
-	INFO_PRINTF1(KSubTitle);
-	
-	TInt numberOfScreens;
-	HAL::Get(HALData::EDisplayNumberOfScreens, numberOfScreens);
-	TInt oldFocus=TheClient->iWs.GetFocusScreen();
-		
-	// test case #1: out of bounds screen number
-	// expected result: client panic and focus stays on current screen
-	TEST(iTest->TestWsPanicL(&DoSetFocusScreenL,EWservPanicScreenNumber,-1,NULL));
-	TEST(TheClient->iWs.GetFocusScreen()==oldFocus);
-	if (TheClient->iWs.GetFocusScreen()!=oldFocus)
-		INFO_PRINTF3(_L("TheClient->iWs.GetFocusScreen() return value - Expected: %d, Actual: %d"), oldFocus, TheClient->iWs.GetFocusScreen());		
-
-	TEST(iTest->TestWsPanicL(&DoSetFocusScreenL,EWservPanicScreenNumber,numberOfScreens,NULL));
-	TEST(TheClient->iWs.GetFocusScreen()==oldFocus);
-	if (TheClient->iWs.GetFocusScreen()!=oldFocus)
-		INFO_PRINTF3(_L("TheClient->iWs.GetFocusScreen() return value - Expected: %d, Actual: %d"), oldFocus, TheClient->iWs.GetFocusScreen());		
-
-	
-	// test case #2: new focus equals to current focus
-	// expected result: KErrNone and focus stays on current screen
-	TInt ret = TheClient->iWs.SetFocusScreen(oldFocus);
-	TEST(ret==KErrNone && TheClient->iWs.GetFocusScreen()==oldFocus);
-	if (ret!=KErrNone || TheClient->iWs.GetFocusScreen()!=oldFocus)
-		INFO_PRINTF5(_L("TheClient->iWs.SetFocusScreen(oldFocus)==KErrNone && TheClient->iWs.GetFocusScreen()==oldFocus - Expected: %d and %d, Actual: %d and %d"),KErrNone,  oldFocus, ret, TheClient->iWs.GetFocusScreen());		
-
-	
-	// test case #3: set focus to screen N where screen N is empty (doesn't have any windows)
-	// expected result: KErrNotFound and focus stays on current screen
-	TInt i;
-	for(i=1;i<numberOfScreens;++i)
-		{
-		ret = TheClient->iWs.SetFocusScreen(i);
-		TEST(ret==KErrNotReady && TheClient->iWs.GetFocusScreen()==oldFocus);
-		if (ret!=KErrNotReady || TheClient->iWs.GetFocusScreen()!=oldFocus)
-			INFO_PRINTF5(_L("TheClient->iWs.SetFocusScreen(i)==KErrNotReady && TheClient->iWs.GetFocusScreen()==oldFocus - Expected: %d and %d, Actual: %d and %d"),KErrNotReady,  oldFocus, ret, TheClient->iWs.GetFocusScreen());
-		}
-				
-	// test case #4: set focus to screen N where screen N has focus-able window
-	// expected result: KErrNone and focus is set to screen N
-	CArrayPtrFlat<CMinWin>* wins;
-	wins=new(ELeave) CArrayPtrFlat<CMinWin>(numberOfScreens);
-	CleanupStack::PushL(wins);
-	for(i=0;i<numberOfScreens;++i)
-		{
-		CMinWin* win=new(ELeave) CMinWin(i);
-		CleanupStack::PushL(win);
-		win->ConstructL();
-		wins->AppendL(win);
-		}
-		
-	for(i=1;i<numberOfScreens;++i)
-		{
-		ret = TheClient->iWs.SetFocusScreen(i);
-		TEST(ret==KErrNone && TheClient->iWs.GetFocusScreen()==i);
-		if (ret!=KErrNone || TheClient->iWs.GetFocusScreen()!=i)
-			INFO_PRINTF5(_L("TheClient->iWs.SetFocusScreen(i)==KErrNone && TheClient->iWs.GetFocusScreen()==i - Expected: %d and %d, Actual: %d and %d"),KErrNone,  i, ret, TheClient->iWs.GetFocusScreen());
-
-		}		
-	
-	// test case #5: set focus back from screen N to main screen (screen 0)
-	// expected result: KErrNone and focus is set to screen 0
-	ret = TheClient->iWs.SetFocusScreen(0);
-	TEST(ret==KErrNone && TheClient->iWs.GetFocusScreen()==0);
-	if (ret!=KErrNone || TheClient->iWs.GetFocusScreen()!=0)
-		INFO_PRINTF5(_L("TheClient->iWs.SetFocusScreen(0)==KErrNone && TheClient->iWs.GetFocusScreen()==0 - Expected: %d and %d, Actual: %d and %d"),KErrNone,  0, ret, TheClient->iWs.GetFocusScreen());
-	
-	CleanupStack::PopAndDestroy(numberOfScreens+1,wins);
-	}
-
-/**
-@SYMTestCaseID		GRAPHICS-WSERV-0052
-
-@SYMDEF             DEF081259
-
-@SYMTestCaseDesc    Launch a test from a new process and check
-					that it passes indepenedent of screen focus
-
-@SYMTestPriority    High
-
-@SYMTestStatus      Implemented
-
-@SYMTestActions     Focus on a screen, launch a test process,
-					switch to focus on the other screen, then
-					then check the test process passed
-
-@SYMTestExpectedResults The test in the process passed
-*/		
-void CTMultiDisplay::DoScreenTestL(TInt aScreenNo)
-	{
-	_LIT(KSubTest,"Screen %d");
-	TBuf<16> subMsg;
-
-	const TInt numScreens=TheClient->iWs.NumberOfScreens();
-	if (numScreens<=aScreenNo)
-		{
-		_LIT(KLog,"WARNING!! Cannot run test for screen %d as the device only has %d screens.");
-		LOG_MESSAGE3(KLog,aScreenNo,numScreens);
-		aScreenNo=numScreens-1;
-		}
-
-	subMsg.AppendFormat(KSubTest,aScreenNo);
-	LOG_MESSAGE(subMsg);
-
-	// Must switch focus screen to relevant screen manually 
-	CMinWin* win=new(ELeave) CMinWin(aScreenNo);
-	CleanupStack::PushL(win);
-	win->ConstructL();
-	TheClient->iWs.SetFocusScreen(aScreenNo);
-
-	CleanupStack::PopAndDestroy(win);
-	TheClient->iWs.SetFocusScreen(0);
-	CTestBase::iScreenNo=aScreenNo;
-
-	//Set CTestBase::iNumberOfGrpWndsOnPrimaryScreenWithZeroPriority with the number of window groups
-	//in default screen with priority zero. This will be used in TGwHandle test case.
-	CTestBase::iNumberOfGrpWndsOnPrimaryScreenWithZeroPriority = TheClient->iWs.NumWindowGroups(0) - 1;
-	}
-
-void CTMultiDisplay::RunTestCaseL(TInt /*aCurTestCase*/)
-	{
-	_LIT(KTest1,"Focus Screen");
-	_LIT(KTest2,"Screen");
-	((CTMultiDisplayStep*)iStep)->SetTestStepID(KUnknownSYMTestCaseIDName);
-
-	switch (++iTest->iState)
-		{
-		case 1:
-			((CTMultiDisplayStep*)iStep)->SetTestStepID(_L("GRAPHICS-WSERV-0051"));
-			iTest->LogSubTest(KTest1);
-			DoFocusScreenTestL();
-			break;
-		case 2:
-			((CTMultiDisplayStep*)iStep)->SetTestStepID(_L("GRAPHICS-WSERV-0052"));
-			iTest->LogSubTest(KTest2);
-			DoScreenTestL(1);
-			break;
-		default:
-			((CTMultiDisplayStep*)iStep)->SetTestStepID(KNotATestSYMTestCaseIDName);
-			((CTMultiDisplayStep*)iStep)->CloseTMSGraphicsStep();
-			TestComplete();
-			break;	
-		}
-	((CTMultiDisplayStep*)iStep)->RecordTestResultL();
-	}
-
-__WS_CONSTRUCT_STEP__(MultiDisplay)