diff -r 000000000000 -r 3e07fef1e154 testexecfw/tef/test/regressiontest/teststep/src/readwriteconfignegstep.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testexecfw/tef/test/regressiontest/teststep/src/readwriteconfignegstep.cpp Mon Mar 08 15:03:44 2010 +0800 @@ -0,0 +1,173 @@ +/* +* 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 "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: +* Example CTestStep derived implementation +* +*/ + + + +/** + @file WriteStringStep.cpp +*/ +#include "ReadWriteConfigNegStep.h" +#include "Te_RegStepTestSuiteDefs.h" + +#define StringDefine(s) _LIT(K##s, #s) +StringDefine(IntValue); +StringDefine(BoolValue); +StringDefine(HexValue); +StringDefine(StringValue); + +CReadWriteConfigNegStep::~CReadWriteConfigNegStep() +/** + * Destructor + */ + { + } + +CReadWriteConfigNegStep::CReadWriteConfigNegStep() +/** + * Constructor + */ + { + SetTestStepName(KReadWriteConfigNegStep); + } + +TVerdict CReadWriteConfigNegStep::doTestStepPreambleL() +/** + * @return - TVerdict code + * Override of base class virtual + */ + { + // There is no initiation work so set this result to pass. + SetTestStepResult(EPass); + return TestStepResult(); + } + + +TVerdict CReadWriteConfigNegStep::doTestStepL() +/** + * @return - TVerdict code + * Override of base class pure virtual + * Our implementation only gets called if the base class doTestStepPreambleL() did + * not leave. That being the case, the current test result value will be EPass. + */ + { + INFO_PRINTF1(_L("Negative test of read/write config file.")); + SetTestStepResult(EFail); + + TBool ret = EFalse; + ret = TestInt(); + ret &= TestBool(); + ret &= TestHex(); + ret &= TestString(); + + if (ret) + { + SetTestStepResult(EPass); + } + return TestStepResult(); + } + +TVerdict CReadWriteConfigNegStep::doTestStepPostambleL() +/** + * @return - TVerdict code + * Override of base class virtual + */ + { + return TestStepResult(); + } + +TBool CReadWriteConfigNegStep::TestInt() + { + INFO_PRINTF1(_L("---Start negative test of read/write integer from/to configuration file...")); + + TInt value = 10; + TInt getValue = 0; + TBool ret = EFalse; + + if (!GetIntFromConfig(ConfigSection(), KIntValue, getValue)) + { + if (0 == ConfigSection().Length()) + { + ret = !WriteIntToConfig(ConfigSection(), KIntValue, value); + } + else + { + ret = WriteIntToConfig(ConfigSection(), KIntValue, value); + } + } + + INFO_PRINTF1(ret?_L("Test Passed!"):_L("Test Failed!")); + return ret; + } + +TBool CReadWriteConfigNegStep::TestBool() + { + INFO_PRINTF1(_L("---Start negative test of read/write bool from/to configuration file...")); + + TBool value = EFalse; + TBool getValue = EFalse; + TBool ret = EFalse; + + if (!GetBoolFromConfig(ConfigSection(), KBoolValue, getValue) + && !WriteBoolToConfig(ConfigSection(), KBoolValue, 10)) + { + if (0 == ConfigSection().Length()) + { + ret = !WriteBoolToConfig(ConfigSection(), KBoolValue, value); + } + else + { + ret = WriteBoolToConfig(ConfigSection(), KBoolValue, value); + } + } + + INFO_PRINTF1(ret?_L("Test Passed!"):_L("Test Failed!"));; + return ret; + } + +TBool CReadWriteConfigNegStep::TestHex() + { + INFO_PRINTF1(_L("---Start negative test of read/write hex from/to configuration file...")); + + TInt value = 0x00AB; + TInt getValue = 0; + TBool ret = EFalse; + if (!GetHexFromConfig(ConfigSection(), KHexValue, getValue)) + { + ret = (0==ConfigSection().Length()?!WriteHexToConfig(ConfigSection(), KHexValue, value):WriteHexToConfig(ConfigSection(), KHexValue, value)); + } + + INFO_PRINTF1(ret?_L("Test Passed!"):_L("Test Failed!"));; + return ret; + } + +TBool CReadWriteConfigNegStep::TestString() + { + INFO_PRINTF1(_L("---Start negative test of read/write string from/to configuration file...")); + TBool ret = EFalse; + + _LIT(KChangedString, "Changed string!"); + TPtrC getValue; + + if (!GetStringFromConfig(ConfigSection(), KStringValue, getValue)) + { + ret = (0==ConfigSection().Length()?!WriteStringToConfig(ConfigSection(), KStringValue, KChangedString()):WriteStringToConfig(ConfigSection(), KStringValue, KChangedString())); + } + + INFO_PRINTF1(ret?_L("Test Passed!"):_L("Test Failed!"));; + return ret; + }