kerneltest/f32test/server/t_vfat.cpp
changeset 109 b3a1d9898418
parent 0 a41df078684a
child 257 3e88ff8f41d5
equal deleted inserted replaced
102:ef2a444a7410 109:b3a1d9898418
    13 // Description:
    13 // Description:
    14 // f32test\server\t_vfat.cpp
    14 // f32test\server\t_vfat.cpp
    15 // 
    15 // 
    16 //
    16 //
    17 
    17 
       
    18 #define __E32TEST_EXTENSION__
    18 #include <f32file.h>
    19 #include <f32file.h>
    19 #include <e32test.h>
    20 #include <e32test.h>
    20 #include <e32math.h>
    21 #include <e32math.h>
    21 #include "t_server.h"
    22 #include "t_server.h"
    22 
    23 
    54 		TBuf<32> shortName=nameshort;
    55 		TBuf<32> shortName=nameshort;
    55 		shortName.AppendNum(fileNum);
    56 		shortName.AppendNum(fileNum);
    56 		TBuf<32> longName=namelong;
    57 		TBuf<32> longName=namelong;
    57 		longName.AppendNum(fileNum);
    58 		longName.AppendNum(fileNum);
    58 		TInt r=TheFs.Rename(shortName,longName);
    59 		TInt r=TheFs.Rename(shortName,longName);
    59 		test(r==KErrNone);
    60 		test_KErrNone(r);
    60 		}
    61 		}
    61 
    62 
    62 	TInt r=TheFs.CheckDisk(gSessionPath);
    63 	TInt r=TheFs.CheckDisk(gSessionPath);
    63 	test(r==KErrNone || r==KErrNotSupported);
    64 	test_Value(r, r == KErrNone || r==KErrNotSupported);
    64 
    65 
    65 	CDir* dirList;
    66 	CDir* dirList;
    66 	r=TheFs.GetDir(_L("*.*"),KEntryAttMaskSupported,ESortBySize,dirList);
    67 	r=TheFs.GetDir(_L("*.*"),KEntryAttMaskSupported,ESortBySize,dirList);
    67 	test(r==KErrNone);
    68 	test_KErrNone(r);
    68 	test(dirList->Count()==totalFiles);
    69 	test(dirList->Count()==totalFiles);
    69 	for (i=0;i<totalFiles;i++)
    70 	for (i=0;i<totalFiles;i++)
    70 		{
    71 		{
    71 		TBuf<32> longName=namelong;
    72 		TBuf<32> longName=namelong;
    72 		longName.AppendNum(i);
    73 		longName.AppendNum(i);
   127 			TInt r;
   128 			TInt r;
   128 			fileName=gFileName[fileNum];
   129 			fileName=gFileName[fileNum];
   129 			if (fileName==_L(""))
   130 			if (fileName==_L(""))
   130 				goto End;
   131 				goto End;
   131 			r=TheFs.Delete(fileName);
   132 			r=TheFs.Delete(fileName);
   132 			test(r==KErrNone);
   133 			test_KErrNone(r);
   133 			gFileName[fileNum]=_L("");
   134 			gFileName[fileNum]=_L("");
   134 			goto End;
   135 			goto End;
   135 		default:
   136 		default:
   136 			User::Panic(_L("IllegalVal"),KErrGeneral);
   137 			User::Panic(_L("IllegalVal"),KErrGeneral);
   137 			};
   138 			};
   140 			{
   141 			{
   141 			/* Delete any existing file with the same name */
   142 			/* Delete any existing file with the same name */
   142 			TInt r;
   143 			TInt r;
   143 			RFile thing;
   144 			RFile thing;
   144 			r=thing.Open(TheFs, fileName, EFileShareAny);
   145 			r=thing.Open(TheFs, fileName, EFileShareAny);
   145 			test (r==KErrNone || r==KErrNotFound);
   146 			test_Value(r, r == KErrNone || r==KErrNotFound);
   146 			if (r==KErrNone)
   147 			if (r==KErrNone)
   147 				{
   148 				{
   148 				TInt s;
   149 				TInt s;
   149 				test (thing.Size(s) == KErrNone);
   150 				test (thing.Size(s) == KErrNone);
   150 				thing.Close();
   151 				thing.Close();
   151 				r=TheFs.Delete(fileName);
   152 				r=TheFs.Delete(fileName);
   152 				test (r==KErrNone);
   153 				test_KErrNone(r);
   153 				gFileName[s]=_L("");
   154 				gFileName[s]=_L("");
   154 				}
   155 				}
   155 			else
   156 			else
   156 				thing.Close();
   157 				thing.Close();
   157 				
   158 				
   166 		else
   167 		else
   167 			{
   168 			{
   168 			TInt r=TheFs.Rename(gFileName[fileNum],fileName);
   169 			TInt r=TheFs.Rename(gFileName[fileNum],fileName);
   169             if (r != KErrNone && r != KErrAlreadyExists)
   170             if (r != KErrNone && r != KErrAlreadyExists)
   170                 test.Printf(_L("Rename returned %d at line %d"), r, __LINE__);
   171                 test.Printf(_L("Rename returned %d at line %d"), r, __LINE__);
   171 			test(r==KErrNone || r==KErrAlreadyExists);
   172 			test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   172 			if (r==KErrNone)
   173 			if (r==KErrNone)
   173 				gFileName[fileNum]=fileName;
   174 				gFileName[fileNum]=fileName;
   174 			}
   175 			}
   175 End:
   176 End:
   176 		if ((maxIterations%checkFrequency)==0)
   177 		if ((maxIterations%checkFrequency)==0)
   177 			{
   178 			{
   178 			test.Printf(_L("Iteration %d    \r"),gMaxIterations-maxIterations);
   179 			test.Printf(_L("Iteration %d    \r"),gMaxIterations-maxIterations);
   179 			TInt r=TheFs.CheckDisk(gSessionPath);
   180 			TInt r=TheFs.CheckDisk(gSessionPath);
   180 			test(r==KErrNone || r==KErrNotSupported);
   181 			test_Value(r, r == KErrNone || r==KErrNotSupported);
   181 			TInt count=0;
   182 			TInt count=0;
   182 			CDir* dirList;
   183 			CDir* dirList;
   183 			r=TheFs.GetDir(_L("*.*"),KEntryAttMaskSupported,ESortBySize,dirList);
   184 			r=TheFs.GetDir(_L("*.*"),KEntryAttMaskSupported,ESortBySize,dirList);
   184 			test(r==KErrNone);
   185 			test_KErrNone(r);
   185 			for(i=0;i<gMaxFiles;i++)
   186 			for(i=0;i<gMaxFiles;i++)
   186 				{
   187 				{
   187 				if (gFileName[i]==_L(""))
   188 				if (gFileName[i]==_L(""))
   188 					continue;
   189 					continue;
   189 				TEntry entry;
   190 				TEntry entry;
   229 {
   230 {
   230     TInt    nRes;
   231     TInt    nRes;
   231     TEntry  entry;
   232     TEntry  entry;
   232 
   233 
   233     nRes = TheFs.Entry(KName1, entry);
   234     nRes = TheFs.Entry(KName1, entry);
   234     test(nRes == KErrNone);
   235     test_KErrNone(nRes);
   235     test(entry.iName.CompareF(KExpectedName) == 0);
   236     test(entry.iName.CompareF(KExpectedName) == 0);
   236 
   237 
   237     nRes = TheFs.Entry(KName2, entry);
   238     nRes = TheFs.Entry(KName2, entry);
   238     test(nRes == KErrNone);
   239     test_KErrNone(nRes);
   239     test(entry.iName.CompareF(KExpectedName) == 0);
   240     test(entry.iName.CompareF(KExpectedName) == 0);
   240 
   241 
   241     nRes = TheFs.Entry(KName3, entry);
   242     nRes = TheFs.Entry(KName3, entry);
   242     test(nRes == KErrNone);
   243     test_KErrNone(nRes);
   243     test(entry.iName.CompareF(KExpectedName) == 0);
   244     test(entry.iName.CompareF(KExpectedName) == 0);
   244 
   245 
   245     nRes = TheFs.Entry(KName3, entry);
   246     nRes = TheFs.Entry(KName3, entry);
   246     test(nRes == KErrNone);
   247     test_KErrNone(nRes);
   247     test(entry.iName.CompareF(KExpectedName) == 0);
   248     test(entry.iName.CompareF(KExpectedName) == 0);
   248 }
   249 }
   249 
   250 
   250 /**
   251 /**
   251     Test that ALL trailing dots are removed from the file names by filsystem implementation
   252     Test that ALL trailing dots are removed from the file names by filsystem implementation
   271     TInt    nRes;
   272     TInt    nRes;
   272     RFile   file;
   273     RFile   file;
   273 
   274 
   274     //----- create and check "\\file1"
   275     //----- create and check "\\file1"
   275     nRes = file.Replace(TheFs, KName1, EFileWrite);
   276     nRes = file.Replace(TheFs, KName1, EFileWrite);
   276     test(nRes == KErrNone);
   277     test_KErrNone(nRes);
   277     file.Close();
   278     file.Close();
   278     
   279     
   279     DoCheckTD_FN();
   280     DoCheckTD_FN();
   280 
   281 
   281     nRes = TheFs.Delete(KName1);
   282     nRes = TheFs.Delete(KName1);
   282     test(nRes == KErrNone);
   283     test_KErrNone(nRes);
   283 
   284 
   284 
   285 
   285     //----- create and check "\\file1."
   286     //----- create and check "\\file1."
   286     nRes = file.Replace(TheFs, KName2, EFileWrite);
   287     nRes = file.Replace(TheFs, KName2, EFileWrite);
   287     test(nRes == KErrNone);
   288     test_KErrNone(nRes);
   288     file.Close();
   289     file.Close();
   289     
   290     
   290     DoCheckTD_FN();
   291     DoCheckTD_FN();
   291 
   292 
   292     nRes = TheFs.Delete(KName2);
   293     nRes = TheFs.Delete(KName2);
   293     test(nRes == KErrNone);
   294     test_KErrNone(nRes);
   294 
   295 
   295 
   296 
   296     //----- create and check "\\file1.."
   297     //----- create and check "\\file1.."
   297     nRes = file.Replace(TheFs, KName3, EFileWrite);
   298     nRes = file.Replace(TheFs, KName3, EFileWrite);
   298     test(nRes == KErrNone);
   299     test_KErrNone(nRes);
   299     file.Close();
   300     file.Close();
   300     
   301     
   301     DoCheckTD_FN();
   302     DoCheckTD_FN();
   302 
   303 
   303     nRes = TheFs.Delete(KName3);
   304     nRes = TheFs.Delete(KName3);
   304     test(nRes == KErrNone);
   305     test_KErrNone(nRes);
   305 
   306 
   306 
   307 
   307     //----- create and check "\\file1..."
   308     //----- create and check "\\file1..."
   308     nRes = file.Replace(TheFs, KName4, EFileWrite);
   309     nRes = file.Replace(TheFs, KName4, EFileWrite);
   309     test(nRes == KErrNone);
   310     test_KErrNone(nRes);
   310     file.Close();
   311     file.Close();
   311     
   312     
   312     DoCheckTD_FN();
   313     DoCheckTD_FN();
   313     
   314     
   314     nRes = TheFs.Delete(KName4);
   315     nRes = TheFs.Delete(KName4);
   315     test(nRes == KErrNone);
   316     test_KErrNone(nRes);
   316 
   317 
   317 
   318 
   318 }
   319 }
   319 
   320 
   320 void CallTestsL()
   321 void CallTestsL()