diff -r d1dadafc5584 -r 26079c1bb561 homescreensrv_plat/activity_framework_api/tsrc/t_afactivitylauncher/src/t_afactivitylauncher.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/homescreensrv_plat/activity_framework_api/tsrc/t_afactivitylauncher/src/t_afactivitylauncher.cpp Wed Oct 06 16:00:22 2010 +0300 @@ -0,0 +1,114 @@ +/* +* 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: +* +*/ +#include "t_afactivitylauncher.h" + +#include +#include "afapplicationlauncher.h" +#include +#include "afactivitylauncher.h" +#include "afactivitylauncher_p.h" + + +void TestAfActivityLauncher::initTestCase() +{ + QCOMPARE(mApaLsSession.Connect(), KErrNone); + QCOMPARE(mWsSession.Connect(), KErrNone); +} + +void TestAfActivityLauncher::cleanupTestCase() +{ + mApaLsSession.Close(); + mWsSession.Close(); +} + +void TestAfActivityLauncher::init() +{ + QT_TRAP_THROWING(mLauncher = CAfActivityLauncher::NewL(mApaLsSession, mWsSession)); +} + +void TestAfActivityLauncher::cleanup() +{ + delete TAfApplicationLauncher::lastStartUri; + TAfApplicationLauncher::lastStartUri = 0; + TAfApplicationLauncher::lastStartAppId = 0; + + delete CAfStorageClient::lastLaunchUri; + CAfStorageClient::lastLaunchUri = 0; + CAfStorageClient::lastLaunchAppId = 0; + + delete mLauncher; + mLauncher = 0; +} + +void TestAfActivityLauncher::testScheme() +{ + TAfApplicationLauncher::expectedIsRunningResult = ETrue; + + TInt error; + TRAP(error, mLauncher->launchActivityL(_L("appto://DEADBEEF"))); + QCOMPARE(error, KErrNone); + + TRAP(error, mLauncher->launchActivityL(_L("bzzzt://DEADBEEF"))); + QCOMPARE(error, KErrArgument); +} + +void TestAfActivityLauncher::testUidParsing() +{ + TAfApplicationLauncher::expectedIsRunningResult = ETrue; + + TInt error; + TRAP(error, mLauncher->launchActivityL(_L("appto://DEADBEEF"))); + QCOMPARE(error, KErrNone); + + TRAP(error, mLauncher->launchActivityL(_L("appto://INVALID"))); + QCOMPARE(error, KErrGeneral); +} + +void TestAfActivityLauncher::testRunningCase() +{ + TAfApplicationLauncher::expectedIsRunningResult = ETrue; + + _LIT(KActivityUri, "appto://DEADBEEF"); + TRAPD(error, mLauncher->launchActivityL(KActivityUri)); + QCOMPARE(error, KErrNone); + + QCOMPARE(CAfStorageClient::lastLaunchAppId, TInt(0xDEADBEEF)); + QVERIFY(CAfStorageClient::lastLaunchUri->Compare(KActivityUri()) == 0); +} + +void TestAfActivityLauncher::testStartupCase() +{ + TAfApplicationLauncher::expectedIsRunningResult = EFalse; + + _LIT(KActivityUri, "appto://DEADBEEF"); + TRAPD(error, mLauncher->launchActivityL(KActivityUri)); + QCOMPARE(error, KErrNone); + + QCOMPARE(TAfApplicationLauncher::lastStartAppId, TInt(0xDEADBEEF)); + QVERIFY(TAfApplicationLauncher::lastStartUri->Compare(KActivityUri()) == 0); +} + +void TestAfActivityLauncher::callUnusedCallbacks() +{ + CAfActivityLauncherPrivate* imp = CAfActivityLauncherPrivate::NewL(mApaLsSession, mWsSession); + imp->waitActivityRequestCompleted(0, KNullDesC8()); + imp->getThumbnailRequestCompleted(0, 0, 0); + imp->dataChangeNotificationCompleted(0); + delete imp; +} + +QTEST_MAIN(TestAfActivityLauncher)