--- a/cryptoservices/certificateandkeymgmt/tasn1/tasn1normaltest.cpp Tue Jul 21 01:04:32 2009 +0100
+++ b/cryptoservices/certificateandkeymgmt/tasn1/tasn1normaltest.cpp Thu Sep 10 14:01:51 2009 +0300
@@ -1,216 +1,215 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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:
-* ASN1TestAction.cpp: implementation of the CASN1NormalTest class.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#include "tasn1normaltest.h"
-#include "testnull.h"
-#include "testboolean.h"
-#include "testint.h"
-#include "testbigint.h"
-#include "testoctetstr.h"
-#include "testoid.h"
-#include "testinvalidoid.h"
-#include "testgeneralizedtime.h"
-#include "testsequence.h"
-#include "testexplicittag.h"
-#include "testimplicittag.h"
-#include "testoutput.h"
-#include "testbitstr.h"
-#include "t_input.h"
-
-//////////////////////////////////////////////////////////////////////
-// Construction/Destruction
-//////////////////////////////////////////////////////////////////////
-TInt CASN1NormalTest::iReportCount = 1;
-
-_LIT(KASN1TestStart, "<asn1test>");
-_LIT(KTypeStart, "<type>");
-_LIT(KIntType, "int");
-_LIT(KBigIntType, "bigint");
-_LIT(KBooleanType, "boolean");
-_LIT(KNullType, "null");
-_LIT(KExplicitTagType, "explicittag");
-_LIT(KImplicitTagType, "implicittag");
-_LIT(KGeneralizedTimeType, "generalizedtime");
-_LIT(KOctetStringType, "octetstring");
-_LIT(KObjectIDType, "objectid");
-_LIT(KInvaidObjectIDType, "invalidobjectid");
-_LIT(KSequenceType, "sequence");
-_LIT(KOutputType, "output");
-_LIT(KBitStrType, "bitstring");
-
-CASN1NormalTest::~CASN1NormalTest()
- {
- delete iTestType;
- }
-
-CASN1NormalTest::CASN1NormalTest(RFs& /*aFs*/,
- CConsoleBase& aConsole,
- Output& aOut)
-: CTestAction(aConsole, aOut), iTestType(0), iPercentReported(-1), iReportNumber(iReportCount++)
- {
- }
-
-CTestAction* CASN1NormalTest::NewL(RFs& aFs,
- CConsoleBase& aConsole,
- Output& aOut,
- const TTestActionSpec& aTestActionSpec)
- {
- CTestAction* self = CASN1NormalTest::NewLC(aFs, aConsole,
- aOut, aTestActionSpec);
- CleanupStack::Pop(self);
- return self;
- }
-
-CTestAction* CASN1NormalTest::NewLC(RFs& aFs,
- CConsoleBase& aConsole,
- Output& aOut,
- const TTestActionSpec& aTestActionSpec)
- {
- CASN1NormalTest* self = new(ELeave) CASN1NormalTest(aFs, aConsole, aOut);
- CleanupStack::PushL(self);
- self->ConstructL(aTestActionSpec);
- return self;
- }
-
-
-void CASN1NormalTest::ConstructL(const TTestActionSpec& aTestActionSpec)
- {
- CTestAction::ConstructL(aTestActionSpec);
- HBufC* body = HBufC::NewLC(aTestActionSpec.iActionBody.Length());
-
- body->Des().Copy(aTestActionSpec.iActionBody);
- TPtrC rootCert = Input::ParseElement(*body, KASN1TestStart);
- TPtrC iType = Input::ParseElement(rootCert, KTypeStart);
-
- // constucts correct class depending on string
- if(iType.CompareF(KIntType)==0)
- iTestType = CTestInt::NewL(*this);
- else if(iType.CompareF(KBigIntType)==0)
- iTestType = CTestBigInt::NewL(*this);
- else if(iType.CompareF(KBooleanType)==0)
- iTestType = CTestBoolean::NewL(*this);
- else if(iType.CompareF(KNullType)==0)
- iTestType = CTestNull::NewL(*this);
- else if(iType.CompareF(KExplicitTagType)==0)
- iTestType = CTestExplicitTag::NewL(*this);
- else if(iType.CompareF(KImplicitTagType)==0)
- iTestType = CTestImplicitTag::NewL(*this);
- else if(iType.CompareF(KGeneralizedTimeType)==0)
- iTestType = CTestGeneralizedTime::NewL(*this);
- else if(iType.CompareF(KOctetStringType)==0)
- iTestType = CTestOctetString::NewL(*this);
- else if(iType.CompareF(KObjectIDType)==0)
- iTestType = CTestOID::NewL(*this);
- else if(iType.CompareF(KSequenceType)==0)
- iTestType = CTestSequence::NewL(*this);
- else if(iType.CompareF(KOutputType)==0)
- iTestType = CTestOutput::NewL(*this);
- else if(iType.CompareF(KBitStrType)==0)
- iTestType = CTestBitStr::NewL(*this);
- else if(iType.CompareF(KInvaidObjectIDType)==0)
- iTestType = CTestInvalidOID::NewL(*this);
-
- if(iTestType)
- SetScriptError(iTestType->ConstructL(aTestActionSpec), iTestType->iSyntaxErrorDescription);
-
- CleanupStack::PopAndDestroy(); // body
- }
-
-void CASN1NormalTest::PerformAction(TRequestStatus& aStatus)
- {
- TRAPD(err, iResult = iTestType->PerformTestsL(iConsole));
- if (err==KErrNoMemory)
- User::Leave(err);
- else
- {
- iActionState = EPostrequisite;
- TRequestStatus* status = &aStatus;
- User::RequestComplete(status, err);
- }
- }
-
-
-void CASN1NormalTest::ReportProgressL(const TInt aError, const TInt aCount, const TInt aMax)
- {
- if(aMax == 0) return;
- TInt newPercentage = aCount * 100 / aMax;
-
- if (newPercentage > iPercentReported && iResult == 0)
- {
- iPercentReported = newPercentage;
-
- iConsole.Printf(_L(" %d"), iPercentReported);
-
- if (iPercentReported == 100)
- {
- iConsole.Write(_L("%"));
- iConsole.Write(_L(" Completed:\n"));
- CheckResult(aError);
- iPercentReported = -1;
- }
- }
- if(aError != 0)
- {
- iFinished = ETrue;
- iResult = EFalse;
- }
- }
-
-void CASN1NormalTest::DoCheckResult(TInt aError)
- {
- if(aError == 0 && !iFinished)
- {
- iFinished = ETrue;
- iResult = ETrue;
- }
- }
-
-
-void CASN1NormalTest::DoReportAction()
- {
- HBufC *tmp = HBufC::NewMaxLC(iNameInfo->Length());
-
- // converts name to unicode (if necessary) and dumps it out to screen
- tmp->Des().Copy(*iNameInfo);
- iConsole.Printf(_L("\n"));
- iConsole.Printf(_L("Report %d - "), iReportNumber);
- iConsole.Write(*tmp);
- iConsole.Printf(_L("\n"));
-
- CleanupStack::PopAndDestroy(); // tmp
- }
-
-TBool CASN1NormalTest::TestResult(TInt /*aError*/)
- {
- return 0;
- }
-
-void CASN1NormalTest::PerformCancel()
- {
- }
-
-void CASN1NormalTest::Reset()
- {
- }
+/*
+* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "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:
+* ASN1TestAction.cpp: implementation of the CASN1NormalTest class.
+*
+*/
+
+
+/**
+ @file
+*/
+
+#include "tasn1normaltest.h"
+#include "testnull.h"
+#include "testboolean.h"
+#include "testint.h"
+#include "testbigint.h"
+#include "testoctetstr.h"
+#include "testoid.h"
+#include "testinvalidoid.h"
+#include "testgeneralizedtime.h"
+#include "testsequence.h"
+#include "testexplicittag.h"
+#include "testimplicittag.h"
+#include "testoutput.h"
+#include "testbitstr.h"
+#include "t_input.h"
+
+//////////////////////////////////////////////////////////////////////
+// Construction/Destruction
+//////////////////////////////////////////////////////////////////////
+TInt CASN1NormalTest::iReportCount = 1;
+
+_LIT(KASN1TestStart, "<asn1test>");
+_LIT(KTypeStart, "<type>");
+_LIT(KIntType, "int");
+_LIT(KBigIntType, "bigint");
+_LIT(KBooleanType, "boolean");
+_LIT(KNullType, "null");
+_LIT(KExplicitTagType, "explicittag");
+_LIT(KImplicitTagType, "implicittag");
+_LIT(KGeneralizedTimeType, "generalizedtime");
+_LIT(KOctetStringType, "octetstring");
+_LIT(KObjectIDType, "objectid");
+_LIT(KInvaidObjectIDType, "invalidobjectid");
+_LIT(KSequenceType, "sequence");
+_LIT(KOutputType, "output");
+_LIT(KBitStrType, "bitstring");
+
+CASN1NormalTest::~CASN1NormalTest()
+ {
+ delete iTestType;
+ }
+
+CASN1NormalTest::CASN1NormalTest(RFs& /*aFs*/,
+ CConsoleBase& aConsole,
+ Output& aOut)
+: CTestAction(aConsole, aOut), iTestType(0), iPercentReported(-1), iReportNumber(iReportCount++)
+ {
+ }
+
+CTestAction* CASN1NormalTest::NewL(RFs& aFs,
+ CConsoleBase& aConsole,
+ Output& aOut,
+ const TTestActionSpec& aTestActionSpec)
+ {
+ CTestAction* self = CASN1NormalTest::NewLC(aFs, aConsole,
+ aOut, aTestActionSpec);
+ CleanupStack::Pop(self);
+ return self;
+ }
+
+CTestAction* CASN1NormalTest::NewLC(RFs& aFs,
+ CConsoleBase& aConsole,
+ Output& aOut,
+ const TTestActionSpec& aTestActionSpec)
+ {
+ CASN1NormalTest* self = new(ELeave) CASN1NormalTest(aFs, aConsole, aOut);
+ CleanupStack::PushL(self);
+ self->ConstructL(aTestActionSpec);
+ return self;
+ }
+
+
+void CASN1NormalTest::ConstructL(const TTestActionSpec& aTestActionSpec)
+ {
+ CTestAction::ConstructL(aTestActionSpec);
+ HBufC* body = HBufC::NewLC(aTestActionSpec.iActionBody.Length());
+
+ body->Des().Copy(aTestActionSpec.iActionBody);
+ TPtrC rootCert = Input::ParseElement(*body, KASN1TestStart);
+ TPtrC iType = Input::ParseElement(rootCert, KTypeStart);
+
+ // constucts correct class depending on string
+ if(iType.CompareF(KIntType)==0)
+ iTestType = CTestInt::NewL(*this);
+ else if(iType.CompareF(KBigIntType)==0)
+ iTestType = CTestBigInt::NewL(*this);
+ else if(iType.CompareF(KBooleanType)==0)
+ iTestType = CTestBoolean::NewL(*this);
+ else if(iType.CompareF(KNullType)==0)
+ iTestType = CTestNull::NewL(*this);
+ else if(iType.CompareF(KExplicitTagType)==0)
+ iTestType = CTestExplicitTag::NewL(*this);
+ else if(iType.CompareF(KImplicitTagType)==0)
+ iTestType = CTestImplicitTag::NewL(*this);
+ else if(iType.CompareF(KGeneralizedTimeType)==0)
+ iTestType = CTestGeneralizedTime::NewL(*this);
+ else if(iType.CompareF(KOctetStringType)==0)
+ iTestType = CTestOctetString::NewL(*this);
+ else if(iType.CompareF(KObjectIDType)==0)
+ iTestType = CTestOID::NewL(*this);
+ else if(iType.CompareF(KSequenceType)==0)
+ iTestType = CTestSequence::NewL(*this);
+ else if(iType.CompareF(KOutputType)==0)
+ iTestType = CTestOutput::NewL(*this);
+ else if(iType.CompareF(KBitStrType)==0)
+ iTestType = CTestBitStr::NewL(*this);
+ else if(iType.CompareF(KInvaidObjectIDType)==0)
+ iTestType = CTestInvalidOID::NewL(*this);
+
+ if(iTestType)
+ SetScriptError(iTestType->ConstructL(aTestActionSpec), iTestType->iSyntaxErrorDescription);
+
+ CleanupStack::PopAndDestroy(); // body
+ }
+
+void CASN1NormalTest::PerformAction(TRequestStatus& aStatus)
+ {
+ TRAPD(err, iResult = iTestType->PerformTestsL(iConsole));
+ if (err==KErrNoMemory)
+ User::Leave(err);
+ else
+ {
+ iActionState = EPostrequisite;
+ TRequestStatus* status = &aStatus;
+ User::RequestComplete(status, err);
+ }
+ }
+
+
+void CASN1NormalTest::ReportProgressL(const TInt aError, const TInt aCount, const TInt aMax)
+ {
+ if(aMax == 0) return;
+ TInt newPercentage = aCount * 100 / aMax;
+
+ if (newPercentage > iPercentReported && iResult == 0)
+ {
+ iPercentReported = newPercentage;
+
+ iConsole.Printf(_L(" %d"), iPercentReported);
+
+ if (iPercentReported == 100)
+ {
+ iConsole.Write(_L("%"));
+ iConsole.Write(_L(" Completed:\n"));
+ CheckResult(aError);
+ iPercentReported = -1;
+ }
+ }
+ if(aError != 0)
+ {
+ iFinished = ETrue;
+ iResult = EFalse;
+ }
+ }
+
+void CASN1NormalTest::DoCheckResult(TInt aError)
+ {
+ if(aError == 0 && !iFinished)
+ {
+ iFinished = ETrue;
+ iResult = ETrue;
+ }
+ }
+
+
+void CASN1NormalTest::DoReportAction()
+ {
+ HBufC *tmp = HBufC::NewMaxLC(iNameInfo->Length());
+
+ // converts name to unicode (if necessary) and dumps it out to screen
+ tmp->Des().Copy(*iNameInfo);
+ iConsole.Printf(_L("\n"));
+ iConsole.Printf(_L("Report %d - "), iReportNumber);
+ iConsole.Write(*tmp);
+ iConsole.Printf(_L("\n"));
+
+ CleanupStack::PopAndDestroy(); // tmp
+ }
+
+TBool CASN1NormalTest::TestResult(TInt /*aError*/)
+ {
+ return 0;
+ }
+
+void CASN1NormalTest::PerformCancel()
+ {
+ }
+
+void CASN1NormalTest::Reset()
+ {
+ }
+