--- a/telephonyserverplugins/simtsy/testconfigfileparser/test/t_testconfigfileparser.cpp Tue Aug 31 16:23:08 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,261 +0,0 @@
-// Copyright (c) 2001-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:
-// Tests classes defined in testconfigfileparser.h
-//
-//
-
-/**
- @file t_testconfigfileparser.cpp
- @since Hurricane
- @copyright Copyright (c) 2001 Symbian Ltd. All rights reserved.
-*/
-
-#include <autotest.h>
-#include <e32base.h>
-#include <e32test.h> //< for RTest
-#include "testconfigfileparser.h"
-#include <f32file.h>
-
-
-_LIT(KTestScriptFile, "t_testconfigfileparser.txt");
-_LIT(KTestScriptComponent, "testscripts");
-_LIT(KTestScriptComponentFull, "\\testscripts\\");
-_LIT(KTestScriptOutput, "c:\\output.txt");
-
-CAutoTest* gAutoTest;
-RTest gTest(_L("Test Config File Test"));
-
-void TestGetElementL(TInt aTestCase, const TDesC8& aInput, TChar aDel, TInt aIndex, const TDesC8& aExpected, TBool aTrimOutput=ETrue)
- {
- TPtrC8 item(KNullDesC8);
- const TInt err = CTestConfig::GetElement(aInput, aDel, aIndex, item, aTrimOutput);
-
- const TInt KPrintfMaxLen = 200;
- TBuf<KPrintfMaxLen> temp;
-
- if (aInput.Length() <= KPrintfMaxLen)
- {
- temp.Copy(aInput);
- gTest.Printf(_L("aInput=\"%S\" "), &temp);
- }
- else
- gTest.Printf(_L("aInput=TOO LONG "));
-
- gTest.Printf(_L("aIndex=%d "), aIndex);
- gTest.Printf(_L("aTimeOutput=%d "), aTrimOutput);
-
- if (aExpected.Length() <= KPrintfMaxLen)
- {
- temp.Copy(aExpected);
- gTest.Printf(_L("aExpected=\"%S\" "), &temp);
- }
- else
- gTest.Printf(_L("aExpected=TOO LONG "));
-
- if (item.Length() <= KPrintfMaxLen)
- {
- temp.Copy(item);
- gTest.Printf(_L("Get=\"%S\" "), &temp);
- }
- else
- gTest.Printf(_L("Get=TOO LONG "));
-
- gTest.Printf(_L("Err=%d\n"), err);
-
- GLOBAL_CHECKPOINT_COMPARE(err, KErrNone, _L("Error getting element"));
-
- temp.Format(_L("Element not expected [test=%d"), aTestCase);
- GLOBAL_CHECKPOINT_COMPARE(!(item == aExpected), EFalse, temp);
- }
-
-void TestGetElementL(const CTestConfig& aFile)
- {
- TInt sectionCount = aFile.Sections().Count();
-
- while (sectionCount--)
- {
- const CTestConfigSection& section = aFile[sectionCount];
-
- TInt itemCount = section.Items().Count();
-
- while (itemCount--)
- {
- const CTestConfigItem& item = section[itemCount];
- TPtrC8 output(KNullDesC8);
- aFile.GetElement(item.Value(), ',', 0, output);
- }
- }
- }
-
-void TestParseFileL()
- {
- RFs fs;
- User::LeaveIfError(fs.Connect());
- CleanupClosePushL(fs);
-
- TFindFile findFile(fs);
- _LIT(KWild, "*.txt");
-
- CDir* dirs=NULL;
- User::LeaveIfError(findFile.FindWildByDir(KWild, KTestScriptComponentFull, dirs));
-
- TInt count = dirs->Count();
-
- while (count--)
- {
- const TFileName fileName((*dirs)[count].iName);
-
- CTestConfig* file = CTestConfig::NewLC(fs, KTestScriptComponent, fileName);
-
- file->WriteFileL(KTestScriptOutput);
-
- CTestConfig* output = CTestConfig::NewLC(fs, KTestScriptComponent, KTestScriptOutput);
-
- TBool test = (*output == *file);
-
- GLOBAL_CHECKPOINT_COMPARE(!test, EFalse, _L("Output != File"));
-
- TestGetElementL(*file);
-
- CleanupStack::PopAndDestroy(output);
- CleanupStack::PopAndDestroy(file);
- }
-
- CleanupStack::PopAndDestroy(&fs);
- }
-
-const TInt del = ';';
-_LIT8(KFirst, "First");
-_LIT8(KMiddle, "Middle");
-_LIT8(KLast, "Last");
-_LIT8(KElem1, "First;Middle;Last");
-_LIT8(KElem2, " First; ;Last");
-_LIT8(KElem3, "; Middle ;Last");
-_LIT8(KElem4, "First;Middle; ");
-_LIT8(KElem5, ";;");
-
-void TestGetElementL()
- {
- TInt testCase = 0;
-
- TestGetElementL(++testCase, KElem1, del, 0, KFirst);
- TestGetElementL(++testCase, KElem1, del, 1, KMiddle);
- TestGetElementL(++testCase, KElem1, del, 2, KLast);
-
- TestGetElementL(++testCase, KElem2, del, 0, KFirst);
- TestGetElementL(++testCase, KElem2, del, 1, KNullDesC8);
- TestGetElementL(++testCase, KElem2, del, 2, KLast);
-
- TestGetElementL(++testCase, KElem3, del, 0, KNullDesC8);
- TestGetElementL(++testCase, KElem3, del, 1, KMiddle);
- TestGetElementL(++testCase, KElem3, del, 2, KLast);
-
- TestGetElementL(++testCase, KElem4, del, 0, KFirst);
- TestGetElementL(++testCase, KElem4, del, 1, KMiddle);
- TestGetElementL(++testCase, KElem4, del, 2, KNullDesC8);
-
- TestGetElementL(++testCase, KElem5, del, 0, KNullDesC8);
- TestGetElementL(++testCase, KElem5, del, 1, KNullDesC8);
- TestGetElementL(++testCase, KElem5, del, 2, KNullDesC8);
- }
-
-void PrepareBuf(TDes8& aOutput, TInt aLeadingSpaces, const TDesC8& aInput, TInt aTrailingSpaces)
- {
- const TInt KSpace = ' ';
- aOutput.Zero();
- aOutput.AppendFill(KSpace, aLeadingSpaces);
- aOutput.Append(aInput);
- aOutput.AppendFill(KSpace, aTrailingSpaces);
- }
-
-void TestGetElementWithoutTrimL()
- {
- TInt testCase = 0;
- TBuf8<32> temp;
-
- TestGetElementL(++testCase, KElem1, del, 0, KFirst, EFalse);
- TestGetElementL(++testCase, KElem1, del, 1, KMiddle, EFalse);
- TestGetElementL(++testCase, KElem1, del, 2, KLast, EFalse);
-
- PrepareBuf(temp, 4, KFirst, 0);
- TestGetElementL(++testCase, KElem2, del, 0, temp, EFalse);
- PrepareBuf(temp, 11, KNullDesC8, 0);
- TestGetElementL(++testCase, KElem2, del, 1, temp, EFalse);
- TestGetElementL(++testCase, KElem2, del, 2, KLast, EFalse);
-
- TestGetElementL(++testCase, KElem3, del, 0, KNullDesC8, EFalse);
- PrepareBuf(temp, 3, KMiddle, 7);
- TestGetElementL(++testCase, KElem3, del, 1, temp, EFalse);
- TestGetElementL(++testCase, KElem3, del, 2, KLast, EFalse);
-
- TestGetElementL(++testCase, KElem4, del, 0, KFirst, EFalse);
- TestGetElementL(++testCase, KElem4, del, 1, KMiddle, EFalse);
- PrepareBuf(temp, 5, KNullDesC8, 0);
- TestGetElementL(++testCase, KElem4, del, 2, temp, EFalse);
-
- TestGetElementL(++testCase, KElem5, del, 0, KNullDesC8, EFalse);
- TestGetElementL(++testCase, KElem5, del, 1, KNullDesC8, EFalse);
- TestGetElementL(++testCase, KElem5, del, 2, KNullDesC8, EFalse);
-
- TPtrC8 output;
- const TInt err = CTestConfig::GetElement(KNullDesC8, 0, 0, output);
- GLOBAL_CHECKPOINT(err != KErrNone);
- }
-
-
-// Set up the array of test functions, which make the API calls
-LOCAL_C const TAutoTestCase Cases[] =
- {
- {TestParseFileL,_S("Parse File")},
- {TestGetElementL,_S("Get Element")},
- {TestGetElementWithoutTrimL,_S("Get Element Without Trim")}
- };
-
-void AutoTestExecuteL()
- {
- _LIT(KDummyTests,"TestConfigFileParser_testreport.txt");
- _LIT8(KComponentInfo,"TestConfigFileParser");
- // Library defined macro
- // Uses a global pointer instance of CAutoTest
- GLOBAL_AUTOTEST_EXECUTE(Cases, KDummyTests, KComponentInfo, gTest);
- }
-
-TInt E32Main()
-/**
- * Main
- */
- {
- CTrapCleanup* cleanup = CTrapCleanup::New();
-
- __UHEAP_MARK;
-
- gTest.SetLogged(ETrue);
- gTest.Title();
- gTest.Start(_L("Starting tests..."));
-
- TRAPD(err, AutoTestExecuteL());
-
- if (err!=KErrNone)
- gTest.Printf(_L("ERROR: Leave %d\n"),err);
-
- gTest.Printf(_L("Test Complete. Press any key ...\n"));
- gTest.Getch();
- gTest.End();
- gTest.Close();
-
- __UHEAP_MARKEND;
-
- delete cleanup;
- return KErrNone;
- }