/*
* Copyright (c) 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: Test class for taskswitcher::TaskSwitcher
*
*/
#include <QtTest/QtTest>
#include "afasyncrequestobserver.h"
#include "afasyncsession.h"
class CFbsBitmap;
/**
* @test Test class
*/
class T_ActivityClient : public QObject,
public MAfAsyncSession,
public MAfAsyncRequestObserver
{
Q_OBJECT
public:
T_ActivityClient();
~T_ActivityClient();
public: //MAfAsyncRequestObserver
void waitActivityRequestCompleted(int result,
const TDesC8 &data);
void getThumbnailRequestCompleted(int result,
int bitmapHandle,
void* userData);
void dataChangeNotificationCompleted(int result);
public: //MAfAsyncSession
void PushL(CBase* asyncTask);
void Pop(CBase* asyncTask);
void executeL(int function);
void sendAsync(int function, const TIpcArgs &args, TRequestStatus& status);
void getDataL(int id, TDes8& buffer);
private slots:
void initTestCase();
void cleanupTestCase();
void testEntry();
void testAsyncRequest();
void testCreateClient();
void testAddActivity();
void testUpdateActivity();
void testSaveActivity();
void testRemoveActivity();
void testRemoveApplicationActivities();
void testActivities();
void testApplicationActivities();
void testGetData();
void testWaitLaunchActivity();
void testGetThumbnail();
private:
CFbsBitmap *mBitmap;
HBufC *mData;
TInt mScreenshotHandle;
CFbsBitmap *mScreenshot;
CBase *mRunningTask;
void *mUserData;
int mExpectedResponse;
int mRealResponse;
QEventLoop mLoop;
};