kerneltest/f32test/server/t_dirs.cpp
branchRCL_3
changeset 44 3e88ff8f41d5
parent 43 c1f20ce4abcf
equal deleted inserted replaced
43:c1f20ce4abcf 44:3e88ff8f41d5
    13 // Description:
    13 // Description:
    14 // f32test\server\t_dirs.cpp
    14 // f32test\server\t_dirs.cpp
    15 // 
    15 // 
    16 //
    16 //
    17 
    17 
    18 #define __E32TEST_EXTENSION__
       
    19 #include <f32file.h>
    18 #include <f32file.h>
    20 #include <e32test.h>
    19 #include <e32test.h>
    21 #include "t_server.h"
    20 #include "t_server.h"
    22 
    21 
    23 #include "f32_test_utils.h"
    22 #include "f32_test_utils.h"
    40 	RFile f;
    39 	RFile f;
    41 	TInt maxEntry=56;
    40 	TInt maxEntry=56;
    42 	test.Next(_L("Create a directory with 55 entries"));
    41 	test.Next(_L("Create a directory with 55 entries"));
    43 	TFileName sessionPath;
    42 	TFileName sessionPath;
    44 	TInt r=TheFs.SessionPath(sessionPath);
    43 	TInt r=TheFs.SessionPath(sessionPath);
    45 	test_KErrNone(r);
    44 	test(r==KErrNone);
    46 	r=TheFs.MkDir(_L("\\F32-TST\\"));
    45 	r=TheFs.MkDir(_L("\\F32-TST\\"));
    47 	test_Value(r, (r == KErrNone)||(r==KErrAlreadyExists));
    46 	test((r==KErrNone)||(r==KErrAlreadyExists));
    48 	r=TheFs.MkDir(_L("\\F32-TST\\TDIRS\\"));
    47 	r=TheFs.MkDir(_L("\\F32-TST\\TDIRS\\"));
    49 	test_Value(r, (r == KErrNone)||(r==KErrAlreadyExists));
    48 	test((r==KErrNone)||(r==KErrAlreadyExists));
    50 	
    49 	
    51 	for (TInt i=0;i<maxEntry;i++)
    50 	for (TInt i=0;i<maxEntry;i++)
    52 		{
    51 		{
    53 		TFileName baseName=_L("\\F32-TST\\TDIRS\\FILE");
    52 		TFileName baseName=_L("\\F32-TST\\TDIRS\\FILE");
    54 		baseName.AppendNum(i);
    53 		baseName.AppendNum(i);
    55 		r=f.Replace(TheFs,baseName,EFileRead);
    54 		r=f.Replace(TheFs,baseName,EFileRead);
    56 		test_KErrNone(r);
    55 		test(r==KErrNone);
    57 		r=f.Write(_L8("Hello World"));
    56 		r=f.Write(_L8("Hello World"));
    58 		test_KErrNone(r);
    57 		test(r==KErrNone);
    59 		f.Close();
    58 		f.Close();
    60 		}
    59 		}
    61 	test.Next(_L("Test all entries have been created successfully."));
    60 	test.Next(_L("Test all entries have been created successfully."));
    62 	for (TInt j=0;j<=maxEntry;j++)
    61 	for (TInt j=0;j<=maxEntry;j++)
    63 		{
    62 		{
    64 		TFileName baseName=_L("\\F32-TST\\TDIRS\\FILE");
    63 		TFileName baseName=_L("\\F32-TST\\TDIRS\\FILE");
    65 		baseName.AppendNum(j);
    64 		baseName.AppendNum(j);
    66 		TInt r=f.Open(TheFs,baseName,EFileRead);
    65 		TInt r=f.Open(TheFs,baseName,EFileRead);
    67 		if (r!=KErrNone)
    66 		if (r!=KErrNone)
    68 			{
    67 			{
    69 			test_Value(r, r == KErrNotFound && j==maxEntry);
    68 			test(r==KErrNotFound && j==maxEntry);
    70 			return;
    69 			return;
    71 			}
    70 			}
    72 		TBuf8<16> data;
    71 		TBuf8<16> data;
    73 		r=f.Read(data);
    72 		r=f.Read(data);
    74 		test_KErrNone(r);
    73 		test(r==KErrNone);
    75 		test(data==_L8("Hello World"));
    74 		test(data==_L8("Hello World"));
    76 		f.Close();
    75 		f.Close();
    77 		}
    76 		}
    78 	}
    77 	}
    79 	
    78 	
   114 	test.Next(_L("Open files and directories on Z:"));
   113 	test.Next(_L("Open files and directories on Z:"));
   115 	TEntry entry;
   114 	TEntry entry;
   116 	RDir d;
   115 	RDir d;
   117 	
   116 	
   118 	TInt r=d.Open(TheFs,PlatSec::ConfigSetting(PlatSec::EPlatSecEnforceSysBin)?_L("\\Sys\\Bin\\ESHELL.EXE\\*"):_L("\\System\\Bin\\ESHELL.EXE\\*"),KEntryAttMaskSupported);
   117 	TInt r=d.Open(TheFs,PlatSec::ConfigSetting(PlatSec::EPlatSecEnforceSysBin)?_L("\\Sys\\Bin\\ESHELL.EXE\\*"):_L("\\System\\Bin\\ESHELL.EXE\\*"),KEntryAttMaskSupported);
   119 	test_Value(r, r == KErrPathNotFound);
   118 	test(r==KErrPathNotFound);
   120 	
   119 	
   121 	r=d.Open(TheFs,PlatSec::ConfigSetting(PlatSec::EPlatSecEnforceSysBin)?_L("\\Sys\\Bin\\ESHELL.EXE"):_L("\\System\\Bin\\ESHELL.EXE"),KEntryAttMaskSupported);
   120 	r=d.Open(TheFs,PlatSec::ConfigSetting(PlatSec::EPlatSecEnforceSysBin)?_L("\\Sys\\Bin\\ESHELL.EXE"):_L("\\System\\Bin\\ESHELL.EXE"),KEntryAttMaskSupported);
   122 	test_KErrNone(r);
   121 	test(r==KErrNone);
   123 	
   122 	
   124 	r=d.Read(entry);
   123 	r=d.Read(entry);
   125 	if (r==KErrEof)
   124 	if (r==KErrEof)
   126 		{
   125 		{
   127 		test.Printf(_L("Error: EShell.EXE not found\n"));
   126 		test.Printf(_L("Error: EShell.EXE not found\n"));
   128 		//test.Getch();
   127 		//test.Getch();
   129 		}
   128 		}
   130 	else
   129 	else
   131 		{
   130 		{
   132 		test_KErrNone(r);
   131 		test(r==KErrNone);
   133 		test(entry.iName.FindF(_L("ESHELL.EXE"))>=0);
   132 		test(entry.iName.FindF(_L("ESHELL.EXE"))>=0);
   134 		r=d.Read(entry);
   133 		r=d.Read(entry);
   135 		test_Value(r, r == KErrEof);
   134 		test(r==KErrEof);
   136 		}
   135 		}
   137 	d.Close();
   136 	d.Close();
   138 
   137 
   139 	r=d.Open(TheFs,_L("\\*.XQP"),KEntryAttMaskSupported);
   138 	r=d.Open(TheFs,_L("\\*.XQP"),KEntryAttMaskSupported);
   140 	test_KErrNone(r);
   139 	test(r==KErrNone);
   141 	r=d.Read(entry);
   140 	r=d.Read(entry);
   142 	test_Value(r, r == KErrEof);
   141 	test(r==KErrEof);
   143 	d.Close();
   142 	d.Close();
   144 
   143 
   145 	r=d.Open(TheFs,PlatSec::ConfigSetting(PlatSec::EPlatSecEnforceSysBin)?_L("\\Sys\\Bin\\"):_L("\\System\\Bin\\"),KEntryAttMaskSupported);
   144 	r=d.Open(TheFs,PlatSec::ConfigSetting(PlatSec::EPlatSecEnforceSysBin)?_L("\\Sys\\Bin\\"):_L("\\System\\Bin\\"),KEntryAttMaskSupported);
   146 	test_KErrNone(r);
   145 	test(r==KErrNone);
   147 	r=d.Read(entry);
   146 	r=d.Read(entry);
   148 	
   147 	
   149 	if (r==KErrEof)
   148 	if (r==KErrEof)
   150 		{
   149 		{
   151 		test.Printf(_L("No files found\n"));
   150 		test.Printf(_L("No files found\n"));
   152 		d.Close();
   151 		d.Close();
   153 		}
   152 		}
   154 	else
   153 	else
   155 		{
   154 		{
   156 		test_KErrNone(r);
   155 		test(r==KErrNone);
   157 		test.Printf(_L("First Entry = %S\n"),&entry.iName);
   156 		test.Printf(_L("First Entry = %S\n"),&entry.iName);
   158 		r=d.Read(entry);
   157 		r=d.Read(entry);
   159 		test_KErrNone(r);
   158 		test(r==KErrNone);
   160 		test.Printf(_L("Second Entry = %S\n"),&entry.iName);
   159 		test.Printf(_L("Second Entry = %S\n"),&entry.iName);
   161 		d.Close();
   160 		d.Close();
   162 		}
   161 		}
   163 
   162 
   164 	r=d.Open(TheFs,_L("\\*"),KEntryAttMaskSupported);
   163 	r=d.Open(TheFs,_L("\\*"),KEntryAttMaskSupported);
   165 	test_KErrNone(r);
   164 	test(r==KErrNone);
   166 	d.Close();
   165 	d.Close();
   167 	r=d.Open(TheFs,PlatSec::ConfigSetting(PlatSec::EPlatSecEnforceSysBin)?_L("\\Sys\\Bin\\*"):_L("\\System\\Bin\\*"),KEntryAttMaskSupported);
   166 	r=d.Open(TheFs,PlatSec::ConfigSetting(PlatSec::EPlatSecEnforceSysBin)?_L("\\Sys\\Bin\\*"):_L("\\System\\Bin\\*"),KEntryAttMaskSupported);
   168 	test_KErrNone(r);
   167 	test(r==KErrNone);
   169 	d.Close();
   168 	d.Close();
   170 	}
   169 	}
   171 
   170 
   172 static void Test3()
   171 static void Test3()
   173 //
   172 //
   177 
   176 
   178 	test.Next(_L("Open files and directories"));
   177 	test.Next(_L("Open files and directories"));
   179 	TEntry entry;
   178 	TEntry entry;
   180 	RFile f;
   179 	RFile f;
   181 	TInt r=f.Replace(TheFs,_L("\\F32-TST\\TDIRS\\TESTFILEORISITA.DIR"),EFileWrite);
   180 	TInt r=f.Replace(TheFs,_L("\\F32-TST\\TDIRS\\TESTFILEORISITA.DIR"),EFileWrite);
   182 	test_KErrNone(r);
   181 	test(r==KErrNone);
   183 	r=f.Write(_L8("TESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATA"));
   182 	r=f.Write(_L8("TESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATATESTDATA"));
   184 	test_KErrNone(r);
   183 	test(r==KErrNone);
   185 	r=TheFs.Delete(_L("\\F32-TST\\TDIRS\\TESTFILEORISITA.DIR"));
   184 	r=TheFs.Delete(_L("\\F32-TST\\TDIRS\\TESTFILEORISITA.DIR"));
   186 	test_Value(r, r == KErrInUse);
   185 	test(r==KErrInUse);
   187 	f.Close();
   186 	f.Close();
   188 	RDir d;
   187 	RDir d;
   189 	r=d.Open(TheFs,_L("\\F32-TST\\TDIRS\\TESTFILEORISITA.DIR\\*"),KEntryAttMaskSupported);
   188 	r=d.Open(TheFs,_L("\\F32-TST\\TDIRS\\TESTFILEORISITA.DIR\\*"),KEntryAttMaskSupported);
   190 	test_Value(r, r == KErrPathNotFound);
   189 	test(r==KErrPathNotFound);
   191 	r=d.Open(TheFs,_L("\\F32-TST\\TDIRS\\*.XQP"),KEntryAttMaskSupported);
   190 	r=d.Open(TheFs,_L("\\F32-TST\\TDIRS\\*.XQP"),KEntryAttMaskSupported);
   192 	test_KErrNone(r);
   191 	test(r==KErrNone);
   193 	r=d.Read(entry);
   192 	r=d.Read(entry);
   194 	test_Value(r, r == KErrEof);
   193 	test(r==KErrEof);
   195 	d.Close();
   194 	d.Close();
   196 	r=d.Open(TheFs,_L("\\F32-TST\\TDIRS\\TESTFILEORISITA.DIR"),KEntryAttMaskSupported);
   195 	r=d.Open(TheFs,_L("\\F32-TST\\TDIRS\\TESTFILEORISITA.DIR"),KEntryAttMaskSupported);
   197 	test_KErrNone(r);
   196 	test(r==KErrNone);
   198 	r=d.Read(entry);
   197 	r=d.Read(entry);
   199 	test_KErrNone(r);
   198 	test(r==KErrNone);
   200 	test(entry.iName.FindF(_L("TESTFILEORISITA.DIR"))>=0);
   199 	test(entry.iName.FindF(_L("TESTFILEORISITA.DIR"))>=0);
   201 	r=d.Read(entry);
   200 	r=d.Read(entry);
   202 	test_Value(r, r == KErrEof);
   201 	test(r==KErrEof);
   203 	d.Close();
   202 	d.Close();
   204 	r=d.Open(TheFs,_L("\\"),KEntryAttMaskSupported);
   203 	r=d.Open(TheFs,_L("\\"),KEntryAttMaskSupported);
   205 	test_KErrNone(r);
   204 	test(r==KErrNone);
   206 	d.Close();
   205 	d.Close();
   207 	r=d.Open(TheFs,_L("\\F32-TST\\"),KEntryAttMaskSupported);
   206 	r=d.Open(TheFs,_L("\\F32-TST\\"),KEntryAttMaskSupported);
   208 	test_KErrNone(r);
   207 	test(r==KErrNone);
   209 	d.Close();
   208 	d.Close();
   210 	r=d.Open(TheFs,_L("\\*"),KEntryAttMaskSupported);
   209 	r=d.Open(TheFs,_L("\\*"),KEntryAttMaskSupported);
   211 	test_KErrNone(r);
   210 	test(r==KErrNone);
   212 	d.Close();
   211 	d.Close();
   213 	r=d.Open(TheFs,_L("\\F32-TST\\*"),KEntryAttMaskSupported);
   212 	r=d.Open(TheFs,_L("\\F32-TST\\*"),KEntryAttMaskSupported);
   214 	test_KErrNone(r);
   213 	test(r==KErrNone);
   215 	d.Close();
   214 	d.Close();
   216 	
   215 	
   217 	// create a small file on the root
   216 	// create a small file on the root
   218 	test(f.Replace(TheFs, _L("\\TEST.FILE"), EFileWrite) == KErrNone);
   217 	test(f.Replace(TheFs, _L("\\TEST.FILE"), EFileWrite) == KErrNone);
   219 	test(f.Write(_L8("1234567890987654321234567890")) == KErrNone);
   218 	test(f.Write(_L8("1234567890987654321234567890")) == KErrNone);
   225 	// cleanup
   224 	// cleanup
   226 	TheFs.Delete(_L("\\TEST.FILE"));	
   225 	TheFs.Delete(_L("\\TEST.FILE"));	
   227 	
   226 	
   228 	
   227 	
   229 	r=TheFs.MkDir(_L("\\F32-TST\\EMPTY\\"));
   228 	r=TheFs.MkDir(_L("\\F32-TST\\EMPTY\\"));
   230 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   229 	test(r==KErrNone || r==KErrAlreadyExists);
   231 	r=d.Open(TheFs,_L("\\F32-TST\\EMPTY\\*"),KEntryAttMaskSupported);
   230 	r=d.Open(TheFs,_L("\\F32-TST\\EMPTY\\*"),KEntryAttMaskSupported);
   232 	test_KErrNone(r);
   231 	test(r==KErrNone);
   233 //	r=TheFs.RmDir(_L("\\F32-TST\\EMPTY\\"));
   232 //	r=TheFs.RmDir(_L("\\F32-TST\\EMPTY\\"));
   234 	r=d.Read(entry);
   233 	r=d.Read(entry);
   235 	test_Value(r, r == KErrEof);
   234 	test(r==KErrEof);
   236 //	r=TheFs.RmDir(_L("\\F32-TST\\EMPTY\\"));
   235 //	r=TheFs.RmDir(_L("\\F32-TST\\EMPTY\\"));
   237 //	test_Value(r, r == KErrInUse);
   236 //	test(r==KErrInUse);
   238 	r=d.Read(entry);
   237 	r=d.Read(entry);
   239 	r=d.Read(entry);
   238 	r=d.Read(entry);
   240 	r=d.Read(entry);
   239 	r=d.Read(entry);
   241 	d.Close();
   240 	d.Close();
   242 	r=TheFs.RmDir(_L("\\F32-TST\\EMPTY\\"));
   241 	r=TheFs.RmDir(_L("\\F32-TST\\EMPTY\\"));
   243 	test_KErrNone(r);
   242 	test(r==KErrNone);
   244 	}
   243 	}
   245 
   244 
   246 
   245 
   247 static void CreateSortNoneTestDirectoryStructure()
   246 static void CreateSortNoneTestDirectoryStructure()
   248 //
   247 //
   255 //	the time this function was run...
   254 //	the time this function was run...
   256 	
   255 	
   257 	CFileMan* fMan=CFileMan::NewL(TheFs);
   256 	CFileMan* fMan=CFileMan::NewL(TheFs);
   258 	test(fMan!=NULL);
   257 	test(fMan!=NULL);
   259 	TInt r=fMan->RmDir(_L("\\F32-TST\\TDIRS\\SORT_NONE\\"));
   258 	TInt r=fMan->RmDir(_L("\\F32-TST\\TDIRS\\SORT_NONE\\"));
   260 	test_Value(r, (r == KErrNone)||(r==KErrPathNotFound));
   259 	test((r==KErrNone)||(r==KErrPathNotFound));
   261 	delete fMan;	
   260 	delete fMan;	
   262 
   261 
   263 	gTimeNow.HomeTime();	//	Set global TTime gTimeNow to time now - for later tests
   262 	gTimeNow.HomeTime();	//	Set global TTime gTimeNow to time now - for later tests
   264 	r=TheFs.MkDirAll(_L("\\F32-TST\\TDIRS\\SORT_NONE\\"));
   263 	r=TheFs.MkDirAll(_L("\\F32-TST\\TDIRS\\SORT_NONE\\"));
   265 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   264 	test(r==KErrNone || r==KErrAlreadyExists);
   266 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file1.txt"));
   265 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file1.txt"));
   267 	r=TheFs.MkDir(_L("\\F32-TST\\TDIRS\\SORT_NONE\\FILE_DIR1.APP\\"));
   266 	r=TheFs.MkDir(_L("\\F32-TST\\TDIRS\\SORT_NONE\\FILE_DIR1.APP\\"));
   268 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   267 	test(r==KErrNone || r==KErrAlreadyExists);
   269 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file1.app"));
   268 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file1.app"));
   270 	r=TheFs.MkDir(_L("\\F32-TST\\TDIRS\\SORT_NONE\\FILE_DIR2.TXT\\"));
   269 	r=TheFs.MkDir(_L("\\F32-TST\\TDIRS\\SORT_NONE\\FILE_DIR2.TXT\\"));
   271 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   270 	test(r==KErrNone || r==KErrAlreadyExists);
   272 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file2.txt"));
   271 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file2.txt"));
   273 	r=TheFs.MkDir(_L("\\F32-TST\\TDIRS\\SORT_NONE\\FILE_DIR3.APP\\"));
   272 	r=TheFs.MkDir(_L("\\F32-TST\\TDIRS\\SORT_NONE\\FILE_DIR3.APP\\"));
   274 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   273 	test(r==KErrNone || r==KErrAlreadyExists);
   275 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\ZZZZ"));
   274 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\ZZZZ"));
   276 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\AAAA"));
   275 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\AAAA"));
   277 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\WWWW"));
   276 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\WWWW"));
   278 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file2.app"));
   277 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file2.app"));
   279 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file3.txt"));
   278 	MakeFile(_L("\\f32-tst\\tdirs\\sort_none\\file3.txt"));
   298 // GetDir OOM failure passes 'callback' test from client side but not server side
   297 // GetDir OOM failure passes 'callback' test from client side but not server side
   299 //
   298 //
   300 	TheFs.SetAllocFailure(gAllocFailOff);
   299 	TheFs.SetAllocFailure(gAllocFailOff);
   301 
   300 
   302 	TInt r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*"),KEntryAttMaskSupported,ESortNone,dir);
   301 	TInt r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*"),KEntryAttMaskSupported,ESortNone,dir);
   303 	test_KErrNone(r);
   302 	test(r==KErrNone);
   304 	TInt count=dir->Count();
   303 	TInt count=dir->Count();
   305 	test(count==15);
   304 	test(count==15);
   306 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*"),KEntryAttMaskSupported,ESortByName,dirSorted);
   305 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*"),KEntryAttMaskSupported,ESortByName,dirSorted);
   307 	test_KErrNone(r);
   306 	test(r==KErrNone);
   308 	test(dirSorted->Count()==15);
   307 	test(dirSorted->Count()==15);
   309 	delete dirSorted;
   308 	delete dirSorted;
   310 	delete dir;
   309 	delete dir;
   311 
   310 
   312 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.txt"),KEntryAttNormal,ESortNone,dir);
   311 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.txt"),KEntryAttNormal,ESortNone,dir);
   313 	test_KErrNone(r);
   312 	test(r==KErrNone);
   314 	test(dir->Count()==3);
   313 	test(dir->Count()==3);
   315 	delete dir;
   314 	delete dir;
   316 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.app"),KEntryAttNormal,ESortNone,dir);
   315 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.app"),KEntryAttNormal,ESortNone,dir);
   317 	test_KErrNone(r);
   316 	test(r==KErrNone);
   318 	test(dir->Count()==3);
   317 	test(dir->Count()==3);
   319 	delete dir;
   318 	delete dir;
   320 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.app"),KEntryAttNormal|KEntryAttDir,ESortNone,dir);
   319 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.app"),KEntryAttNormal|KEntryAttDir,ESortNone,dir);
   321 	test_KErrNone(r);
   320 	test(r==KErrNone);
   322 	test(dir->Count()==5);
   321 	test(dir->Count()==5);
   323 	delete dir;
   322 	delete dir;
   324 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.app"),KEntryAttNormal|KEntryAttDir,ESortNone|EDirsFirst,dir);
   323 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.app"),KEntryAttNormal|KEntryAttDir,ESortNone|EDirsFirst,dir);
   325 	test_KErrNone(r);
   324 	test(r==KErrNone);
   326 	test(dir->Count()==5);
   325 	test(dir->Count()==5);
   327 	delete dir;
   326 	delete dir;
   328 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.app"),KEntryAttNormal|KEntryAttDir,ESortNone|EDirsLast,dir);
   327 	r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.app"),KEntryAttNormal|KEntryAttDir,ESortNone|EDirsLast,dir);
   329 	test_KErrNone(r);
   328 	test(r==KErrNone);
   330 	test(dir->Count()==5);
   329 	test(dir->Count()==5);
   331 	delete dir;
   330 	delete dir;
   332 
   331 
   333 	TheFs.SetAllocFailure(gAllocFailOn);
   332 	TheFs.SetAllocFailure(gAllocFailOn);
   334 	}
   333 	}
   340 	{
   339 	{
   341 
   340 
   342 	test.Next(_L("Test return values"));
   341 	test.Next(_L("Test return values"));
   343 	RDir dir;
   342 	RDir dir;
   344 	TInt r=dir.Open(TheFs,_L("\\DoesNotExist\\*"),KEntryAttMaskSupported);
   343 	TInt r=dir.Open(TheFs,_L("\\DoesNotExist\\*"),KEntryAttMaskSupported);
   345 	test_Value(r, r == KErrPathNotFound);
   344 	test(r==KErrPathNotFound);
   346 	r=dir.Open(TheFs,_L("\\"),KEntryAttMaskSupported);
   345 	r=dir.Open(TheFs,_L("\\"),KEntryAttMaskSupported);
   347 	test_KErrNone(r);
   346 	test(r==KErrNone);
   348 	dir.Close();
   347 	dir.Close();
   349 	}
   348 	}
   350 
   349 
   351 
   350 
   352 static void Test6()
   351 static void Test6()
   356 	{
   355 	{
   357 
   356 
   358 	test.Next(_L("Test *.* matches all files"));
   357 	test.Next(_L("Test *.* matches all files"));
   359 	CDir* dirList;
   358 	CDir* dirList;
   360 	TInt r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.*"),KEntryAttNormal|KEntryAttDir,ESortByName|EDirsLast,dirList);
   359 	TInt r=TheFs.GetDir(_L("\\f32-tst\\tdirs\\sort_none\\*.*"),KEntryAttNormal|KEntryAttDir,ESortByName|EDirsLast,dirList);
   361 	test_KErrNone(r);
   360 	test(r==KErrNone);
   362 	TInt count=dirList->Count();
   361 	TInt count=dirList->Count();
   363 	test(count==15);
   362 	test(count==15);
   364 	TEntry entry=(*dirList)[0];
   363 	TEntry entry=(*dirList)[0];
   365 	test(entry.iName.FindF(_L("AAAA"))>=0);
   364 	test(entry.iName.FindF(_L("AAAA"))>=0);
   366 	entry=(*dirList)[1];
   365 	entry=(*dirList)[1];
   393 	test(entry.iName.FindF(_L("FILE_DIR3.APP"))>=0);
   392 	test(entry.iName.FindF(_L("FILE_DIR3.APP"))>=0);
   394 	delete dirList;
   393 	delete dirList;
   395 
   394 
   396 	RDir dir;
   395 	RDir dir;
   397 	r=dir.Open(TheFs,_L("\\f32-tst\\tdirs\\sort_none\\*.*"),KEntryAttNormal|KEntryAttDir);
   396 	r=dir.Open(TheFs,_L("\\f32-tst\\tdirs\\sort_none\\*.*"),KEntryAttNormal|KEntryAttDir);
   398 	test_KErrNone(r);
   397 	test(r==KErrNone);
   399 	
   398 	
   400 	TTime time;
   399 	TTime time;
   401 	TInt64 difference;
   400 	TInt64 difference;
   402 	TInt64 maxOK=1000000;
   401 	TInt64 maxOK=1000000;
   403 	maxOK*=60;
   402 	maxOK*=60;
   404 	maxOK*=3;
   403 	maxOK*=3;
   405 
   404 
   406 	for (TInt i=0; i<15; i++)
   405 	for (TInt i=0; i<15; i++)
   407 		{
   406 		{
   408 		r=dir.Read(entry);
   407 		r=dir.Read(entry);
   409 		test_KErrNone(r);
   408 		test(r==KErrNone);
   410 		time=entry.iModified;
   409 		time=entry.iModified;
   411 		difference=time.Int64()-gTimeNow.Int64();
   410 		difference=time.Int64()-gTimeNow.Int64();
   412 		test(difference<maxOK);
   411 		test(difference<maxOK);
   413 		}
   412 		}
   414 
   413 
   415 	r=dir.Read(entry);
   414 	r=dir.Read(entry);
   416 	test_Value(r, r == KErrEof);
   415 	test(r==KErrEof);
   417 	dir.Close();
   416 	dir.Close();
   418 
   417 
   419 	TheFs.SetAllocFailure(gAllocFailOn);
   418 	TheFs.SetAllocFailure(gAllocFailOn);
   420 	}
   419 	}
   421 
   420 
   432         test.Printf(_L("Skipping. Applicable for FAT12/16 only!\n"));
   431         test.Printf(_L("Skipping. Applicable for FAT12/16 only!\n"));
   433         return;
   432         return;
   434         }    
   433         }    
   435 
   434 
   436     TInt r = FormatDrive(TheFs, gDriveNum, ETrue);
   435     TInt r = FormatDrive(TheFs, gDriveNum, ETrue);
   437     test_KErrNone(r);
   436     test(r==KErrNone);
   438 
   437 
   439 	TBuf<32> baseName=_L("\\RD");
   438 	TBuf<32> baseName=_L("\\RD");
   440 	TBuf<32> id;
   439 	TBuf<32> id;
   441 	TBuf<32> fileName;
   440 	TBuf<32> fileName;
   442 	TInt count=0;
   441 	TInt count=0;
   452 		TInt r=f.Replace(TheFs,fileName,EFileWrite);
   451 		TInt r=f.Replace(TheFs,fileName,EFileWrite);
   453 		if(r==KErrDirFull)
   452 		if(r==KErrDirFull)
   454 			{
   453 			{
   455 			break;
   454 			break;
   456 			}
   455 			}
   457 		test_KErrNone(r);
   456 		test(r==KErrNone);
   458 		f.Close();
   457 		f.Close();
   459 		count++;
   458 		count++;
   460 		if(count >= 1000)
   459 		if(count >= 1000)
   461 			{
   460 			{
   462 			break;
   461 			break;
   470 		id.Num(count);
   469 		id.Num(count);
   471 		fileName=parser.Drive();
   470 		fileName=parser.Drive();
   472 		fileName+=baseName;
   471 		fileName+=baseName;
   473 		fileName+=id;
   472 		fileName+=id;
   474 		TInt r=TheFs.Delete(fileName);
   473 		TInt r=TheFs.Delete(fileName);
   475 		test_KErrNone(r);
   474 		test(r==KErrNone);
   476 		test.Printf(_L("DeleteFile	:	%d	: %S\r"),count,&fileName);
   475 		test.Printf(_L("DeleteFile	:	%d	: %S\r"),count,&fileName);
   477 		--count;
   476 		--count;
   478 		}
   477 		}
   479 	test.Printf(_L("\n"));
   478 	test.Printf(_L("\n"));
   480 
   479 
   484 //	Mem::Fill((TUint8*)longFileName.Ptr(),254,'A');
   483 //	Mem::Fill((TUint8*)longFileName.Ptr(),254,'A');
   485 	Mem::Fill((TUint8*)longFileName.Ptr(),254*sizeof(TText),'A');
   484 	Mem::Fill((TUint8*)longFileName.Ptr(),254*sizeof(TText),'A');
   486 	longFileName[0]='\\';
   485 	longFileName[0]='\\';
   487 	longFileName[253]='\\';
   486 	longFileName[253]='\\';
   488 	r=TheFs.MkDir(longFileName);
   487 	r=TheFs.MkDir(longFileName);
   489 	test_KErrNone(r);
   488 	test(r==KErrNone);
   490 	CDir* dirList=NULL;
   489 	CDir* dirList=NULL;
   491 	r=TheFs.GetDir(longFileName,KEntryAttMaskSupported,ESortByName,dirList);
   490 	r=TheFs.GetDir(longFileName,KEntryAttMaskSupported,ESortByName,dirList);
   492 	test_KErrNone(r);
   491 	test(r==KErrNone);
   493 	count=dirList->Count();
   492 	count=dirList->Count();
   494 	test(count==0);
   493 	test(count==0);
   495 	delete dirList;
   494 	delete dirList;
   496 	TParse parse;
   495 	TParse parse;
   497 	r=TheFs.Parse(longFileName,parse);
   496 	r=TheFs.Parse(longFileName,parse);
   498 	test_KErrNone(r);
   497 	test(r==KErrNone);
   499 	TEntry entry;
   498 	TEntry entry;
   500 	r=TheFs.Entry(longFileName,entry);
   499 	r=TheFs.Entry(longFileName,entry);
   501 	test_KErrNone(r);
   500 	test(r==KErrNone);
   502 	r=TheFs.SetSessionPath(longFileName);
   501 	r=TheFs.SetSessionPath(longFileName);
   503 	test_KErrNone(r);
   502 	test(r==KErrNone);
   504 	r=TheFs.GetDir(longFileName,KEntryAttMaskSupported,ESortByName,dirList);
   503 	r=TheFs.GetDir(longFileName,KEntryAttMaskSupported,ESortByName,dirList);
   505 	test_KErrNone(r);
   504 	test(r==KErrNone);
   506 	count=dirList->Count();
   505 	count=dirList->Count();
   507 	test(count==0);
   506 	test(count==0);
   508 	delete dirList;
   507 	delete dirList;
   509 	r=TheFs.Parse(longFileName,_L("*"),parse);
   508 	r=TheFs.Parse(longFileName,_L("*"),parse);
   510 	test_Value(r, r == KErrBadName);
   509 	test(r==KErrBadName);
   511 	r=f.Open(TheFs,_L("asdf.asdf"),0);
   510 	r=f.Open(TheFs,_L("asdf.asdf"),0);
   512 	test_Value(r, r == KErrBadName);
   511 	test(r==KErrBadName);
   513 	r=TheFs.Entry(longFileName,entry);
   512 	r=TheFs.Entry(longFileName,entry);
   514 	test_KErrNone(r);
   513 	test(r==KErrNone);
   515 	r=TheFs.RmDir(longFileName);
   514 	r=TheFs.RmDir(longFileName);
   516 	test_KErrNone(r);
   515 	test(r==KErrNone);
   517 	}
   516 	}
   518 
   517 
   519 static void Test8()
   518 static void Test8()
   520 //
   519 //
   521 // Regression tests
   520 // Regression tests
   524 
   523 
   525 	test.Next(_L("Open dir and change drives"));
   524 	test.Next(_L("Open dir and change drives"));
   526 	MakeDir(_L("C:\\MOON\\"));
   525 	MakeDir(_L("C:\\MOON\\"));
   527 	RDir dir;
   526 	RDir dir;
   528 	TInt r=dir.Open(TheFs,_L("C:\\MOON\\"),0);
   527 	TInt r=dir.Open(TheFs,_L("C:\\MOON\\"),0);
   529 	test_KErrNone(r);
   528 	test(r==KErrNone);
   530 	TFileName driveName;
   529 	TFileName driveName;
   531 	r=TheFs.GetDriveName(11,driveName);
   530 	r=TheFs.GetDriveName(11,driveName);
   532 	test_KErrNone(r);
   531 	test(r==KErrNone);
   533 	TEntryArray entryArray;
   532 	TEntryArray entryArray;
   534 	r=dir.Read(entryArray);
   533 	r=dir.Read(entryArray);
   535 	test_Value(r, r == KErrEof);
   534 	test(r==KErrEof);
   536 	test(entryArray.Count()==0);
   535 	test(entryArray.Count()==0);
   537 	dir.Close();
   536 	dir.Close();
   538 	r=TheFs.RmDir(_L("C:\\MOON\\"));
   537 	r=TheFs.RmDir(_L("C:\\MOON\\"));
   539 	test_KErrNone(r);
   538 	test(r==KErrNone);
   540 
   539 
   541 	test.Next(_L("MkDir all on nonexistent drive"));
   540 	test.Next(_L("MkDir all on nonexistent drive"));
   542 	r=TheFs.MkDirAll(_L("L:\\MOON"));
   541 	r=TheFs.MkDirAll(_L("L:\\MOON"));
   543 	test_Value(r, (r == KErrNotReady)||(r==KErrPathNotFound));
   542 	test((r==KErrNotReady)||(r==KErrPathNotFound));
   544 	}
   543 	}
   545 
   544 
   546 static void CleanupL()
   545 static void CleanupL()
   547 //
   546 //
   548 // Clean up tests
   547 // Clean up tests
   550 	{
   549 	{
   551 
   550 
   552 	test.Next(_L("Delete test directory"));
   551 	test.Next(_L("Delete test directory"));
   553 	CFileMan* fMan=CFileMan::NewL(TheFs);
   552 	CFileMan* fMan=CFileMan::NewL(TheFs);
   554 	TInt r=fMan->RmDir(gSessionPath);
   553 	TInt r=fMan->RmDir(gSessionPath);
   555 	test_KErrNone(r);
   554 	test(r==KErrNone);
   556 	r=fMan->Delete(_L("\\Filluptherootdir*"));
   555 	r=fMan->Delete(_L("\\Filluptherootdir*"));
   557 	test_Value(r, r == KErrNone || r==KErrNotFound);
   556 	test(r==KErrNone || r==KErrNotFound);
   558 	delete fMan;
   557 	delete fMan;
   559 	}
   558 	}
   560 
   559 
   561 static void Test9()
   560 static void Test9()
   562 //
   561 //
   565 	{
   564 	{
   566 
   565 
   567 	test.Next(_L("Testing directory names with trailing dots"));
   566 	test.Next(_L("Testing directory names with trailing dots"));
   568 	TInt r;
   567 	TInt r;
   569 	r=TheFs.MkDir(_L("\\test9..\\"));
   568 	r=TheFs.MkDir(_L("\\test9..\\"));
   570 	test_Value(r, r == KErrBadName);
   569 	test(r==KErrBadName);
   571 	r=TheFs.MkDir(_L("\\test9\\"));
   570 	r=TheFs.MkDir(_L("\\test9\\"));
   572 	test_Value(r, (r == KErrNone)||(r==KErrAlreadyExists));
   571 	test((r==KErrNone)||(r==KErrAlreadyExists));
   573 	r=TheFs.Rename(_L("\\test9\\"),_L("\\test9..\\"));
   572 	r=TheFs.Rename(_L("\\test9\\"),_L("\\test9..\\"));
   574 	test_Value(r, r == KErrBadName);
   573 	test(r==KErrBadName);
   575 	r= TheFs.RmDir(_L("\\test9\\"));
   574 	r= TheFs.RmDir(_L("\\test9\\"));
   576 	test_KErrNone(r);
   575 	test((r==KErrNone));
   577 	r=TheFs.MkDir(_L("\\t.\\"));
   576 	r=TheFs.MkDir(_L("\\t.\\"));
   578 	test_Value(r, r == KErrBadName);
   577 	test(r==KErrBadName);
   579 	}
   578 	}
   580 
   579 
   581 
   580 
   582 //
   581 //
   583 // Path and File names for sorting by name
   582 // Path and File names for sorting by name
   604 	{
   603 	{
   605 	
   604 	
   606 	CFileMan* fMan=CFileMan::NewL(TheFs);
   605 	CFileMan* fMan=CFileMan::NewL(TheFs);
   607 	test(fMan!=NULL);
   606 	test(fMan!=NULL);
   608 	TInt r=fMan->RmDir(aPath);
   607 	TInt r=fMan->RmDir(aPath);
   609 	test_Value(r, (r == KErrNone)||(r==KErrPathNotFound));
   608 	test((r==KErrNone)||(r==KErrPathNotFound));
   610 	delete fMan;	
   609 	delete fMan;	
   611 	}
   610 	}
   612 
   611 
   613 
   612 
   614 static void CreateTestDirectoryStructure(const TDesC& aPath, const TDesC** aFileArray, TInt aNumFiles)
   613 static void CreateTestDirectoryStructure(const TDesC& aPath, const TDesC** aFileArray, TInt aNumFiles)
   618 	{
   617 	{
   619 	DeleteTestDirectoryStructure(aPath);	
   618 	DeleteTestDirectoryStructure(aPath);	
   620 
   619 
   621 	gTimeNow.HomeTime();	//	Set global TTime gTimeNow to time now - for later tests
   620 	gTimeNow.HomeTime();	//	Set global TTime gTimeNow to time now - for later tests
   622 	TInt r=TheFs.MkDirAll(aPath);
   621 	TInt r=TheFs.MkDirAll(aPath);
   623 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   622 	test(r==KErrNone || r==KErrAlreadyExists);
   624 
   623 
   625 	TBuf<128> fileName;
   624 	TBuf<128> fileName;
   626 	for (TInt i = 0; i < aNumFiles; i++)
   625 	for (TInt i = 0; i < aNumFiles; i++)
   627 		{
   626 		{
   628 		fileName = aPath;
   627 		fileName = aPath;
   644 	test.Next(_L("Test ESortByName"));
   643 	test.Next(_L("Test ESortByName"));
   645 	CDir* dirList;
   644 	CDir* dirList;
   646 	TBuf<128> sortSpec(KSortByNamePath);
   645 	TBuf<128> sortSpec(KSortByNamePath);
   647 	sortSpec.Append(KSortAll);
   646 	sortSpec.Append(KSortAll);
   648 	TInt r=TheFs.GetDir(sortSpec, KEntryAttNormal | KEntryAttDir, ESortByName | EDirsLast, dirList);
   647 	TInt r=TheFs.GetDir(sortSpec, KEntryAttNormal | KEntryAttDir, ESortByName | EDirsLast, dirList);
   649 	test_KErrNone(r);
   648 	test(r==KErrNone);
   650 	TInt count=dirList->Count();
   649 	TInt count=dirList->Count();
   651 	test(count==numFiles);
   650 	test(count==numFiles);
   652 
   651 
   653 
   652 
   654 	TInt i;
   653 	TInt i;
   669 
   668 
   670 	test.Next(_L("Test ESortByName (descending)"));
   669 	test.Next(_L("Test ESortByName (descending)"));
   671 
   670 
   672 
   671 
   673 	r=TheFs.GetDir(sortSpec, KEntryAttNormal | KEntryAttDir, ESortByName | EDirsLast | EDescending, dirList);
   672 	r=TheFs.GetDir(sortSpec, KEntryAttNormal | KEntryAttDir, ESortByName | EDirsLast | EDescending, dirList);
   674 	test_KErrNone(r);
   673 	test(r==KErrNone);
   675 	count=dirList->Count();
   674 	count=dirList->Count();
   676 	test(count==numFiles);
   675 	test(count==numFiles);
   677 
   676 
   678 
   677 
   679 	for (i = 0; i < count; i++)
   678 	for (i = 0; i < count; i++)
   736 
   735 
   737 	CDir* dirList;
   736 	CDir* dirList;
   738 	TBuf<128> sortSpec(KSortByExtPath);
   737 	TBuf<128> sortSpec(KSortByExtPath);
   739 	sortSpec.Append(KSortAll);
   738 	sortSpec.Append(KSortAll);
   740 	TInt r=TheFs.GetDir(sortSpec, KEntryAttNormal | KEntryAttDir, ESortByExt | EDirsLast, dirList);
   739 	TInt r=TheFs.GetDir(sortSpec, KEntryAttNormal | KEntryAttDir, ESortByExt | EDirsLast, dirList);
   741 	test_KErrNone(r);
   740 	test(r==KErrNone);
   742 	TInt count=dirList->Count();
   741 	TInt count=dirList->Count();
   743 	test(count==numFiles);
   742 	test(count==numFiles);
   744 
   743 
   745 
   744 
   746 	TInt i;
   745 	TInt i;
   772 
   771 
   773 
   772 
   774 	test.Next(_L("Test ESortByExt (descending)"));
   773 	test.Next(_L("Test ESortByExt (descending)"));
   775 
   774 
   776 	r=TheFs.GetDir(sortSpec, KEntryAttNormal | KEntryAttDir, ESortByExt | EDirsLast | EDescending, dirList);
   775 	r=TheFs.GetDir(sortSpec, KEntryAttNormal | KEntryAttDir, ESortByExt | EDirsLast | EDescending, dirList);
   777 	test_KErrNone(r);
   776 	test(r==KErrNone);
   778 	count=dirList->Count();
   777 	count=dirList->Count();
   779 	test(count==numFiles);
   778 	test(count==numFiles);
   780 
   779 
   781 
   780 
   782 	for (i = 0; i < count; i++)
   781 	for (i = 0; i < count; i++)
   856 	dirTest4 = _L("\\F32-TST\\TDIRS\\test4. . \\");
   855 	dirTest4 = _L("\\F32-TST\\TDIRS\\test4. . \\");
   857 	dirTest5 = _L("\\F32-TST\\TDIRS\\test5.\\");
   856 	dirTest5 = _L("\\F32-TST\\TDIRS\\test5.\\");
   858 	dirTest6 = _L("\\F32-TST\\TDIRS\\test6. .\\");
   857 	dirTest6 = _L("\\F32-TST\\TDIRS\\test6. .\\");
   859 
   858 
   860     TInt err = TheFs.MkDir(dirTest1);
   859     TInt err = TheFs.MkDir(dirTest1);
   861     test_KErrNone(err);
   860     test(err == KErrNone);
   862     err = TheFs.MkDir(dirTest2);
   861     err = TheFs.MkDir(dirTest2);
   863     test_Value(err, err == KErrBadName);
   862     test(err == KErrBadName);
   864     err = TheFs.MkDir(dirTest3);
   863     err = TheFs.MkDir(dirTest3);
   865     test_Value(err, err == KErrBadName);
   864     test(err == KErrBadName);
   866     err = TheFs.MkDir(dirTest4);
   865     err = TheFs.MkDir(dirTest4);
   867     test_Value(err, err == KErrBadName);
   866     test(err == KErrBadName);
   868     err = TheFs.MkDir(dirTest5);
   867     err = TheFs.MkDir(dirTest5);
   869     test_Value(err, err == KErrBadName);
   868     test(err == KErrBadName);
   870     err = TheFs.MkDir(dirTest6);
   869     err = TheFs.MkDir(dirTest6);
   871     test_Value(err, err == KErrBadName);
   870     test(err == KErrBadName);
   872 
   871 
   873     RDir rdir;
   872     RDir rdir;
   874     err = rdir.Open(TheFs, dirTest1, 0);
   873     err = rdir.Open(TheFs, dirTest1, 0);
   875     rdir.Close();
   874     rdir.Close();
   876     test_KErrNone(err);
   875     test(err == KErrNone);
   877 
   876 
   878     err = rdir.Open(TheFs, dirTest2, 0);
   877     err = rdir.Open(TheFs, dirTest2, 0);
   879     rdir.Close();
   878     rdir.Close();
   880     test_Value(err, err == KErrBadName);
   879     test(err == KErrBadName);
   881 
   880 
   882     err = rdir.Open(TheFs, dirTest3, 0);
   881     err = rdir.Open(TheFs, dirTest3, 0);
   883     rdir.Close();
   882     rdir.Close();
   884     test_Value(err, err == KErrBadName);
   883     test(err == KErrBadName);
   885 
   884 
   886     err = rdir.Open(TheFs, dirTest4, 0);
   885     err = rdir.Open(TheFs, dirTest4, 0);
   887     rdir.Close();
   886     rdir.Close();
   888     test_Value(err, err == KErrBadName);
   887     test(err == KErrBadName);
   889 
   888 
   890     err = rdir.Open(TheFs, dirTest5, 0);
   889     err = rdir.Open(TheFs, dirTest5, 0);
   891     rdir.Close();
   890     rdir.Close();
   892     test_Value(err, err == KErrBadName);
   891     test(err == KErrBadName);
   893 
   892 
   894     err = rdir.Open(TheFs, dirTest6, 0);
   893     err = rdir.Open(TheFs, dirTest6, 0);
   895     rdir.Close();
   894     rdir.Close();
   896     test_Value(err, err == KErrBadName);
   895     test(err == KErrBadName);
   897 
   896 
   898     err = TheFs.RmDir(dirTest1);
   897     err = TheFs.RmDir(dirTest1);
   899     test_KErrNone(err);
   898     test(err == KErrNone);
   900     err = TheFs.RmDir(dirTest2);
   899     err = TheFs.RmDir(dirTest2);
   901     test_Value(err, err == KErrBadName);
   900     test(err == KErrBadName);
   902     err = TheFs.RmDir(dirTest3);
   901     err = TheFs.RmDir(dirTest3);
   903     test_Value(err, err == KErrBadName);
   902     test(err == KErrBadName);
   904     err = TheFs.RmDir(dirTest4);
   903     err = TheFs.RmDir(dirTest4);
   905     test_Value(err, err == KErrBadName);
   904     test(err == KErrBadName);
   906     err = TheFs.RmDir(dirTest5);
   905     err = TheFs.RmDir(dirTest5);
   907     test_Value(err, err == KErrBadName);
   906     test(err == KErrBadName);
   908     err = TheFs.RmDir(dirTest6);
   907     err = TheFs.RmDir(dirTest6);
   909     test_Value(err, err == KErrBadName);
   908     test(err == KErrBadName);
   910 	}
   909 	}
   911 
   910 
   912 void CallTestsL()
   911 void CallTestsL()
   913 //
   912 //
   914 // Do all tests
   913 // Do all tests
   917 
   916 
   918     //-- set up console output 
   917     //-- set up console output 
   919     F32_Test_Utils::SetConsole(test.Console()); 
   918     F32_Test_Utils::SetConsole(test.Console()); 
   920     
   919     
   921     TInt nRes=TheFs.CharToDrive(gDriveToTest, gDriveNum);
   920     TInt nRes=TheFs.CharToDrive(gDriveToTest, gDriveNum);
   922     test_KErrNone(nRes);
   921     test(nRes==KErrNone);
   923     
   922     
   924     PrintDrvInfo(TheFs, gDriveNum);
   923     PrintDrvInfo(TheFs, gDriveNum);
   925 
   924 
   926 	TurnAllocFailureOff();
   925 	TurnAllocFailureOff();
   927 	CreateTestDirectory(_L("\\F32-TST\\TDIRS\\"));
   926 	CreateTestDirectory(_L("\\F32-TST\\TDIRS\\"));
   928 	
   927 	
   929 	if (!gTestedZ)
   928 	if (!gTestedZ)
   930 		{
   929 		{
   931 		TInt r=TheFs.SetSessionPath(_L("Z:\\"));
   930 		TInt r=TheFs.SetSessionPath(_L("Z:\\"));
   932 		test_KErrNone(r);
   931 		test(r==KErrNone);
   933 		Test2();
   932 		Test2();
   934 		TestZ();
   933 		TestZ();
   935 		r=TheFs.SetSessionPath(gSessionPath);
   934 		r=TheFs.SetSessionPath(gSessionPath);
   936 		test_KErrNone(r);
   935 		test(r==KErrNone);
   937 		test.Next(_L("Run all other tests from \\F32-TST\\TDIRS\\"));
   936 		test.Next(_L("Run all other tests from \\F32-TST\\TDIRS\\"));
   938 		gTestedZ=ETrue;
   937 		gTestedZ=ETrue;
   939 		}
   938 		}
   940 
   939 
   941 	Test8();
   940 	Test8();