--- a/buildverification/autosmoketest/contacts/src/TestContactsAddEntries.cpp Fri Jun 11 16:24:17 2010 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,408 +0,0 @@
-// Copyright (c) 2004-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:
-// This contains CTestContactsAddEntries
-//
-//
-
-// Epoc include
-#include <test/testexecutelog.h>
-
-// User include
-#include "TestContactsAddEntries.h"
-#include "TestContact.h"
-
-/*@{*/
-// Literal constants
-_LIT(KCardTemplateName, "TestTemplate");
-_LIT(KCount, "count");
-_LIT(KFirstName, "firstname%d");
-_LIT(KLastName, "lastname%d");
-_LIT(KCompanyName, "company%d");
-_LIT(KJobTitle, "job%d");
-_LIT(KWorkPhone, "workphone%d");
-_LIT(KWorkMobile, "workmobile%d");
-_LIT(KHomePhone, "homephone%d");
-_LIT(KHomeMobile, "homemobile%d");
-_LIT(KFax, "fax%d");
-_LIT(KWorkEmailAddress, "workemail%d");
-_LIT(KInternetAddress, "internet%d");
-_LIT(KStreet, "street%d");
-_LIT(KTown, "town%d");
-_LIT(KCounty, "county%d");
-_LIT(KPostCode, "postcode%d");
-_LIT(KCountry, "country%d");
-_LIT(KNotes, "notes%d");
-_LIT(KNickName, "nickName%d");
-_LIT(KPictureName, "picturename%d");
-_LIT(KGroupName, "groupname%d");
-_LIT(KTemplateName, "templatename%d");
-_LIT(KOneFieldTemplate, "OneFieldTemplate");
-/*@}*/
-
-
-CTestContactsAddEntries::CTestContactsAddEntries()
-/**
-Default Constructor
- */
- {
- SetTestStepName(_L("AddEntries"));
- }
-
-CTestContactsAddEntries::~CTestContactsAddEntries()
-/**
-Destructor
- */
- {
- }
-
-// Each test step must supply a implementation for doTestStepL
-enum TVerdict CTestContactsAddEntries::doTestStepL()
-/**
-invoked by the test execute framework for exercising the
-functionality under test
-@return EPass: The test passed succesfully;
- EFail: The test failed;
- EInconclusive: The result of the test was inconclusive;
- ETestSuiteError: Error in the test suite;
- EAbort: The test was aborted;
- EIgnore: The test was unexecuted
-@leave system wide error codes
-*/
- {
-
- // Printing to the console and log file
- INFO_PRINTF1(_L("Contacts Add Entries Test"));
-
- OpenDatabase();
- if ( TestStepResult() == EPass )
- {
- TRAPD(r, AddEntriesL());
- if (r!=KErrNone)
- {
- ERR_PRINTF2(_L("Test step failed with error code = %d"), r);
- SetTestStepResult(EFail);
- }
- }
- CleanupDatabase();
-
- // test steps return a result
- return TestStepResult();
- }
-
-void CTestContactsAddEntries::AddEntriesL()
-/**
-This function adds contact entries to the database depending on entry type.
-If the entry contains the group name then the contact will be added to the
-particular group specified in the entry. If the entry contains the template
-name then the contact item depending on the specified template name will be
-created and added to the database.
-
-@leave system wide error code
- */
- {
- TBool groupExists = EFalse;
- TBool templateFound = EFalse;
- TInt count=1;
-
- if ( !GetIntFromConfig(ConfigSection(), KCount, count) )
- {
- count=1;
- }
-
- INFO_PRINTF2(_L("Number of Entries to Add = %d"), count);
-
- TBuf<KMaxScriptLineLength> tempStore;
- TPtrC ptrString;
-
- /*******************************************************************
- To Create a contact card template depending upon the contact item
- on which the new template's field set is based. The template name
- on which the new template is based is read from the ini file.
- *******************************************************************/
-
- for (TInt entry=0; entry<count; )
- {
- CContactItem* item = NULL;
-
- // The entry contains the template name
- tempStore.Format(KTemplateName(), ++entry);
- if (!GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("Entry %d has no Template Name"), entry);
- item = iDatabase->CreateContactCardTemplateLC(KCardTemplateName);
- }
- else
- {
- INFO_PRINTF2(_L("Template Name = %S"), &ptrString);
- CContactIdArray* templateList = NULL;
- CContactItem* tempTemplate = NULL;
-
- // Returns a copy of the database's template ID list
- templateList = iDatabase->GetCardTemplateIdListL();
- CleanupStack::PushL(templateList);
-
- // Returns the number of contact card templates that currently exist in the database.
- TInt tCount = iDatabase->TemplateCount();
- INFO_PRINTF2(_L("Number of existing templates = %d"), tCount);
-
- // Search for template in the template ID list
- for(TInt i = 0; i<tCount && templateFound == EFalse;i++)
- {
- // Reads a contact item
- tempTemplate = STATIC_CAST(CContactItem*, iDatabase->ReadContactLC((*templateList)[i]));
-
- // Gets the label for a contact card template.
- TPtrC tempLabel = STATIC_CAST(CContactCardTemplate*,tempTemplate)->GetTemplateLabelL();
-
- // Compare the template label
- if(!(tempLabel.Compare(ptrString)))
- {
- INFO_PRINTF2(_L("Template %S found"), &tempLabel);
-
- // Creates a contact card template and adds it to the database
- item = iDatabase->CreateContactCardTemplateLC(tempTemplate,tempLabel);
-
- // Compare the template label with OneFieldTemplate and add field to it.
- if(!(tempLabel.Compare(KOneFieldTemplate)))
- {
- // Allocates and constructs a contact item field
- CContactItemField* field=CContactItemField::NewLC(KStorageTypeText,KUidContactFieldGivenName);
- item->AddFieldL(*field);
- CleanupStack::Pop(field); // field
- }
- CleanupStack::Pop(item);
- templateFound = ETrue;
- }
- CleanupStack::PopAndDestroy(tempTemplate);
- }
-
- if (!templateFound)
- {
- ERR_PRINTF2(_L("Ini Template %S does not match existing templates"), &ptrString);
- SetTestStepResult(EFail);
- }
-
- // Set templateFound to false for next entry
- templateFound = EFalse;
-
- CleanupStack::PopAndDestroy(templateList);
- CleanupStack::PushL(item);
- }
-
- CTestContact* contact=CTestContact::NewLC(*item);
-
- tempStore.Format(KFirstName(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("firstname = %S"), &ptrString);
- contact->SetFirstNameL(ptrString);
- }
-
- tempStore.Format(KNickName(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("NickName = %S"), &ptrString);
- TRAPD(err, contact->SetNickNameL(ptrString));
- if ( err != KErrNone )
- {
- ERR_PRINTF2(_L("SetNickNameL Leave = %d"), err);
- SetTestStepResult(EFail);
- }
- }
-
- tempStore.Format(KLastName(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("lastname = %S"), &ptrString);
- contact->SetLastNameL(ptrString);
- }
-
- tempStore.Format(KCompanyName(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("company = %S"), &ptrString);
- contact->SetCompanyNameL(ptrString);
- }
-
- tempStore.Format(KJobTitle(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("job = %S"), &ptrString);
- contact->SetJobTitleL(ptrString);
- }
-
- tempStore.Format(KWorkPhone(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("work phone = %S"), &ptrString);
- contact->SetWorkPhoneL(ptrString);
- }
-
- tempStore.Format(KWorkMobile(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("work mobile = %S"), &ptrString);
- contact->SetWorkMobileL(ptrString);
- }
-
- tempStore.Format(KHomePhone(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("home phone = %S"), &ptrString);
- contact->SetHomePhoneL(ptrString);
- }
-
- tempStore.Format(KHomeMobile(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("home mobile = %S"), &ptrString);
- contact->SetHomeMobileL(ptrString);
- }
-
- tempStore.Format(KFax(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("fax = %S"), &ptrString);
- contact->SetFaxL(ptrString);
- }
-
- tempStore.Format(KWorkEmailAddress(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("work email = %S"), &ptrString);
- contact->SetWorkEmailAddressL(ptrString);
- }
-
- tempStore.Format(KInternetAddress(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("internet = %S"), &ptrString);
- contact->SetInternetAddressL(ptrString);
- }
-
- tempStore.Format(KStreet(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("street = %S"), &ptrString);
- contact->SetStreetL(ptrString);
- }
-
- tempStore.Format(KTown(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("town = %S"), &ptrString);
- contact->SetTownL(ptrString);
- }
-
- tempStore.Format(KCounty(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("county = %S"), &ptrString);
- contact->SetCountyL(ptrString);
- }
-
- tempStore.Format(KPostCode(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("post code = %S"), &ptrString);
- contact->SetPostCodeL(ptrString);
- }
-
- tempStore.Format(KCountry(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("country = %S"), &ptrString);
- contact->SetCountryL(ptrString);
- }
-
- tempStore.Format(KNotes(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("notes = %S"), &ptrString);
- contact->SetNotesL(ptrString);
- }
-
- tempStore.Format(KPictureName(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("Picture Name = %S"), &ptrString);
-
- HBufC8* pictureName8 = HBufC8::NewLC(ptrString.Length());
- pictureName8->Des().Copy(ptrString);
-
- contact->SetPictureL(*pictureName8);
-
- CleanupStack::PopAndDestroy(pictureName8);
- }
-
- tempStore.Format(KGroupName(), entry);
- if (GetStringFromConfig(ConfigSection(), tempStore, ptrString))
- {
- INFO_PRINTF2(_L("Group Name = %S"), &ptrString);
-
- // Flag for adding contacts to group.
- groupExists = ETrue;
- }
-
- const TContactItemId id = iDatabase->AddNewContactL(contact->ContactItem());
-
- /********************************************************************
- This is for adding the contact entry to the specified group.
- ********************************************************************/
- if(groupExists)
- {
- INFO_PRINTF1(_L("Adding Item "));
- CContactIdArray* groupList = NULL;
-
- // Returns a copy of the database's group ID list
- groupList = iDatabase->GetGroupIdListL();
- CleanupStack::PushL(groupList);
-
- // Returns the number of groups that currently exist in the database
- TInt groupCount = iDatabase->GroupCount();
-
-
- // Search for the group
- for(TInt i = 0; i<groupCount;i++)
- {
- // Reads a contact item
- CContactGroup* group = STATIC_CAST(CContactGroup*, iDatabase->ReadContactLC((*groupList)[i]));
-
- // Gets the contact item's ID.
- const TContactItemId groupId1 = group->Id();
-
- // Gets the group label.
- TPtrC label = group->GetGroupLabelL();
- // Compare the group label with group name read from ini file.
- if(!(label.Compare(ptrString)))
- {
- /**
- Sets a contact item which already exists in the database
- to be a member of a contact group
- */
- iDatabase->AddContactToGroupL(id, groupId1);
- INFO_PRINTF1(_L("Item added successfully"));
- groupExists = EFalse;
- }
- CleanupStack::PopAndDestroy(group);
-
- }
- CleanupStack::PopAndDestroy(groupList);
- }
-
- CleanupStack::PopAndDestroy(contact);
- CleanupStack::PopAndDestroy(item);
-
- }
- }