diff -r f6d3d9676ee4 -r d63d727ee0a6 baseintegtests/baseintegrationtest/testsuites/fat32/src/basetestfat32writefile.cpp --- a/baseintegtests/baseintegrationtest/testsuites/fat32/src/basetestfat32writefile.cpp Tue Dec 08 08:11:42 2009 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,474 +0,0 @@ -// Copyright (c) 2006-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: -// Performs actions related to writing a file -// -// - -#include "basetestfat32writefile.h" - -static RRawDisk TheDisk; -static RFile TheFile; - -/** -Class Constructor -*/ -CBaseTestFat32WriteFile::CBaseTestFat32WriteFile() - { - SetTestStepName(KTestStepWriteFile); - } - -/** -Class Destructor -*/ -CBaseTestFat32WriteFile::~CBaseTestFat32WriteFile() - { - } - - -/** -The function performs the following actions -1. If there is a file specified in the ini file then - -> create a file with that filename - -> Else create a file name ReadTestFile.txt -2. Get the file action required from the ini file and carry out that action - -@return EPass if test passes and EFail if test fails -*/ -TVerdict CBaseTestFat32WriteFile::doTestStepL() - { - TInt r = 0; - TInt errcode; - SetTestStepResult(EFail); - _LIT(KAction,"Action"); - TBuf<10> actionAfterCreate; - TPtrC16 action = actionAfterCreate; - _LIT(KName,"SetFileName"); - _LIT(KPath,"%c:\\"); - TBuf<10> setFileName; - TPtrC16 name = setFileName; - TBuf<255> fileName; - _LIT(KCreatedFileName,"%c:\\ReadTestFile.txt"); - - TBool alright = GetStringFromConfig(ConfigSection(), KName, name); - if (alright) - { - fileName.Format(KPath, (TUint)iDriveToTest); - fileName.Append(name); - } - else - { - fileName.Format(KCreatedFileName, (TUint)iDriveToTest); - } - TInt res = TheFile.Replace(iTheFs,fileName,EFileWrite); - TheFile.Close(); - TBool alright2 = GetStringFromConfig(ConfigSection(), KAction, action); - if (alright2) - { - errcode = SetAttribs(fileName); - if (action == _L("Write")) - { - errcode = WriteFile(fileName); - } - if (action == _L("DirList")) - { - errcode = DirList(fileName); - } - if (action == _L("CheckAtt")) - { - errcode = SetAttribs(fileName); - } - if (action == _L("CheckCode")) - { - errcode = CheckErrCode(res); - } - if (action == _L("MakeDirectory")) - { - errcode = MakeDirectory(_L("TestDirectory\\")); - } - if (action == _L("MakeTwoDirectory")) - { - errcode = MakeDirectory(_L("TestDirectory\\")); - if (errcode == KErrNone) - { - errcode = MakeDirectory(_L("TestDirectory\\TestDirectory2\\")); - } - } - if (action == _L("SetLabel")) - { - errcode = SetLabel(_L("TestLabel")); - } - if (action == _L("SetTwoLabels")) - { - errcode = SetLabel(_L("TestLabel")); - if (errcode == KErrNone) - { - errcode = SetLabel(_L("TestSecondLabel")); - } - } - if (action == _L("SetFileSize")) - { - errcode = SetFileSize(fileName); - } - if (action == _L("DeleteFile")) - { - errcode = DeleteFile(fileName); - } - r = CheckErrCode(errcode); - if(r != KErrNone) - { - _LIT(KErrorWriteFile, "Error writing the file, Error Code = %d"); - INFO_PRINTF2(KErrorWriteFile, r); - SetTestStepResult(EFail); - } - else - { - SetTestStepResult(EPass); - _LIT(KReadPass, "Read Passed"); - INFO_PRINTF1(KReadPass); - } - } - else - { - r = CheckErrCode(res); - if(r != KErrNone) - { - _LIT(KErrorWriteFile, "Error writing the file, Error Code = %d"); - INFO_PRINTF2(KErrorWriteFile, r); - SetTestStepResult(EFail); - } - else - { - _LIT(KReadPass, "Read Passed"); - INFO_PRINTF1(KReadPass); - SetTestStepResult(EPass); - } - } - return TestStepResult(); - } - -/** -Open the file - -@param aFile The name of the file to write - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::WriteFile(const TDesC16& aFile) - { - TBuf8<255> temp; - temp.Copy(aFile); - TInt r = 0; - r = TheFile.Open(iTheFs,aFile,EFileWrite); - if(r != KErrNone) - { - _LIT(KErrorOpenFile, "Unable to open the file, Error Code = %d"); - INFO_PRINTF2(KErrorOpenFile, r); - return r; - } - TheFile.Close(); - return r; - } - -/** -Get the attribute to set from the ini file and set the attributes of the file - -@param aFile The name of the file whos attributes are to be set - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::SetAttribs(const TDesC16& aFile) - { - TBuf8<255> temp; - temp.Copy(aFile); - TInt r = 0; - TUint setMask = KEntryAttNormal; - _LIT(KAtt,"Attributes"); - TBuf<10> fileAttributes; - TPtrC16 attributes = fileAttributes; - - TBool alright3 = GetStringFromConfig(ConfigSection(), KAtt, attributes); - if (alright3) - { - if (attributes == _L("Normal")) - { - setMask = KEntryAttNormal; - } - else if (attributes == _L("ReadOnly")) - { - setMask = KEntryAttReadOnly; - } - else if (attributes == _L("Hidden")) - { - setMask = KEntryAttHidden; - } - else if (attributes == _L("System")) - { - - setMask = KEntryAttSystem; - } - else if (attributes == _L("Dir")) - { - setMask = KEntryAttDir; - } - - r = TheFile.Open(iTheFs,aFile,EFileWrite); - if (r != KErrNone) - { - _LIT(KOpenFail, "Cannot open the file, error = %d"); - INFO_PRINTF2(KOpenFail, r); - return r; - } - r = TheFile.SetAtt(setMask, 0); - if (r != KErrNone) - { - _LIT(KSetAttFail, "Cannot set the attributes, error = %d"); - INFO_PRINTF2(KSetAttFail, r); - return r; - } - - TheFile.Close(); - - r = CheckAtt(aFile, setMask); - if (r != KErrNone) - { - _LIT(KAttFail, "Cannot check the attributes, error = %d"); - INFO_PRINTF2(KAttFail, r); - return r; - } - } - else - { - _LIT(KNoAttribs, "No attributes specified in the ini file"); - INFO_PRINTF1(KNoAttribs); - return KErrNone; - } - return r; - } - -/** -Check the attributes of the file and compare them to the attributes expected - -@param aFile The name of the file whos attributes are to be checked - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::CheckAtt(const TDesC16& aFile, TUint setMask) - { - TInt r = 0; - TUint fileAttributes; - r = iTheFs.Att(aFile, fileAttributes); - if (r != KErrNone) - { - _LIT(KGetAttFail, "Failed to get the file attributes"); - INFO_PRINTF1(KGetAttFail); - return KErrGeneral; - } - else - { - if (fileAttributes&setMask) - { - _LIT(KAttChanged, "Attributes changed correctly"); - INFO_PRINTF1(KAttChanged); - return r; - } - else - { - _LIT(KAttNotChanged, "Attributes have not been changed"); - INFO_PRINTF1(KAttNotChanged); - return KErrGeneral; - } - } - } - -/** -Searching the directory to see if it contains the file who's attributes -were set as hidden. - -@param aFile The name of the file to search for - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::DirList(const TDesC16& aFile) - { - - TInt i; - CDir* dirPtr; - TBuf<10> dir1; - dir1 = iSessionPath; - dir1.Append(_L("*.*")); - TBuf<20> buf; - buf.Append(aFile); - buf.Delete(0,3); - TInt match = 0; - TInt r = iTheFs.GetDir(dir1,KEntryAttMatchExclude|(KEntryAttHidden|0x24),ESortNone,dirPtr); - TInt num = dirPtr->Count(); - TEntry entry; - for (i=0; i 0) - { - _LIT(KFileFound, "File found"); - INFO_PRINTF1(KFileFound); - return KErrNone; - } - else - { - _LIT(KFileNotFound, "File not found"); - INFO_PRINTF1(KFileNotFound); - return KErrNotFound; - } - } - -/** -Compare the error code that is expected to the one returned from the action - -@param aReturnCode The return value that is to be compared - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::CheckErrCode(TInt aReturnCode) - { - _LIT(KCheckCode,"CheckCode"); - TInt checkcode; - TBool alright4 = GetIntFromConfig(ConfigSection(), KCheckCode, checkcode); - if (alright4) - { - if (aReturnCode == checkcode) - { - _LIT(KCorrectCode, "Correct error code = %d"); - INFO_PRINTF2(KCorrectCode, aReturnCode); - return KErrNone; - } - else - { - _LIT(KBadCode, "Incorrect error code = %d"); - INFO_PRINTF2(KBadCode, aReturnCode); - return KErrGeneral; - } - } - else - { - _LIT(KNoIniCode, "CheckCode not specified in ini file"); - INFO_PRINTF1(KNoIniCode); - return KErrGeneral; - } - } - -/** -Creating a directory - -@param aDir The name of the directory to create - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::MakeDirectory(const TDesC16& aDir) - { - TInt r = 0; - TBuf<255> dirName; - dirName.Append(iSessionPath); - dirName.Append(aDir); - TUint setMask = KEntryAttDir; - r = iTheFs.MkDir(dirName); - if (r != KErrNone) - { - _LIT(KMkDirFail, "Failed make the directory"); - INFO_PRINTF1(KMkDirFail); - return r; - } - r = CheckAtt(dirName, setMask); - if (r != KErrNone) - { - _LIT(KChkAttFail, "Failed to check the attributes"); - INFO_PRINTF1(KChkAttFail); - return r; - } - return r; - } - -/** -Setting a volume label - -@param aLabel The name of the lable to set - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::SetLabel(const TDesC16& aLabel) - { - TInt r = 0; - r = iTheFs.SetVolumeLabel(aLabel, CurrentDrive()); - if (r != KErrNone) - { - _LIT(KSetLabelFail, "Failed to set volume label"); - INFO_PRINTF1(KSetLabelFail); - return r; - } - return r; - } - -/** -Setting the size of the file - -@param aFile The name of the file whos size to set - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::SetFileSize(const TDesC16& aFile) - { - TInt r = 0; - r = TheFile.Open(iTheFs,aFile,EFileWrite); - if (r != KErrNone) - { - _LIT(KOpenFail, "Failed to open the file"); - INFO_PRINTF1(KOpenFail); - return r; - } - TInt fileSize = (iBPB_SecPerClus/2) * 3 * 1024; // File accomodates 3 clusters - r = TheFile.SetSize(fileSize); - if (r != KErrNone) - { - _LIT(KSetSizeFail, "Failed set the size of the file"); - INFO_PRINTF1(KSetSizeFail); - return r; - } - TheFile.Close(); - r = iTheFs.FinaliseDrive(CurrentDrive(), RFs::EFinal_RW); - return r; - } - -/** -Delete the file - -@param aFile The name of the file to delete - -@return KErrNone if successful -*/ -TInt CBaseTestFat32WriteFile::DeleteFile(const TDesC16& aFile) - { - TInt r = 0; - r = iTheFs.Delete(aFile); - if (r != KErrNone) - { - _LIT(KDeleteFail, "Failed delete the file"); - INFO_PRINTF1(KDeleteFail); - return r; - } - return r; - } -