--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/applayerpluginsandutils/uripermissionservices/Test/tineturilisttests.cpp Tue Feb 02 01:09:52 2010 +0200
@@ -0,0 +1,795 @@
+// Copyright (c) 2007-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 "tineturilisttests.h"
+#include <cauthentication.h>
+#include "testutils.h"
+
+#define __LEAVEIFOOM__ if ( err == KErrNoMemory ) \
+ User::Leave ( err );
+#define __PRINTIFNOTOOM__ if ( iNormalRun )
+
+CInetUriListTestsBase::CInetUriListTestsBase ( CTestWrapper& aTestWrapper, TBool aNormalRun )
+: iTestWrapper ( aTestWrapper ),
+iNormalRun ( aNormalRun )
+ {
+
+ }
+
+CInetUriListTestsBase::~CInetUriListTestsBase ()
+ {
+ iInetUriList.Close ();
+ }
+
+void CInetUriListTestsBase::ConstructL ()
+ {
+ iInetUriList.OpenL ();
+ }
+
+RInetUri CInetUriListTestsBase::CreateNewUriL ( const TDesC8& aUri, TServiceType aServiceType, TListType aListType )
+ {
+ RInetUri myInetUri;
+ CleanupClosePushL ( myInetUri );
+ myInetUri.CreateL ( aUri, aServiceType, aListType );
+ CleanupStack::Pop (); // myInetUri
+ return myInetUri;
+ }
+
+void CInetUriListTestsBase::RunTestsL ()
+ {
+ if ( iNormalRun )
+ {
+ DoCleanupL ();
+ DoOperationL ();
+ }
+ else
+ {
+ TInt ret = KErrNoMemory;
+ TInt failAt = 0;
+ while( ret != KErrNone )
+ {
+ DoCleanupL ();
+ failAt++;
+ iTestWrapper.Tester().Printf( _L( "Test step: %d\n" ), failAt );
+ __UHEAP_RESET;
+ __UHEAP_SETFAIL( RHeap::EDeterministic, failAt );
+ TInt countBefore = User::CountAllocCells();
+
+ TRAP ( ret, DoOperationL () );
+
+ TInt countAfter = User::CountAllocCells();
+ __UHEAP_RESET;
+ if ( countBefore != countAfter )
+ {
+ iTestWrapper.Tester().Printf ( _L ("OOM test failed at iteration %d"), failAt );
+ break;
+ }
+ }
+ iTestWrapper.Tester().Printf ( _L ("OOM test has been successfully completed. Total iterations: %d"), failAt );
+ }
+ }
+// -----------------------
+
+CInetUriListStorageTests* CInetUriListStorageTests::NewL ( CTestWrapper& aTestWrapper, TBool aNormalRun )
+ {
+ CInetUriListStorageTests* self = new ( ELeave )CInetUriListStorageTests ( aTestWrapper, aNormalRun );
+ CleanupStack::PushL ( self );
+ self->ConstructL ();
+ CleanupStack::Pop ();
+ return self;
+ }
+
+CInetUriListStorageTests::~CInetUriListStorageTests ()
+ {
+
+ }
+
+CInetUriListStorageTests::CInetUriListStorageTests ( CTestWrapper& aTestWrapper, TBool aNormalRun )
+: CInetUriListTestsBase ( aTestWrapper, aNormalRun )
+ {
+
+ }
+
+void CInetUriListStorageTests::DoOperationL ()
+ {
+ iTestWrapper.SetFile ( _L ("tineturilisttests.cpp") );
+ AddTestsL ();
+ GetListTypeL ();
+ UpdateTestsL ();
+ RemoveTestsL ();
+ SameUriDiffServiceTypeTestsL ();
+ AddFewMoreUrisL ();
+ }
+
+void CInetUriListStorageTests::DoCleanupL ()
+ {
+ CInetUriListCleanup* listCleanup = CInetUriListCleanup::NewL (iTestWrapper);
+ CleanupStack::PushL ( listCleanup );
+ listCleanup->DoOperationL ();
+ CleanupStack::PopAndDestroy (); // listCleanup
+ }
+
+void CInetUriListStorageTests::AddTestsL ()
+ {
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "URI add tests" ) );
+ // Create a new uri
+ RInetUri myInetUri = CreateNewUriL ( KTestUri(), InetUriList::EWapPush, InetUriList::EWhiteList );
+ CleanupClosePushL ( myInetUri );
+ myInetUri.SetFavouriteNameL ( KUriFavouriteName() );
+
+ // Add the uri
+ TRAPD ( err, iInetUriList.AddL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TESTE( err==KErrNone, err );
+
+ // Create another uri
+ RInetUri myInetUri2 = CreateNewUriL ( KTestUri2(), InetUriList::EWapPush, InetUriList::EWhiteList );
+ CleanupClosePushL ( myInetUri2 );
+
+ // Add the uri
+ TRAP ( err, iInetUriList.AddL ( myInetUri2 ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TESTE( err==KErrNone, err );
+
+ TRAP ( err, iInetUriList.AddL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TESTE( err==InetUriList::KErrUriAlreadyExists, err );
+
+ // Create another uri
+ RInetUri myInetUri3 = CreateNewUriL ( KTestUri3(), InetUriList::EWapPush, InetUriList::EBlackList );
+ CleanupClosePushL ( myInetUri3 );
+
+ // Add the uri
+ TRAP ( err, iInetUriList.AddL ( myInetUri3 ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TESTE( err==KErrNone, err );
+
+ TInt count = iInetUriList.Count ( InetUriList::EWapPush, InetUriList::EWhiteList );
+ // 2 URI has been added
+ iTestWrapper.TEST( count == 2 );
+
+ CleanupStack::PopAndDestroy (3); // inetUri, inetUri2, inetUri3
+
+
+ count = iInetUriList.Count ( InetUriList::EWapPush, InetUriList::EWhiteList );
+ // 2 URI has been added
+ iTestWrapper.TEST( count == 2 );
+ count = iInetUriList.Count ( InetUriList::EWapPush, InetUriList::EBlackList );
+ // 2 URI has been added
+ iTestWrapper.TEST( count == 1 );
+
+ }
+
+void CInetUriListStorageTests::RemoveTestsL ()
+ {
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "URI remove test" ) );
+ RInetUri myInetUri = iInetUriList.OpenInetUriL ( KTestUri2(), InetUriList::EWapPush );
+ CleanupClosePushL ( myInetUri );
+ TRAPD ( err, iInetUriList.RemoveL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+
+ // Try to update. Must return KErrNotFound
+ TRAP ( err, iInetUriList.UpdateL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == InetUriList::KErrUriNotFound );
+
+ CleanupStack::PopAndDestroy ( &myInetUri );
+
+ // Open the same URI
+ TRAP ( err, myInetUri = iInetUriList.OpenInetUriL ( KTestUri2(), InetUriList::EWapPush ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == InetUriList::KErrUriNotFound );
+
+ // Now we are having only 1 URI in whitelist and blacklist
+ TInt count = iInetUriList.Count ( InetUriList::EWapPush, InetUriList::EWhiteList );
+ // 1 URI has been added
+ iTestWrapper.TEST( count == 1 );
+ count = iInetUriList.Count ( InetUriList::EWapPush, InetUriList::EBlackList );
+ // 1 URI has been added
+ iTestWrapper.TEST( count == 1 );
+ }
+
+void CInetUriListStorageTests::UpdateTestsL ()
+ {
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "URI update test" ) );
+ RInetUri myInetUri = iInetUriList.OpenInetUriL ( KTestUri2(), InetUriList::EWapPush );
+ CleanupClosePushL ( myInetUri );
+ // Update list type
+ myInetUri.SetListType ( InetUriList::EBlackList );
+ TRAPD ( err, iInetUriList.UpdateL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TESTE( err==KErrNone, err );
+ CleanupStack::PopAndDestroy (&myInetUri); // myInetUri
+
+ // Check list type is updated proeprly
+ myInetUri = iInetUriList.OpenInetUriL ( KTestUri2(), InetUriList::EWapPush );
+ CleanupClosePushL ( myInetUri );
+ iTestWrapper.TEST ( myInetUri.ListType() == InetUriList::EBlackList );
+ // Update favourite name
+ myInetUri.SetFavouriteNameL ( KUriFavouriteName2() );
+ TRAP ( err, iInetUriList.UpdateL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TESTE( err==KErrNone, err );
+ CleanupStack::PopAndDestroy (); // myInetUri
+
+ // Open again and see favourite name is updated properly
+ myInetUri = iInetUriList.OpenInetUriL ( KTestUri2(), InetUriList::EWapPush );
+ CleanupClosePushL ( myInetUri );
+ iTestWrapper.TEST ( myInetUri.FavouriteName().Compare ( KUriFavouriteName2() ) == 0 );
+ CleanupStack::PopAndDestroy (); // myInetUri
+
+ // Now we are having 1 URI in whitelist and 2 URI in blacklist
+ TInt count = iInetUriList.Count ( InetUriList::EWapPush, InetUriList::EWhiteList );
+ // 2 URI has been added
+ iTestWrapper.TEST( count == 1 );
+ count = iInetUriList.Count ( InetUriList::EWapPush, InetUriList::EBlackList );
+ // 2 URI has been added
+ iTestWrapper.TEST( count == 2 );
+
+ }
+
+void CInetUriListStorageTests::GetListTypeL ()
+ {
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Retrieve URI list type" ) );
+ InetUriList::TListType listType;
+ TInt err = iInetUriList.GetListType ( KTestUri(), InetUriList::EWapPush, listType );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ iTestWrapper.TEST ( listType == InetUriList::EWhiteList );
+
+ err = iInetUriList.GetListType ( KTestUri3(), InetUriList::EWapPush, listType );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ iTestWrapper.TEST ( listType == InetUriList::EBlackList );
+
+ err = iInetUriList.GetListType ( KUnknownUri(), InetUriList::EWapPush, listType );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == InetUriList::KErrUriNotFound );
+
+ // Open an invalid URI
+ RInetUri myInetUri;
+ TRAP ( err, myInetUri = iInetUriList.OpenInetUriL ( KUnknownUri(), EWapPush ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == InetUriList::KErrUriNotFound );
+ }
+
+void CInetUriListStorageTests::SameUriDiffServiceTypeTestsL ()
+ {
+ RInetUri myInetUri = CreateNewUriL ( KTestUri4(), InetUriList::EWapPush, InetUriList::EWhiteList );
+ CleanupClosePushL ( myInetUri );
+ RInetUri myInetUri2 = CreateNewUriL ( KTestUri4(), InetUriList::EBrowser, InetUriList::EWhiteList );
+ CleanupClosePushL ( myInetUri2 );
+
+ // Add the 2 URIs
+ TRAPD ( err, iInetUriList.AddL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ TRAP ( err, iInetUriList.AddL ( myInetUri2 ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+
+ CleanupStack::PopAndDestroy (2); // myInetUri, myInetUri2
+
+ // Now open the URI
+ TRAP ( err, myInetUri = iInetUriList.OpenInetUriL ( KTestUri4(), InetUriList::EWapPush ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ CleanupClosePushL ( myInetUri );
+ // Remove the URI
+ TRAP ( err, iInetUriList.RemoveL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ CleanupStack::PopAndDestroy ( &myInetUri );
+
+ TRAP ( err, myInetUri = iInetUriList.OpenInetUriL ( KTestUri4(), InetUriList::EWapPush ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == InetUriList::KErrUriNotFound );
+
+ TRAP ( err, myInetUri = iInetUriList.OpenInetUriL ( KTestUri4(), InetUriList::EBrowser ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ myInetUri.Close ();
+
+ // Now we are having 1 URI in Browser Service Type in whitelist
+ TInt count = iInetUriList.Count ( InetUriList::EBrowser, InetUriList::EWhiteList );
+ // 1 URI has been added
+ iTestWrapper.TEST( count == 1 );
+
+ // Add few more URIs in Browser service type 1 in BL and 1 in WL
+ myInetUri = CreateNewUriL ( KTestUri5(), InetUriList::EBrowser, InetUriList::EBlackList );
+ CleanupClosePushL ( myInetUri );
+ myInetUri2 = CreateNewUriL ( KTestUri6(), InetUriList::EBrowser, InetUriList::EWhiteList );
+ CleanupClosePushL ( myInetUri2 );
+ myInetUri2.SetFavouriteNameL ( KUriFavouriteName3() );
+
+ TRAP ( err, iInetUriList.AddL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ TRAP ( err, iInetUriList.AddL ( myInetUri2 ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ CleanupStack::PopAndDestroy ( 2 ); // myInetUri, myInetUri2
+ }
+
+void CInetUriListStorageTests::AddFewMoreUrisL ()
+ {
+ RInetUri myInetUri = CreateNewUriL ( KTestUri7(), EBrowser, EWhiteList );
+ CleanupClosePushL ( myInetUri );
+ RInetUri myInetUri2 = CreateNewUriL ( KTestUri8(), EBrowser, EWhiteList );
+ CleanupClosePushL ( myInetUri2 );
+ RInetUri myInetUri3 = CreateNewUriL ( KTestUri9(), EBrowser, EBlackList );
+ CleanupClosePushL ( myInetUri3 );
+ RInetUri myInetUri4 = CreateNewUriL ( KTestUri10(), EBrowser, EBlackList );
+ CleanupClosePushL ( myInetUri4 );
+ RInetUri myInetUri5 = CreateNewUriL ( KTestUri11(), EBrowser, EBlackList );
+ CleanupClosePushL ( myInetUri5 );
+
+ TRAPD ( err, iInetUriList.AddL ( myInetUri ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ TRAP ( err, iInetUriList.AddL ( myInetUri2 ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ TRAP ( err, iInetUriList.AddL ( myInetUri3 ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ TRAP ( err, iInetUriList.AddL ( myInetUri4 ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+ TRAP ( err, iInetUriList.AddL ( myInetUri5 ) );
+ __LEAVEIFOOM__
+ iTestWrapper.TEST ( err == KErrNone );
+
+ CleanupStack::PopAndDestroy (5); // myInetUri ... myInetUri4
+ }
+
+
+
+// -------------------------
+
+CInetUriListQuery* CInetUriListQuery::NewLC ( CTestWrapper& aTest, TBool aNormalRun )
+ {
+ CInetUriListQuery* self = new (ELeave)CInetUriListQuery ( aTest, aNormalRun );
+ CleanupStack::PushL ( self );
+ self->ConstructL ();
+ return self;
+ }
+
+
+CInetUriListQuery::CInetUriListQuery ( CTestWrapper& aTest, TBool aNormalRun )
+: CInetUriListTestsBase ( aTest, aNormalRun )
+ {
+
+ }
+
+
+CInetUriListQuery::~CInetUriListQuery ()
+ {
+ Cleanup ();
+ }
+
+void CInetUriListQuery::DoOperationL ()
+ {
+ TRAPD ( err, QueryListL() );
+ Cleanup ();
+ User::LeaveIfError ( err );
+ TRAPD ( tlderr, QueryTldListL());
+ User::LeaveIfError ( tlderr );
+ }
+
+void CInetUriListQuery::QueryListL ()
+ {
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with ServiceType & ListType - Browser & Whitelist") );
+ // Generate the expected URIs for this query
+ AppendExpectedUriL ( KTestUri4(), EBrowser );
+ AppendExpectedUriL ( KTestUri6(), EBrowser );
+ AppendExpectedUriL ( KTestUri7(), EBrowser );
+ AppendExpectedUriL ( KTestUri8(), EBrowser );
+ TQueryArgs args ( InetUriList::EBrowser, InetUriList::EWhiteList );
+ DoQueryL ( args );
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with ServiceType & ListType - Browser & Blacklist") );
+ AppendExpectedUriL ( KTestUri5(), EBrowser );
+ AppendExpectedUriL ( KTestUri9(), EBrowser );
+ AppendExpectedUriL ( KTestUri10(), EBrowser );
+ AppendExpectedUriL ( KTestUri11(), EBrowser );
+ TQueryArgs args2 ( InetUriList::EBrowser, InetUriList::EBlackList );
+ DoQueryL ( args2 );
+
+ // Do query operation with exact path match and a list type
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with exact path match & ListType") );
+ AppendExpectedUriL ( KTestUri6(), EBrowser );
+ const TPtrC8 uri ( KTestUri6() );
+ TQueryArgs args3 ( &uri, EBrowser, EWhiteList, EExactPath );
+ DoQueryL ( args3 );
+
+ // Do query operation with partial suffix path match and a list type
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with partial suffix path match & ListType") );
+ const TPtrC8 uri2 ( KPartialPathSuffixUri() );
+ AppendExpectedUriL ( KTestUri4(), EBrowser );
+ AppendExpectedUriL ( KTestUri6(), EBrowser );
+ TQueryArgs args4 ( &uri2, EBrowser, EWhiteList, EPartialSuffixPath );
+ DoQueryL ( args4 );
+
+ // Do query operation with partial prefix path match and a list type
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with partial prefix path match & ListType") );
+ AppendExpectedUriL ( KTestUri5(), EBrowser );
+ const TPtrC8 uri3 ( KPartialPathPrefixUri() );
+ TQueryArgs args5 ( &uri3, EBrowser, EBlackList, EPartialPrefixPath );
+ DoQueryL ( args5 );
+
+ // Do query operation with partial suffix path match and without a list type
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with partial suffix path match & without ListType") );
+ AppendExpectedUriL ( KTestUri4(), EBrowser );
+ AppendExpectedUriL ( KTestUri5(), EBrowser );
+ AppendExpectedUriL ( KTestUri6(), EBrowser );
+ const TPtrC8 uri4 ( KPartialPathSuffixUri() );
+ TQueryArgs args6 ( &uri4, EBrowser, EPartialSuffixPath );
+ DoQueryL ( args6 );
+
+ // Do query operation with partial prefix path match and without a list type
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with partial prefix path match & without ListType") );
+ AppendExpectedUriL ( KTestUri5(), EBrowser );
+ const TPtrC8 uri5 ( KPartialPathPrefixUri() );
+ TQueryArgs args7 ( &uri5, EBrowser, EPartialPrefixPath );
+ DoQueryL ( args7 );
+
+ // Do a domain search with List type - 2 in whitelist & 3 in blacklist for mydomain.com
+ // Domain search with servicetype & listtype ( Browser & Whitelist )
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with domain match with ListType - WhiteList") );
+ const TPtrC8 uri6 ( KDomainSearchStr() );
+ AppendExpectedUriL ( KTestUri7(), EBrowser );
+ AppendExpectedUriL ( KTestUri8(), EBrowser );
+ TQueryArgs args8 ( &uri6, EBrowser, EWhiteList, EDomain );
+ DoQueryL ( args8 );
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with domain match with ListType - BlackList") );
+ const TPtrC8 uri7 ( KDomainSearchStr() );
+ AppendExpectedUriL ( KTestUri9(), EBrowser );
+ AppendExpectedUriL ( KTestUri10(), EBrowser );
+ AppendExpectedUriL ( KTestUri11(), EBrowser );
+ TQueryArgs args9 ( &uri7, EBrowser, EBlackList, EDomain );
+ DoQueryL ( args9 );
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query URIs with domain match with no ListType") );
+ const TPtrC8 uri8 ( KDomainSearchStr() );
+ AppendExpectedUriL ( KTestUri7(), EBrowser );
+ AppendExpectedUriL ( KTestUri8(), EBrowser );
+ AppendExpectedUriL ( KTestUri9(), EBrowser );
+ AppendExpectedUriL ( KTestUri10(), EBrowser );
+ AppendExpectedUriL ( KTestUri11(), EBrowser );
+ TQueryArgs args10 ( &uri8, EBrowser, EDomain );
+ DoQueryL ( args10 );
+ }
+
+void CInetUriListQuery::DoQueryL ( TQueryArgs aArgs )
+ {
+ iInetUriList.QueryUriL ( aArgs, this );
+ MatchQueryResults ();
+ Cleanup ();
+ }
+
+void CInetUriListQuery::QueryTldListL()
+ {
+ DoQueryPolicyL();
+ DoQueryListL();
+ }
+
+void CInetUriListQuery::DoQueryPolicyL()
+ {
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch WhiteList data") );
+ const TPtrC8 tlduri1 ( KTldTestUri1() );
+ TPolicyQueryArgs queryArg1( &tlduri1, EWhiteList, EPolicyCharSet);
+ TQueryResults PolicyDataArg1;
+ DoQueryPolcydataL(queryArg1, PolicyDataArg1);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch BlackList data") );
+ const TPtrC8 tlduri2 ( KTldTestUri2() );
+ TPolicyQueryArgs queryArg2( &tlduri2, EBlackList, EPolicyCharSet);
+ TQueryResults PolicyDataArg2;
+ DoQueryPolcydataL(queryArg2, PolicyDataArg2);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch WhiteList data") );
+ const TPtrC8 tlduri3 ( KTldTestUri3() );
+ TPolicyQueryArgs queryArg3( &tlduri3, EWhiteList, EPolicyCharSet);
+ TQueryResults PolicyDataArg3;
+ DoQueryPolcydataL(queryArg3, PolicyDataArg3);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch BlackList data") );
+ const TPtrC8 tlduri4 ( KTldTestUri4() );
+ TPolicyQueryArgs queryArg4( &tlduri4, EBlackList, EPolicyCharSet);
+ TQueryResults PolicyDataArg4;
+ DoQueryPolcydataL(queryArg4, PolicyDataArg4);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch WhiteList data") );
+ const TPtrC8 tlduri5 ( KTldTestUri5() );
+ TPolicyQueryArgs queryArg5( &tlduri5, EWhiteList, EPolicyCharSet);
+ TQueryResults PolicyDataArg5;
+ DoQueryPolcydataL(queryArg5, PolicyDataArg5);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch BlackList data") );
+ const TPtrC8 tlduri6 ( KTldTestUri6() );
+ TPolicyQueryArgs queryArg6( &tlduri6, EBlackList, EPolicyCharSet);
+ TQueryResults PolicyDataArg6;
+ DoQueryPolcydataL(queryArg6, PolicyDataArg6);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch WhiteList data") );
+ const TPtrC8 tlduri7 ( KTldTestUri7() );
+ TPolicyQueryArgs queryArg7( &tlduri7, EWhiteList, EPolicyCharSet);
+ TQueryResults PolicyDataArg7;
+ DoQueryPolcydataL(queryArg7, PolicyDataArg7);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch BlackList data") );
+ const TPtrC8 tlduri8 ( KTldTestUri7() );
+ TPolicyQueryArgs queryArg8( &tlduri8, EBlackList, EPolicyCharSet);
+ TQueryResults PolicyDataArg8;
+ DoQueryPolcydataL(queryArg8, PolicyDataArg8);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch WhiteList data") );
+ const TPtrC8 tlduri9 ( KTldTestUri8() );
+ TPolicyQueryArgs queryArg9( &tlduri9, EWhiteList, EPolicyCharSet);
+ TQueryResults PolicyDataArg9;
+ DoQueryPolcydataL(queryArg9, PolicyDataArg9);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri, ListType and TldQueryType -- Fetch BlackList data") );
+ const TPtrC8 tlduri10 ( KTldTestUri8() );
+ TPolicyQueryArgs queryArg10( &tlduri10, EBlackList, EPolicyCharSet);
+ TQueryResults PolicyDataArg10;
+ DoQueryPolcydataL(queryArg10, PolicyDataArg10);
+
+ //Negative tests
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs without Uri -- Negative test") );
+ TPolicyQueryArgs queryArg11( EBlackList, EPolicyCharSet);
+ TQueryResults PolicyDataArg11;
+ DoQueryPolcydataL(queryArg11, PolicyDataArg11);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs without List Type and TldQueryType -- Negative test") );
+ const TPtrC8 tlduri12 ( KTldTestUri8() );
+ TPolicyQueryArgs queryArg12( &tlduri12 );
+ TQueryResults PolicyDataArg12;
+ DoQueryPolcydataL(queryArg12, PolicyDataArg12);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs without URI & List Type -- Negative test") );
+ TPolicyQueryArgs queryArg13( EPolicyCharSet );
+ TQueryResults PolicyDataArg13;
+ DoQueryPolcydataL(queryArg13, PolicyDataArg13);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs without URI & TldQueryType -- Negative test") );
+ TPolicyQueryArgs queryArg14( EBlackList );
+ TQueryResults PolicyDataArg14;
+ DoQueryPolcydataL(queryArg14, PolicyDataArg14);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs without TldQueryType -- Negative test") );
+ const TPtrC8 tlduri15 ( KTldTestUri8() );
+ TPolicyQueryArgs queryArg15( &tlduri15, EBlackList );
+ TQueryResults PolicyDataArg15;
+ DoQueryPolcydataL(queryArg15, PolicyDataArg15);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs without ListType -- Negative test") );
+ const TPtrC8 tlduri16 ( KTldTestUri8() );
+ TPolicyQueryArgs queryArg16( &tlduri16, EPolicyCharSet );
+ TQueryResults PolicyDataArg16;
+ DoQueryPolcydataL(queryArg16, PolicyDataArg16);
+ }
+
+void CInetUriListQuery::DoQueryListL()
+ {
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri and TldQueryType -- Gets White/Black list Host") );
+ const TPtrC8 tldlisturi1 ( KTldTestUri1() );
+ TPolicyQueryArgs query1( &tldlisturi1, EPolicyListType);
+ TQueryResults resultList1;
+ DoQueryTldListInfoL(query1, resultList1);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri and TldQueryType -- Gets White/Black list Host") );
+ const TPtrC8 tldlisturi2 ( KTldTestUri2() );
+ TPolicyQueryArgs query2( &tldlisturi2, EPolicyListType);
+ TQueryResults resultList2;
+ DoQueryTldListInfoL(query2, resultList2);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri and TldQueryType -- Gets White/Black list Host") );
+ const TPtrC8 tldlisturi3 ( KTldTestUri3() );
+ TPolicyQueryArgs query3( &tldlisturi3, EPolicyListType);
+ TQueryResults resultList3;
+ DoQueryTldListInfoL(query3, resultList3);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri and TldQueryType -- Gets White/Black list Host") );
+ const TPtrC8 tldlisturi4 ( KTldTestUri4() );
+ TPolicyQueryArgs query4( &tldlisturi4, EPolicyListType);
+ TQueryResults resultList4;
+ DoQueryTldListInfoL(query4, resultList4);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri and TldQueryType -- Gets White/Black list Host") );
+ const TPtrC8 tldlisturi5 ( KTldTestUri5() );
+ TPolicyQueryArgs query5( &tldlisturi5, EPolicyListType);
+ TQueryResults resultList5;
+ DoQueryTldListInfoL(query5, resultList5);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri and TldQueryType -- Gets White/Black list Host") );
+ const TPtrC8 tldlisturi6 ( KTldTestUri6() );
+ TPolicyQueryArgs query6( &tldlisturi6, EPolicyListType);
+ TQueryResults resultList6;
+ DoQueryTldListInfoL(query6, resultList6);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri and TldQueryType -- Gets White/Black list Host") );
+ const TPtrC8 tldlisturi7 ( KTldTestUri7() );
+ TPolicyQueryArgs query7( &tldlisturi7, EPolicyListType);
+ TQueryResults resultList7;
+ DoQueryTldListInfoL(query7, resultList7);
+
+ __PRINTIFNOTOOM__
+ iTestWrapper.Next ( _L ( "Query TLD URIs with Uri and TldQueryType -- Gets White/Black list Host") );
+ const TPtrC8 tldlisturi8 ( KTldTestUri8() );
+ TPolicyQueryArgs query8( &tldlisturi8, EPolicyListType);
+ TQueryResults resultList8;
+ DoQueryTldListInfoL(query8, resultList8);
+ }
+
+/**
+Tests Fetching Policy data for given Uri
+*/
+void CInetUriListQuery::DoQueryPolcydataL ( TPolicyQueryArgs aArgs, TQueryResults aResults )
+ {
+ TInt error(KErrNone);
+ TRAP( error, iInetUriList.QueryTldInfoL ( aArgs, aResults ) );
+ if(error == KErrNone )
+ {
+ HBufC8* policyData = aResults.CharsetL();
+ delete policyData;
+ }
+ iTestWrapper.TEST (ETrue);
+ }
+
+/**
+Tests Fetching List type of given Uri
+*/
+void CInetUriListQuery::DoQueryTldListInfoL ( TPolicyQueryArgs aArgs, TQueryResults aResults )
+ {
+ TInt error(KErrNone);
+ TRAP( error, iInetUriList.QueryTldInfoL ( aArgs, aResults ) );
+ if(error == KErrNone )
+ {
+ InetUriList::TListType listType = aResults.ListType();
+ }
+ iTestWrapper.TEST (ETrue);
+ }
+
+TBool CInetUriListQuery::OnQueryResultsL ( RInetUri aUri )
+ {
+ TInt count = iResults.Count ();
+ CleanupClosePushL ( aUri );
+ iResults.AppendL ( aUri );
+ CleanupStack::Pop (); // aUri
+ return ETrue;
+ }
+
+void CInetUriListQuery::MatchQueryResults ()
+ {
+ iTestWrapper.TEST ( iExpectedResults.Count() == iResults.Count() );
+ }
+
+void CInetUriListQuery::Cleanup ()
+ {
+ ClearArray ( iResults );
+ ClearArray ( iExpectedResults );
+ }
+
+void CInetUriListQuery::ClearArray ( QueryResultsArray& aUriArray )
+ {
+ TInt count = aUriArray.Count ();
+ while ( count > 0 )
+ {
+ aUriArray[--count].Close ();
+ aUriArray.Remove (count);
+ }
+ aUriArray.Reset ();
+ TInt count2 = aUriArray.Count ();
+ }
+
+void CInetUriListQuery::AppendExpectedUriL ( const TDesC8& aUri, TServiceType aServiceType )
+ {
+ RInetUri myInetUri = iInetUriList.OpenInetUriL ( aUri, aServiceType );
+ CleanupClosePushL ( myInetUri );
+ iExpectedResults.AppendL ( myInetUri );
+ CleanupStack::Pop ();
+ }
+
+void CInetUriListQuery::DoCleanupL ()
+ {
+ Cleanup ();
+ }
+
+// -----------------------------------------------------
+
+CInetUriListCleanup* CInetUriListCleanup::NewL ( CTestWrapper& aTest )
+ {
+ CInetUriListCleanup* self = new ( ELeave )CInetUriListCleanup ( aTest );
+ CleanupStack::PushL ( self );
+ self->ConstructL ();
+ CleanupStack::Pop ();
+ return self;
+ }
+
+CInetUriListCleanup::~CInetUriListCleanup ()
+ {
+
+ }
+
+CInetUriListCleanup::CInetUriListCleanup ( CTestWrapper& aTest )
+: CInetUriListTestsBase ( aTest, ETrue )
+ {
+
+ }
+
+TBool CInetUriListCleanup::OnQueryResultsL ( RInetUri aUri )
+ {
+ CleanupClosePushL ( aUri );
+ iInetUriList.RemoveL ( aUri );
+ CleanupStack::PopAndDestroy (); // aUri
+ return ETrue;
+ }
+
+void CInetUriListCleanup::DoOperationL ()
+ {
+ TQueryArgs args ( EBrowser );
+ iInetUriList.QueryUriL ( args, this );
+ TQueryArgs args2 ( EWapPush );
+ iInetUriList.QueryUriL ( args2, this );
+ }
+
+void CInetUriListCleanup::DoCleanupL ()
+ {
+ // Do nothing
+ }
+
+// -----------------------------------------------------