kerneltest/f32test/server/t_dcallfiles.cpp
changeset 109 b3a1d9898418
parent 0 a41df078684a
child 245 647ab20fee2e
equal deleted inserted replaced
102:ef2a444a7410 109:b3a1d9898418
    11 // Contributors:
    11 // Contributors:
    12 //
    12 //
    13 // Description:
    13 // Description:
    14 //
    14 //
    15 
    15 
       
    16 #define __E32TEST_EXTENSION__
    16 #include <f32file.h>
    17 #include <f32file.h>
    17 #include <e32test.h>
    18 #include <e32test.h>
    18 #include <e32std.h>
    19 #include <e32std.h>
    19 #include <e32std_private.h>
    20 #include <e32std_private.h>
    20 #include <e32def.h>
    21 #include <e32def.h>
   111 // This test case is brought in by INC054580
   112 // This test case is brought in by INC054580
   112 // (NTT Renaming sys ¨Cfolder on C -drive on H2 allows user to access sys -files)
   113 // (NTT Renaming sys ¨Cfolder on C -drive on H2 allows user to access sys -files)
   113 //
   114 //
   114     {
   115     {
   115     TInt r = TheFs.Rename(_L("\\sys"), _L("\\sysbad"));
   116     TInt r = TheFs.Rename(_L("\\sys"), _L("\\sysbad"));
   116     test(r == KErrPermissionDenied);
   117     test_Value(r, r == KErrPermissionDenied);
   117     r = TheFs.Rename(_L("\\resource"), _L("\\resourcebad"));
   118     r = TheFs.Rename(_L("\\resource"), _L("\\resourcebad"));
   118     test(r == KErrPermissionDenied);
   119     test_Value(r, r == KErrPermissionDenied);
   119     r = TheFs.Rename(_L("\\private"), _L("\\privatebad"));
   120     r = TheFs.Rename(_L("\\private"), _L("\\privatebad"));
   120     test(r == KErrNone);
   121     test_KErrNone(r);
   121     r = TheFs.Rename(_L("\\privatebad"), _L("\\private"));
   122     r = TheFs.Rename(_L("\\privatebad"), _L("\\private"));
   122     test(r == KErrNone);
   123     test_KErrNone(r);
   123     }
   124     }
   124 
   125 
   125 LOCAL_C void systemRFstest()
   126 LOCAL_C void systemRFstest()
   126 //
   127 //
   127 //
   128 //
   133 	
   134 	
   134 	mkdirname.Zero();
   135 	mkdirname.Zero();
   135 	mkdirname.Append(systestname);
   136 	mkdirname.Append(systestname);
   136 	mkdirname.Append(KMkDirSub);
   137 	mkdirname.Append(KMkDirSub);
   137 	r=TheFs.MkDirAll(mkdirname);	
   138 	r=TheFs.MkDirAll(mkdirname);	
   138 	test(r==KErrPermissionDenied);
   139 	test_Value(r, r == KErrPermissionDenied);
   139 
   140 
   140 	r=TheFs.RmDir(mkdirname);	
   141 	r=TheFs.RmDir(mkdirname);	
   141 	test(r==KErrPermissionDenied);
   142 	test_Value(r, r == KErrPermissionDenied);
   142 
   143 
   143 	r=TheFs.SetSubst(systestname,EDriveO);
   144 	r=TheFs.SetSubst(systestname,EDriveO);
   144 	test(r==KErrPermissionDenied);
   145 	test_Value(r, r == KErrPermissionDenied);
   145 	
   146 	
   146 	r=TheFs.SetSessionPath(systestname);
   147 	r=TheFs.SetSessionPath(systestname);
   147 	test(r==KErrNone);
   148 	test_KErrNone(r);
   148 
   149 
   149 	TheFs.NotifyChange(ENotifyAll,aStat1,systestname);
   150 	TheFs.NotifyChange(ENotifyAll,aStat1,systestname);
   150 	test(aStat1==KRequestPending);		
   151 	test(aStat1==KRequestPending);		
   151 
   152 
   152 	systestfile=KSystemPath;
   153 	systestfile=KSystemPath;
   157 	
   158 	
   158 	oldName=KOldFile;
   159 	oldName=KOldFile;
   159 	oldName[0]=(TText)gDriveToTest;
   160 	oldName[0]=(TText)gDriveToTest;
   160 
   161 
   161 	r=TheFs.GetShortName(systestfile, shortfilename);
   162 	r=TheFs.GetShortName(systestfile, shortfilename);
   162 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   163 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   163 
   164 
   164 	r=TheFs.GetLongName(systestfile1, longfilename);
   165 	r=TheFs.GetLongName(systestfile1, longfilename);
   165 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   166 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   166 
   167 
   167 	r=file1.Create(TheFs,oldName,EFileWrite);
   168 	r=file1.Create(TheFs,oldName,EFileWrite);
   168 	test(r==KErrNone || r==KErrAlreadyExists);
   169 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   169 	file1.Close();
   170 	file1.Close();
   170 
   171 
   171 	r=TheFs.Replace(oldName,systestfile);
   172 	r=TheFs.Replace(oldName,systestfile);
   172 	test(r==KErrPermissionDenied);
   173 	test_Value(r, r == KErrPermissionDenied);
   173 	
   174 	
   174 	r=TheFs.Rename(systestfile,systestfile1);
   175 	r=TheFs.Rename(systestfile,systestfile1);
   175 	test(r==KErrPermissionDenied);
   176 	test_Value(r, r == KErrPermissionDenied);
   176 	
   177 	
   177 	r=TheFs.Entry(systestfile1,entry);
   178 	r=TheFs.Entry(systestfile1,entry);
   178 	test(r==KErrNone || r==KErrNotFound);	
   179 	test_Value(r, r == KErrNone || r==KErrNotFound);	
   179 
   180 
   180 	r=TheFs.SetEntry(systestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   181 	r=TheFs.SetEntry(systestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   181 	test(r==KErrPermissionDenied);
   182 	test_Value(r, r == KErrPermissionDenied);
   182 
   183 
   183 	r=TheFs.Delete(systestfile1);
   184 	r=TheFs.Delete(systestfile1);
   184 	test(r==KErrPermissionDenied);
   185 	test_Value(r, r == KErrPermissionDenied);
   185 
   186 
   186 	}
   187 	}
   187 
   188 
   188 
   189 
   189 LOCAL_C void resourceRFstest()
   190 LOCAL_C void resourceRFstest()
   197 	
   198 	
   198 	mkdirname.Zero();
   199 	mkdirname.Zero();
   199 	mkdirname.Append(restestname);
   200 	mkdirname.Append(restestname);
   200 	mkdirname.Append(KMkDirSub);
   201 	mkdirname.Append(KMkDirSub);
   201 	r=TheFs.MkDirAll(mkdirname);	
   202 	r=TheFs.MkDirAll(mkdirname);	
   202 	test(r==KErrPermissionDenied);
   203 	test_Value(r, r == KErrPermissionDenied);
   203 
   204 
   204 	TheFs.RmDir(mkdirname);
   205 	TheFs.RmDir(mkdirname);
   205 	test(r==KErrPermissionDenied);
   206 	test_Value(r, r == KErrPermissionDenied);
   206 
   207 
   207 
   208 
   208 	r=TheFs.SetSubst(restestname,EDriveO);
   209 	r=TheFs.SetSubst(restestname,EDriveO);
   209 	test(r==KErrPermissionDenied);
   210 	test_Value(r, r == KErrPermissionDenied);
   210 	
   211 	
   211 	r=TheFs.RealName(_L("O:\\File.XXX"),realName);
   212 	r=TheFs.RealName(_L("O:\\File.XXX"),realName);
   212 	test(r==KErrNone);
   213 	test_KErrNone(r);
   213 
   214 
   214 	r=TheFs.SetSessionPath(restestname);
   215 	r=TheFs.SetSessionPath(restestname);
   215 	test(r==KErrNone);
   216 	test_KErrNone(r);
   216 	
   217 	
   217 	TheFs.NotifyChange(ENotifyAll,aStat4,restestname);
   218 	TheFs.NotifyChange(ENotifyAll,aStat4,restestname);
   218 	test(aStat4==KRequestPending);
   219 	test(aStat4==KRequestPending);
   219 
   220 
   220 
   221 
   226 	
   227 	
   227 	oldName=KOldFile;
   228 	oldName=KOldFile;
   228 	oldName[0]=(TText)gDriveToTest;
   229 	oldName[0]=(TText)gDriveToTest;
   229 
   230 
   230 	r=TheFs.GetShortName(restestfile, shortfilename);
   231 	r=TheFs.GetShortName(restestfile, shortfilename);
   231 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   232 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   232 
   233 
   233 	r=TheFs.GetLongName(restestfile1, longfilename);
   234 	r=TheFs.GetLongName(restestfile1, longfilename);
   234 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   235 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   235 
   236 
   236 	r=file1.Create(TheFs,oldName,EFileWrite);
   237 	r=file1.Create(TheFs,oldName,EFileWrite);
   237 	test(r==KErrNone || r==KErrAlreadyExists);
   238 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   238 	file1.Close();
   239 	file1.Close();
   239 
   240 
   240 	r=TheFs.Replace(oldName,restestfile);
   241 	r=TheFs.Replace(oldName,restestfile);
   241 	test(r==KErrPermissionDenied);
   242 	test_Value(r, r == KErrPermissionDenied);
   242 	
   243 	
   243 	r=TheFs.Rename(restestfile,restestfile1);
   244 	r=TheFs.Rename(restestfile,restestfile1);
   244 	test(r==KErrPermissionDenied);
   245 	test_Value(r, r == KErrPermissionDenied);
   245 	
   246 	
   246 	r=TheFs.Entry(restestfile1,entry);
   247 	r=TheFs.Entry(restestfile1,entry);
   247 	test(r==KErrNone || r==KErrNotFound);
   248 	test_Value(r, r == KErrNone || r==KErrNotFound);
   248 
   249 
   249 	r=TheFs.SetEntry(restestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   250 	r=TheFs.SetEntry(restestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   250 	test(r==KErrPermissionDenied);
   251 	test_Value(r, r == KErrPermissionDenied);
   251 
   252 
   252 	r=TheFs.Delete(restestfile1);
   253 	r=TheFs.Delete(restestfile1);
   253 	test(r==KErrPermissionDenied);
   254 	test_Value(r, r == KErrPermissionDenied);
   254 
   255 
   255 	}
   256 	}
   256 
   257 
   257 
   258 
   258 LOCAL_C void privatefalseIDRFstest()
   259 LOCAL_C void privatefalseIDRFstest()
   267 	mkdirname.Zero();
   268 	mkdirname.Zero();
   268 	mkdirname.Append(pritestfalseidname);
   269 	mkdirname.Append(pritestfalseidname);
   269 	mkdirname.Append(KMkDirSub);
   270 	mkdirname.Append(KMkDirSub);
   270 
   271 
   271 	r=TheFs.MkDirAll(mkdirname);	
   272 	r=TheFs.MkDirAll(mkdirname);	
   272 	test(r==KErrNone );
   273 	test_KErrNone(r);
   273 
   274 
   274 	r=TheFs.RmDir(mkdirname);	
   275 	r=TheFs.RmDir(mkdirname);	
   275 	test(r==KErrNone );
   276 	test_KErrNone(r);
   276 
   277 
   277 	r=TheFs.SetSubst(pritestfalseidname,EDriveO);
   278 	r=TheFs.SetSubst(pritestfalseidname,EDriveO);
   278 	test(r==KErrPermissionDenied); 
   279 	test_Value(r, r == KErrPermissionDenied); 
   279 
   280 
   280 	r=TheFs.RealName(_L("O:\\File.XXX"),realName);
   281 	r=TheFs.RealName(_L("O:\\File.XXX"),realName);
   281 	test(r==KErrNone);
   282 	test_KErrNone(r);
   282 
   283 
   283 	r=TheFs.SetSessionPath(pritestfalseidname);
   284 	r=TheFs.SetSessionPath(pritestfalseidname);
   284 	test(r==KErrNone);
   285 	test_KErrNone(r);
   285 
   286 
   286 	TheFs.NotifyChange(ENotifyAll,aStat2,pritestfalseidname);
   287 	TheFs.NotifyChange(ENotifyAll,aStat2,pritestfalseidname);
   287 	test(aStat2==KRequestPending);
   288 	test(aStat2==KRequestPending);
   288 
   289 
   289 	pritestfile=KPrivateFalseID;
   290 	pritestfile=KPrivateFalseID;
   294 	
   295 	
   295 	oldName=KOldFile;
   296 	oldName=KOldFile;
   296 	oldName[0]=(TText)gDriveToTest;
   297 	oldName[0]=(TText)gDriveToTest;
   297 
   298 
   298 	r=TheFs.GetShortName(pritestfile, shortfilename);
   299 	r=TheFs.GetShortName(pritestfile, shortfilename);
   299 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   300 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   300 
   301 
   301 	r=TheFs.GetLongName(pritestfile1, longfilename);
   302 	r=TheFs.GetLongName(pritestfile1, longfilename);
   302 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   303 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   303 
   304 
   304 	r=file1.Create(TheFs,oldName,EFileWrite);
   305 	r=file1.Create(TheFs,oldName,EFileWrite);
   305 	test(r==KErrNone || r==KErrAlreadyExists);
   306 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   306 	file1.Close();
   307 	file1.Close();
   307 
   308 
   308 	r=TheFs.Replace(oldName,pritestfile);
   309 	r=TheFs.Replace(oldName,pritestfile);
   309 	test(r==KErrNone);
   310 	test_KErrNone(r);
   310 	
   311 	
   311 	r=TheFs.Rename(pritestfile,pritestfile1);
   312 	r=TheFs.Rename(pritestfile,pritestfile1);
   312 	test(r==KErrNone || r==KErrAlreadyExists);
   313 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   313 	
   314 	
   314 	r=TheFs.Entry(pritestfile1,entry);
   315 	r=TheFs.Entry(pritestfile1,entry);
   315 	test(r==KErrNone);
   316 	test_KErrNone(r);
   316 
   317 
   317 	r=TheFs.SetEntry(pritestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   318 	r=TheFs.SetEntry(pritestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   318 	test(r==KErrNone);
   319 	test_KErrNone(r);
   319 
   320 
   320 	r=TheFs.Delete(pritestfile1);
   321 	r=TheFs.Delete(pritestfile1);
   321 	test(r==KErrNone);
   322 	test_KErrNone(r);
   322 
   323 
   323 	}
   324 	}
   324 
   325 
   325 
   326 
   326 LOCAL_C void privateRFstest()
   327 LOCAL_C void privateRFstest()
   335 	mkdirname.Zero();
   336 	mkdirname.Zero();
   336 	mkdirname.Append(pritestname);
   337 	mkdirname.Append(pritestname);
   337 	mkdirname.Append(KMkDirSub);
   338 	mkdirname.Append(KMkDirSub);
   338 
   339 
   339 	r=TheFs.MkDirAll(mkdirname);	
   340 	r=TheFs.MkDirAll(mkdirname);	
   340 	test(r==KErrNone );
   341 	test_KErrNone(r);
   341 
   342 
   342 	r=TheFs.RmDir(mkdirname);	
   343 	r=TheFs.RmDir(mkdirname);	
   343 	test(r==KErrNone );
   344 	test_KErrNone(r);
   344 
   345 
   345 	r=TheFs.SetSubst(pritestname,EDriveO);
   346 	r=TheFs.SetSubst(pritestname,EDriveO);
   346 	test(r==KErrPermissionDenied); 
   347 	test_Value(r, r == KErrPermissionDenied); 
   347 
   348 
   348 	r=TheFs.RealName(_L("O:\\File.XXX"),realName);
   349 	r=TheFs.RealName(_L("O:\\File.XXX"),realName);
   349 	test(r==KErrNone);
   350 	test_KErrNone(r);
   350 
   351 
   351 	r=TheFs.SetSessionPath(pritestname);
   352 	r=TheFs.SetSessionPath(pritestname);
   352 	test(r==KErrNone);
   353 	test_KErrNone(r);
   353 
   354 
   354 	TheFs.NotifyChange(ENotifyAll,aStat2,pritestname);
   355 	TheFs.NotifyChange(ENotifyAll,aStat2,pritestname);
   355 	test(aStat2==KRequestPending);
   356 	test(aStat2==KRequestPending);
   356 
   357 
   357 	pritestfile=KPrivatePath;
   358 	pritestfile=KPrivatePath;
   362 	
   363 	
   363 	oldName=KOldFile;
   364 	oldName=KOldFile;
   364 	oldName[0]=(TText)gDriveToTest;
   365 	oldName[0]=(TText)gDriveToTest;
   365 
   366 
   366 	r=TheFs.GetShortName(pritestfile, shortfilename);
   367 	r=TheFs.GetShortName(pritestfile, shortfilename);
   367 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   368 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   368 
   369 
   369 	r=TheFs.GetLongName(pritestfile1, longfilename);
   370 	r=TheFs.GetLongName(pritestfile1, longfilename);
   370 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   371 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   371 
   372 
   372 	r=file1.Create(TheFs,oldName,EFileWrite);
   373 	r=file1.Create(TheFs,oldName,EFileWrite);
   373 	test(r==KErrNone || r==KErrAlreadyExists);
   374 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   374 	file1.Close();
   375 	file1.Close();
   375 
   376 
   376 	r=TheFs.Replace(oldName,pritestfile);
   377 	r=TheFs.Replace(oldName,pritestfile);
   377 	test(r==KErrNone);
   378 	test_KErrNone(r);
   378 	
   379 	
   379 	r=TheFs.Rename(pritestfile,pritestfile1);
   380 	r=TheFs.Rename(pritestfile,pritestfile1);
   380 	test(r==KErrNone || r==KErrAlreadyExists);
   381 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   381 	
   382 	
   382 	r=TheFs.Entry(pritestfile1,entry);
   383 	r=TheFs.Entry(pritestfile1,entry);
   383 	test(r==KErrNone);
   384 	test_KErrNone(r);
   384 
   385 
   385 	r=TheFs.SetEntry(pritestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   386 	r=TheFs.SetEntry(pritestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   386 	test(r==KErrNone);
   387 	test_KErrNone(r);
   387 
   388 
   388 	r=TheFs.Delete(pritestfile1);
   389 	r=TheFs.Delete(pritestfile1);
   389 	test(r==KErrNone);
   390 	test_KErrNone(r);
   390 
   391 
   391 	}
   392 	}
   392 
   393 
   393 
   394 
   394 LOCAL_C void privateSIDRFstest()
   395 LOCAL_C void privateSIDRFstest()
   403 
   404 
   404 	mkdirname.Zero();
   405 	mkdirname.Zero();
   405 	mkdirname.Append(theprivatepath);
   406 	mkdirname.Append(theprivatepath);
   406 	mkdirname.Append(KMkDirSub);
   407 	mkdirname.Append(KMkDirSub);
   407 	r=TheFs.MkDirAll(mkdirname);	
   408 	r=TheFs.MkDirAll(mkdirname);	
   408 	test(r==KErrNone);
   409 	test_KErrNone(r);
   409 
   410 
   410 	r=TheFs.RmDir(mkdirname);	
   411 	r=TheFs.RmDir(mkdirname);	
   411 	test(r==KErrNone);
   412 	test_KErrNone(r);
   412 
   413 
   413 	r=TheFs.SetSubst(theprivatepath,EDriveO);	
   414 	r=TheFs.SetSubst(theprivatepath,EDriveO);	
   414 	test(r==KErrPermissionDenied);
   415 	test_Value(r, r == KErrPermissionDenied);
   415 
   416 
   416 	r=TheFs.RealName(_L("O:\\File.XXX"),realName);
   417 	r=TheFs.RealName(_L("O:\\File.XXX"),realName);
   417 	test(r==KErrNone);
   418 	test_KErrNone(r);
   418 
   419 
   419 	r=TheFs.SetSessionPath(theprivatepath);
   420 	r=TheFs.SetSessionPath(theprivatepath);
   420 	test(r==KErrNone);
   421 	test_KErrNone(r);
   421 
   422 
   422 	TheFs.NotifyChange(ENotifyAll,aStat3,theprivatepath);
   423 	TheFs.NotifyChange(ENotifyAll,aStat3,theprivatepath);
   423 	test(aStat3==KRequestPending);
   424 	test(aStat3==KRequestPending);
   424 
   425 
   425 	pritestfile=theprivatepath;
   426 	pritestfile=theprivatepath;
   430 	
   431 	
   431 	oldName=KOldFile;
   432 	oldName=KOldFile;
   432 	oldName[0]=(TText)gDriveToTest;
   433 	oldName[0]=(TText)gDriveToTest;
   433 
   434 
   434 	r=TheFs.GetShortName(pritestfile, shortfilename);
   435 	r=TheFs.GetShortName(pritestfile, shortfilename);
   435 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   436 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   436 
   437 
   437 	r=TheFs.GetLongName(pritestfile1, longfilename);
   438 	r=TheFs.GetLongName(pritestfile1, longfilename);
   438 	test(r==KErrNone || r==KErrNotFound || r==KErrNotSupported);
   439 	test_Value(r, r == KErrNone || r==KErrNotFound || r==KErrNotSupported);
   439 
   440 
   440 	r=file1.Create(TheFs,oldName,EFileWrite);
   441 	r=file1.Create(TheFs,oldName,EFileWrite);
   441 	test(r==KErrNone || r==KErrAlreadyExists);
   442 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   442 	file1.Close();
   443 	file1.Close();
   443 
   444 
   444 	r=TheFs.Replace(oldName,pritestfile);
   445 	r=TheFs.Replace(oldName,pritestfile);
   445 	test(r==KErrNone);
   446 	test_KErrNone(r);
   446 	
   447 	
   447 	r=TheFs.Rename(pritestfile,pritestfile1);
   448 	r=TheFs.Rename(pritestfile,pritestfile1);
   448 	test(r==KErrNone || r==KErrAlreadyExists);
   449 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   449 	
   450 	
   450 	r=TheFs.Entry(pritestfile1,entry);
   451 	r=TheFs.Entry(pritestfile1,entry);
   451 	test(r==KErrNone);
   452 	test_KErrNone(r);
   452 
   453 
   453 	r=TheFs.SetEntry(pritestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   454 	r=TheFs.SetEntry(pritestfile1,testtime,KEntryAttNormal,KEntryAttReadOnly);
   454 	test(r==KErrNone);
   455 	test_KErrNone(r);
   455 
   456 
   456 	r=TheFs.Delete(pritestfile1);
   457 	r=TheFs.Delete(pritestfile1);
   457 	test(r==KErrNone);
   458 	test_KErrNone(r);
   458 
   459 
   459 	}
   460 	}
   460 
   461 
   461 
   462 
   462 LOCAL_C void systemRFiletest()
   463 LOCAL_C void systemRFiletest()
   465 //
   466 //
   466 	{
   467 	{
   467 
   468 
   468 
   469 
   469 	r=TheFs.SetSessionPath(systestname);
   470 	r=TheFs.SetSessionPath(systestname);
   470 	test(r==KErrNone);
   471 	test_KErrNone(r);
   471 
   472 
   472 	r=file1.Temp(TheFs,systestname,fromTemp,EFileWrite);
   473 	r=file1.Temp(TheFs,systestname,fromTemp,EFileWrite);
   473 	test(r==KErrPermissionDenied);
   474 	test_Value(r, r == KErrPermissionDenied);
   474 
   475 
   475 
   476 
   476 	TBuf<25> sysfilename;
   477 	TBuf<25> sysfilename;
   477 	sysfilename.Append(systestname);
   478 	sysfilename.Append(systestname);
   478 	sysfilename.Append(KFileSys);
   479 	sysfilename.Append(KFileSys);
   479 
   480 
   480 	r=file1.Create(TheFs,sysfilename,EFileWrite);
   481 	r=file1.Create(TheFs,sysfilename,EFileWrite);
   481 	test(r==KErrPermissionDenied);
   482 	test_Value(r, r == KErrPermissionDenied);
   482 
   483 
   483 	r=file1.Open(TheFs,sysfilename,EFileWrite);
   484 	r=file1.Open(TheFs,sysfilename,EFileWrite);
   484 	test(r==KErrPermissionDenied);
   485 	test_Value(r, r == KErrPermissionDenied);
   485 
   486 
   486 	// DEF113117
   487 	// DEF113117
   487 	r=file1.Open(TheFs, KSysBinFile, EFileShareReadersOnly | EFileRead | EFileReadBuffered);
   488 	r=file1.Open(TheFs, KSysBinFile, EFileShareReadersOnly | EFileRead | EFileReadBuffered);
   488 	test(r==KErrNone);
   489 	test_KErrNone(r);
   489 	file1.Close();
   490 	file1.Close();
   490 
   491 
   491 	r=file1.Open(TheFs, KSysBinFile, EFileStreamText | EFileReadBuffered | EFileReadAheadOn);
   492 	r=file1.Open(TheFs, KSysBinFile, EFileStreamText | EFileReadBuffered | EFileReadAheadOn);
   492 	test(r==KErrNone);
   493 	test_KErrNone(r);
   493 	file1.Close();
   494 	file1.Close();
   494 
   495 
   495 	r=file1.Open(TheFs, KSysBinFile, EFileStreamText | EFileShareReadersOnly);
   496 	r=file1.Open(TheFs, KSysBinFile, EFileStreamText | EFileShareReadersOnly);
   496 	test(r==KErrNone);
   497 	test_KErrNone(r);
   497 	file1.Close();
   498 	file1.Close();
   498 
   499 
   499 	r=file1.Open(TheFs,sysfilename,EFileRead);
   500 	r=file1.Open(TheFs,sysfilename,EFileRead);
   500 	test(r==KErrNone || r==KErrNotFound);
   501 	test_Value(r, r == KErrNone || r==KErrNotFound);
   501 
   502 
   502 	r=file1.Replace(TheFs,sysfilename,EFileWrite);
   503 	r=file1.Replace(TheFs,sysfilename,EFileWrite);
   503 	test(r==KErrPermissionDenied);
   504 	test_Value(r, r == KErrPermissionDenied);
   504 
   505 
   505     TFindFile finder(TheFs);
   506     TFindFile finder(TheFs);
   506     CDir* dir = NULL;
   507     CDir* dir = NULL;
   507     r=finder.FindWildByDir(KWildFile, KWildPath, dir);
   508     r=finder.FindWildByDir(KWildFile, KWildPath, dir);
   508 	if (!(r==KErrNone))
   509 	if (!(r==KErrNone))
   509         test.Printf(_L("T_DCALLFILES: test find wildcards r = %d (expected KErrNone)\n"), r);
   510         test.Printf(_L("T_DCALLFILES: test find wildcards r = %d (expected KErrNone)\n"), r);
   510 	test(r==KErrNone || r==KErrNotFound);
   511 	test_Value(r, r == KErrNone || r==KErrNotFound);
   511 	delete dir;
   512 	delete dir;
   512 	}
   513 	}
   513 
   514 
   514 
   515 
   515 LOCAL_C void resourceRFiletest()
   516 LOCAL_C void resourceRFiletest()
   517 //RFile testing with session path set to //resource//
   518 //RFile testing with session path set to //resource//
   518 //
   519 //
   519 	{
   520 	{
   520 
   521 
   521 	r=TheFs.SetSessionPath(restestname);
   522 	r=TheFs.SetSessionPath(restestname);
   522 	test(r==KErrNone);
   523 	test_KErrNone(r);
   523 
   524 
   524 	r=file1.Temp(TheFs,restestname,fromTemp,EFileWrite);
   525 	r=file1.Temp(TheFs,restestname,fromTemp,EFileWrite);
   525 	test(r==KErrPermissionDenied);
   526 	test_Value(r, r == KErrPermissionDenied);
   526 	file1.Close();
   527 	file1.Close();
   527 
   528 
   528 	r=file1.Create(TheFs,KFileRes,EFileWrite);
   529 	r=file1.Create(TheFs,KFileRes,EFileWrite);
   529 	test(r==KErrPermissionDenied);
   530 	test_Value(r, r == KErrPermissionDenied);
   530 	file1.Close();
   531 	file1.Close();
   531 
   532 
   532 	r=file1.Open(TheFs,KFileRes,EFileWrite);
   533 	r=file1.Open(TheFs,KFileRes,EFileWrite);
   533 	test(r==KErrPermissionDenied);
   534 	test_Value(r, r == KErrPermissionDenied);
   534 	file1.Close();
   535 	file1.Close();
   535 
   536 
   536 	r=file1.Open(TheFs,KFileRes,EFileRead|EFileShareReadersOnly);
   537 	r=file1.Open(TheFs,KFileRes,EFileRead|EFileShareReadersOnly);
   537 	test(r==KErrNone || r==KErrNotFound);
   538 	test_Value(r, r == KErrNone || r==KErrNotFound);
   538 	file1.Close();
   539 	file1.Close();
   539 
   540 
   540 	r=file1.Open(TheFs,KFileRes,EFileShareReadersOrWriters|EFileRead);
   541 	r=file1.Open(TheFs,KFileRes,EFileShareReadersOrWriters|EFileRead);
   541 	test(r==KErrNone || r==KErrNotFound);
   542 	test_Value(r, r == KErrNone || r==KErrNotFound);
   542 	file1.Close();
   543 	file1.Close();
   543 
   544 
   544 	r=file1.Open(TheFs,KFileRes,EFileShareReadersOrWriters|EFileWrite);
   545 	r=file1.Open(TheFs,KFileRes,EFileShareReadersOrWriters|EFileWrite);
   545 	test(r==KErrPermissionDenied);
   546 	test_Value(r, r == KErrPermissionDenied);
   546 	file1.Close();
   547 	file1.Close();
   547 
   548 
   548 	r=file1.Open(TheFs,KFileRes,EFileShareReadersOnly);
   549 	r=file1.Open(TheFs,KFileRes,EFileShareReadersOnly);
   549 	test(r==KErrNone || r==KErrNotFound);
   550 	test_Value(r, r == KErrNone || r==KErrNotFound);
   550 
   551 
   551 	r=file1.ChangeMode(EFileShareExclusive);	//this is not illegal though will prevent shared access to resource which is nit my fault but may be desirable to prevent
   552 	r=file1.ChangeMode(EFileShareExclusive);	//this is not illegal though will prevent shared access to resource which is nit my fault but may be desirable to prevent
   552 	test(r==KErrNone);
   553 	test_KErrNone(r);
   553 
   554 
   554 	//this operation is prevented as you can not open a file for write access in the resource directory
   555 	//this operation is prevented as you can not open a file for write access in the resource directory
   555 	r=file1.Rename(KFileRes3);
   556 	r=file1.Rename(KFileRes3);
   556 	test(r==KErrPermissionDenied);
   557 	test_Value(r, r == KErrPermissionDenied);
   557 	file1.Close();
   558 	file1.Close();
   558 
   559 
   559 	r=file1.Replace(TheFs,KFileRes,EFileWrite);
   560 	r=file1.Replace(TheFs,KFileRes,EFileWrite);
   560 	test(r==KErrPermissionDenied);
   561 	test_Value(r, r == KErrPermissionDenied);
   561 	file1.Close();	
   562 	file1.Close();	
   562 
   563 
   563 	}
   564 	}
   564 
   565 
   565 
   566 
   568 //RFile testing with session path set to //Private//FalseID
   569 //RFile testing with session path set to //Private//FalseID
   569 //
   570 //
   570 	{
   571 	{
   571 
   572 
   572 	r=TheFs.SetSessionPath(pritestfalseidname);
   573 	r=TheFs.SetSessionPath(pritestfalseidname);
   573 	test(r==KErrNone);
   574 	test_KErrNone(r);
   574 
   575 
   575 	r=file1.Temp(TheFs,pritestfalseidname,fromTemp,EFileWrite);
   576 	r=file1.Temp(TheFs,pritestfalseidname,fromTemp,EFileWrite);
   576 	test(r==KErrNone);
   577 	test_KErrNone(r);
   577 	file1.Close();
   578 	file1.Close();
   578 
   579 
   579 	r=file1.Create(TheFs,KFilePri,EFileWrite);
   580 	r=file1.Create(TheFs,KFilePri,EFileWrite);
   580 	test(r==KErrNone);
   581 	test_KErrNone(r);
   581 	file1.Close();
   582 	file1.Close();
   582 
   583 
   583 	r=file1.Open(TheFs,KFilePri,EFileWrite);
   584 	r=file1.Open(TheFs,KFilePri,EFileWrite);
   584 	test(r==KErrNone);
   585 	test_KErrNone(r);
   585 	file1.Close();
   586 	file1.Close();
   586 	
   587 	
   587 	r=file1.Open(TheFs,KFilePri,EFileRead);
   588 	r=file1.Open(TheFs,KFilePri,EFileRead);
   588 	test(r==KErrNone);
   589 	test_KErrNone(r);
   589 	file1.Close();
   590 	file1.Close();
   590 		
   591 		
   591 	r=file1.Replace(TheFs,KFilePri,EFileWrite);
   592 	r=file1.Replace(TheFs,KFilePri,EFileWrite);
   592 	test(r==KErrNone);
   593 	test_KErrNone(r);
   593 	
   594 	
   594 	r=file1.Rename(KFilePri3);
   595 	r=file1.Rename(KFilePri3);
   595 	test(r==KErrNone || r== KErrAlreadyExists);
   596 	test_Value(r, r == KErrNone || r== KErrAlreadyExists);
   596 	file1.Close();
   597 	file1.Close();
   597 	}
   598 	}
   598 
   599 
   599 
   600 
   600 
   601 
   603 //RFile testing with session path set to //Private//
   604 //RFile testing with session path set to //Private//
   604 //
   605 //
   605 	{
   606 	{
   606 
   607 
   607 	r=TheFs.SetSessionPath(pritestname);
   608 	r=TheFs.SetSessionPath(pritestname);
   608 	test(r==KErrNone);
   609 	test_KErrNone(r);
   609 
   610 
   610 	r=file1.Temp(TheFs,pritestname,fromTemp,EFileWrite);
   611 	r=file1.Temp(TheFs,pritestname,fromTemp,EFileWrite);
   611 	test(r==KErrNone);
   612 	test_KErrNone(r);
   612 	file1.Close();
   613 	file1.Close();
   613 
   614 
   614 	r=file1.Create(TheFs,KFilePri,EFileWrite);
   615 	r=file1.Create(TheFs,KFilePri,EFileWrite);
   615 	test(r==KErrNone);
   616 	test_KErrNone(r);
   616 	file1.Close();
   617 	file1.Close();
   617 
   618 
   618 	r=file1.Open(TheFs,KFilePri,EFileWrite);
   619 	r=file1.Open(TheFs,KFilePri,EFileWrite);
   619 	test(r==KErrNone);
   620 	test_KErrNone(r);
   620 	file1.Close();
   621 	file1.Close();
   621 	
   622 	
   622 	r=file1.Open(TheFs,KFilePri,EFileRead);
   623 	r=file1.Open(TheFs,KFilePri,EFileRead);
   623 	test(r==KErrNone);
   624 	test_KErrNone(r);
   624 	file1.Close();
   625 	file1.Close();
   625 
   626 
   626 	r=file1.Replace(TheFs,KFilePri,EFileWrite);
   627 	r=file1.Replace(TheFs,KFilePri,EFileWrite);
   627 	test(r==KErrNone);
   628 	test_KErrNone(r);
   628 	
   629 	
   629 	r=file1.Rename(KFilePri3);
   630 	r=file1.Rename(KFilePri3);
   630 	test(r==KErrNone || r== KErrAlreadyExists);
   631 	test_Value(r, r == KErrNone || r== KErrAlreadyExists);
   631 	file1.Close();
   632 	file1.Close();
   632 	}
   633 	}
   633 
   634 
   634 
   635 
   635 LOCAL_C void privateSIDRFiletest()
   636 LOCAL_C void privateSIDRFiletest()
   638 //
   639 //
   639 	{
   640 	{
   640 //Rfile Testing with session path set to //Private//UID//
   641 //Rfile Testing with session path set to //Private//UID//
   641 
   642 
   642 	r=TheFs.SetSessionToPrivate(gTheDriveNum);
   643 	r=TheFs.SetSessionToPrivate(gTheDriveNum);
   643 	test(r==KErrNone);
   644 	test_KErrNone(r);
   644 		
   645 		
   645 	r=file1.Temp(TheFs,theprivatepath,fromTemp,EFileWrite);
   646 	r=file1.Temp(TheFs,theprivatepath,fromTemp,EFileWrite);
   646 	test(r==KErrNone);
   647 	test_KErrNone(r);
   647 	file1.Close();
   648 	file1.Close();
   648 
   649 
   649 	r=file1.Create(TheFs,KFilePri,EFileWrite);
   650 	r=file1.Create(TheFs,KFilePri,EFileWrite);
   650 	test(r==KErrNone);
   651 	test_KErrNone(r);
   651 	file1.Close();
   652 	file1.Close();
   652 
   653 
   653 	r=file1.Open(TheFs,KFilePri,EFileWrite);
   654 	r=file1.Open(TheFs,KFilePri,EFileWrite);
   654 	test(r==KErrNone);
   655 	test_KErrNone(r);
   655 	file1.Close();
   656 	file1.Close();
   656 	
   657 	
   657 	r=file1.Open(TheFs,KFilePri,EFileRead);
   658 	r=file1.Open(TheFs,KFilePri,EFileRead);
   658 	test(r==KErrNone);
   659 	test_KErrNone(r);
   659 	file1.Close();
   660 	file1.Close();
   660 		
   661 		
   661 	r=file1.Replace(TheFs,KFilePri,EFileWrite);
   662 	r=file1.Replace(TheFs,KFilePri,EFileWrite);
   662 	test(r==KErrNone);
   663 	test_KErrNone(r);
   663 	
   664 	
   664 	r=file1.Rename(KFilePri3);
   665 	r=file1.Rename(KFilePri3);
   665 	test(r==KErrNone || r==KErrAlreadyExists);
   666 	test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   666 	file1.Close();
   667 	file1.Close();
   667 
   668 
   668 	}
   669 	}
   669 
   670 
   670 
   671 
   676 	//system
   677 	//system
   677 	dirNameBuf.Zero();
   678 	dirNameBuf.Zero();
   678 	dirNameBuf = KSystemPath;
   679 	dirNameBuf = KSystemPath;
   679 	dirNameBuf[0]=(TText)gDriveToTest;
   680 	dirNameBuf[0]=(TText)gDriveToTest;
   680 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   681 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   681 	test(r==KErrNone || r==KErrNotFound);
   682 	test_Value(r, r == KErrNone || r==KErrNotFound);
   682 	dir.Close();
   683 	dir.Close();
   683 
   684 
   684 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   685 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   685 	test(r==KErrNone);
   686 	test_KErrNone(r);
   686 	delete dirEntries;
   687 	delete dirEntries;
   687 
   688 
   688 	dirNameBuf.Zero();
   689 	dirNameBuf.Zero();
   689 	//Private//falseID
   690 	//Private//falseID
   690 	dirNameBuf=KPrivateFalseID;
   691 	dirNameBuf=KPrivateFalseID;
   691 	dirNameBuf[0]=(TText)gDriveToTest;
   692 	dirNameBuf[0]=(TText)gDriveToTest;
   692 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   693 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   693 	test(r==KErrNone);
   694 	test_KErrNone(r);
   694 	dir.Close();
   695 	dir.Close();
   695 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   696 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   696 	test(r==KErrNone);
   697 	test_KErrNone(r);
   697 	dirNameBuf.Zero();
   698 	dirNameBuf.Zero();
   698 	delete dirEntries;
   699 	delete dirEntries;
   699 	//Private
   700 	//Private
   700 	dirNameBuf=KPrivatePath;
   701 	dirNameBuf=KPrivatePath;
   701 	dirNameBuf[0]=(TText)gDriveToTest;
   702 	dirNameBuf[0]=(TText)gDriveToTest;
   702 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   703 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   703 	test(r==KErrNone);
   704 	test_KErrNone(r);
   704 	dir.Close();
   705 	dir.Close();
   705 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   706 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   706 	test(r==KErrNone);
   707 	test_KErrNone(r);
   707 	dirNameBuf.Zero();
   708 	dirNameBuf.Zero();
   708 	delete dirEntries;
   709 	delete dirEntries;
   709 	//Private/uid
   710 	//Private/uid
   710 	TheFs.PrivatePath(dirNameBuf);
   711 	TheFs.PrivatePath(dirNameBuf);
   711 	dirNameBuf.Insert(0,_L("?:"));
   712 	dirNameBuf.Insert(0,_L("?:"));
   712 	dirNameBuf[0]=(TText)gDriveToTest;
   713 	dirNameBuf[0]=(TText)gDriveToTest;
   713 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   714 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   714 	test(r==KErrNone);
   715 	test_KErrNone(r);
   715 	dir.Close();
   716 	dir.Close();
   716 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   717 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   717 	test(r==KErrNone);
   718 	test_KErrNone(r);
   718 	dirNameBuf.Zero();
   719 	dirNameBuf.Zero();
   719 	delete dirEntries;
   720 	delete dirEntries;
   720 	//Resource
   721 	//Resource
   721 	dirNameBuf=KResourcePath;
   722 	dirNameBuf=KResourcePath;
   722 	dirNameBuf[0]=(TText)gDriveToTest;
   723 	dirNameBuf[0]=(TText)gDriveToTest;
   723 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   724 	r=dir.Open(TheFs,dirNameBuf,KEntryAttNormal);
   724 	test(r==KErrNone || r==KErrNotFound);
   725 	test_Value(r, r == KErrNone || r==KErrNotFound);
   725 
   726 
   726 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   727 	r=TheFs.GetDir(dirNameBuf,KEntryAttMatchMask,ESortByName,dirEntries);
   727 	test(r==KErrNone);
   728 	test_KErrNone(r);
   728 	delete dirEntries;
   729 	delete dirEntries;
   729 	dir.Close();
   730 	dir.Close();
   730 	}
   731 	}
   731 
   732 
   732 
   733 
   737 //
   738 //
   738 //	Test with only AllFiles Capability
   739 //	Test with only AllFiles Capability
   739 //
   740 //
   740 	{
   741 	{
   741 	r=TheFs.FileSystemName(fsname,gTheDriveNum);
   742 	r=TheFs.FileSystemName(fsname,gTheDriveNum);
   742 	test(r==KErrNone);
   743 	test_KErrNone(r);
   743 	r=TheFs.DismountFileSystem(fsname,gTheDriveNum);
   744 	r=TheFs.DismountFileSystem(fsname,gTheDriveNum);
   744 	test(r==KErrPermissionDenied);
   745 	test_Value(r, r == KErrPermissionDenied);
   745 //	r=TheFs.RemoveFileSystem(fsname);	//can not test due to bug else where fix exists
   746 //	r=TheFs.RemoveFileSystem(fsname);	//can not test due to bug else where fix exists
   746 //	test(r==KErrPermissionDenied);
   747 //	test_Value(r, r == KErrPermissionDenied);
   747 //	r=TheFs.AddFileSystem(fsname);
   748 //	r=TheFs.AddFileSystem(fsname);
   748 //	test(r==KErrPermissionDenied);
   749 //	test_Value(r, r == KErrPermissionDenied);
   749 	r=TheFs.MountFileSystem(fsname,gTheDriveNum);
   750 	r=TheFs.MountFileSystem(fsname,gTheDriveNum);
   750 	test(r==KErrPermissionDenied);
   751 	test_Value(r, r == KErrPermissionDenied);
   751 	r=TheFs.SetDriveName(gTheDriveNum,KDriveName);
   752 	r=TheFs.SetDriveName(gTheDriveNum,KDriveName);
   752 	test(r==KErrPermissionDenied);
   753 	test_Value(r, r == KErrPermissionDenied);
   753 //	r=TheFs.SetVolumeLabel(KVolLable, gTheDriveNum);
   754 //	r=TheFs.SetVolumeLabel(KVolLable, gTheDriveNum);
   754 //	test(r==KErrNone);
   755 //	test_KErrNone(r);
   755 
   756 
   756 	systemRFstest();
   757 	systemRFstest();
   757 	resourceRFstest();
   758 	resourceRFstest();
   758 	privateRFstest();
   759 	privateRFstest();
   759 	privateSIDRFstest();
   760 	privateSIDRFstest();
   779 	test(aStat2==KErrNone);
   780 	test(aStat2==KErrNone);
   780 	test(aStat3==KErrNone);
   781 	test(aStat3==KErrNone);
   781 	
   782 	
   782 
   783 
   783 	r=TheFs.SetSessionPath(systestname);
   784 	r=TheFs.SetSessionPath(systestname);
   784 	test(r==KErrNone);
   785 	test_KErrNone(r);
   785 	
   786 	
   786 //Test RRawDisk class
   787 //Test RRawDisk class
   787 	r=rawdisk.Open(TheFs,gTheDriveNum);
   788 	r=rawdisk.Open(TheFs,gTheDriveNum);
   788 	test(r==KErrPermissionDenied);
   789 	test_Value(r, r == KErrPermissionDenied);
   789 
   790 
   790 	r=format.Open(TheFs,driveBuf,EHighDensity,count);
   791 	r=format.Open(TheFs,driveBuf,EHighDensity,count);
   791 	test(r==KErrPermissionDenied);
   792 	test_Value(r, r == KErrPermissionDenied);
   792 
   793 
   793 	RDirtest();
   794 	RDirtest();
   794 
   795 
   795 	driveBuf[0]=(TText)gDriveToTest;
   796 	driveBuf[0]=(TText)gDriveToTest;
   796 	r=TheFs.ScanDrive(driveBuf);
   797 	r=TheFs.ScanDrive(driveBuf);
   797 	test(r==KErrPermissionDenied);
   798 	test_Value(r, r == KErrPermissionDenied);
   798 	r=TheFs.CheckDisk(driveBuf);
   799 	r=TheFs.CheckDisk(driveBuf);
   799 	test(r==KErrPermissionDenied);
   800 	test_Value(r, r == KErrPermissionDenied);
   800 	}
   801 	}
   801 
   802 
   802 LOCAL_C void TestCaps()
   803 LOCAL_C void TestCaps()
   803 //
   804 //
   804 //	test format etc that require certain capabilities
   805 //	test format etc that require certain capabilities
   810 	r=RProcess().HasCapability(ECapabilityAllFiles, __PLATSEC_DIAGNOSTIC_STRING(myDiagMsg));
   811 	r=RProcess().HasCapability(ECapabilityAllFiles, __PLATSEC_DIAGNOSTIC_STRING(myDiagMsg));
   811 	test(r);
   812 	test(r);
   812 
   813 
   813 	driveBuf[0]=(TText)gDriveToTest;
   814 	driveBuf[0]=(TText)gDriveToTest;
   814 	r=TheFs.SessionPath(temp);
   815 	r=TheFs.SessionPath(temp);
   815 	test(r==KErrNone);
   816 	test_KErrNone(r);
   816 
   817 
   817 	test.Printf(_L("Session path: %S"),&temp);
   818 	test.Printf(_L("Session path: %S"),&temp);
   818 
   819 
   819 	r=TheFs.CreatePrivatePath(gTheDriveNum);
   820 	r=TheFs.CreatePrivatePath(gTheDriveNum);
   820 	test(r==KErrNone || r== KErrAlreadyExists);
   821 	test_Value(r, r == KErrNone || r== KErrAlreadyExists);
   821 
   822 
   822 	TBuf<18> tempPri;
   823 	TBuf<18> tempPri;
   823 	r=TheFs.PrivatePath(tempPri);
   824 	r=TheFs.PrivatePath(tempPri);
   824 	test(r==KErrNone);
   825 	test_KErrNone(r);
   825 	theprivatepath = _L("?:");
   826 	theprivatepath = _L("?:");
   826 	theprivatepath.Append(tempPri);
   827 	theprivatepath.Append(tempPri);
   827 
   828 
   828 	testAllFiles();
   829 	testAllFiles();
   829 
   830 
   830 	TFileName thesessionpath;
   831 	TFileName thesessionpath;
   831 	r=TheFs.SetSessionToPrivate(gTheDriveNum);
   832 	r=TheFs.SetSessionToPrivate(gTheDriveNum);
   832 	test(r==KErrNone);
   833 	test_KErrNone(r);
   833 	r=TheFs.SessionPath(thesessionpath);
   834 	r=TheFs.SessionPath(thesessionpath);
   834 	test(r==KErrNone);
   835 	test_KErrNone(r);
   835 	test(thesessionpath == theprivatepath);
   836 	test(thesessionpath == theprivatepath);
   836 	}
   837 	}
   837 
   838 
   838 TFileName dirName;
   839 TFileName dirName;
   839 
   840 
   840 LOCAL_C void ScanDir(const TDesC& aName, CDirScan::TScanDirection aDirection, TInt aError)
   841 LOCAL_C void ScanDir(const TDesC& aName, CDirScan::TScanDirection aDirection, TInt aError)
   841 	{
   842 	{
   842 	CDirScan* scanner = NULL;
   843 	CDirScan* scanner = NULL;
   843 	TRAP(r, scanner = CDirScan::NewL(TheFs));
   844 	TRAP(r, scanner = CDirScan::NewL(TheFs));
   844 	test(r == KErrNone && scanner);
   845 	test_Value(r, r == KErrNone && scanner);
   845 
   846 
   846 	TRAP(r, scanner->SetScanDataL(aName,KEntryAttDir,ESortByName|EAscending,aDirection));
   847 	TRAP(r, scanner->SetScanDataL(aName,KEntryAttDir,ESortByName|EAscending,aDirection));
   847 	test(r == KErrNone);
   848 	test_KErrNone(r);
   848 	
   849 	
   849 	CDir *entryList=NULL;
   850 	CDir *entryList=NULL;
   850 	for (;;)
   851 	for (;;)
   851 		{
   852 		{
   852 		TRAP(r, scanner->NextL(entryList));
   853 		TRAP(r, scanner->NextL(entryList));
   853 		test(r == aError);
   854 		test_Value(r, r == aError);
   854 		if (entryList==NULL)
   855 		if (entryList==NULL)
   855 			break;
   856 			break;
   856 		TInt count=entryList->Count();
   857 		TInt count=entryList->Count();
   857 		while (count--)
   858 		while (count--)
   858 			{
   859 			{
   886 		TBuf<30> privatepath;
   887 		TBuf<30> privatepath;
   887 		r=TheFs.PrivatePath(privatepath);
   888 		r=TheFs.PrivatePath(privatepath);
   888 		test.Printf(_L("Private Path is=%S"),&privatepath);
   889 		test.Printf(_L("Private Path is=%S"),&privatepath);
   889 		
   890 		
   890 		r = TheFs.MkDir(_L("\\Caged\\"));
   891 		r = TheFs.MkDir(_L("\\Caged\\"));
   891 		test(r==KErrNone || r==KErrAlreadyExists);
   892 		test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   892 		
   893 		
   893 		CDir* entryCount=NULL;
   894 		CDir* entryCount=NULL;
   894 		r=TheFs.GetDir(_L("\\*.*"),KEntryAttNormal,ESortNone,entryCount);
   895 		r=TheFs.GetDir(_L("\\*.*"),KEntryAttNormal,ESortNone,entryCount);
   895 		test(r==KErrNone);
   896 		test_KErrNone(r);
   896 		TInt rootCount= entryCount->Count();
   897 		TInt rootCount= entryCount->Count();
   897 		
   898 		
   898 		delete entryCount;
   899 		delete entryCount;
   899 		entryCount=NULL;
   900 		entryCount=NULL;
   900 
   901 
   901 
   902 
   902 		//Testing Copy
   903 		//Testing Copy
   903 		CDir* entryCount2=NULL;
   904 		CDir* entryCount2=NULL;
   904 		r=fMan->Copy(_L("\\sys\\"),_L("\\Caged\\"));
   905 		r=fMan->Copy(_L("\\sys\\"),_L("\\Caged\\"));
   905 		test(r == KErrNotFound);
   906 		test_Value(r, r == KErrNotFound);
   906 		r=fMan->Copy(_L("\\*"),_L("\\Caged\\"));
   907 		r=fMan->Copy(_L("\\*"),_L("\\Caged\\"));
   907 		test(r == KErrNone);
   908 		test_KErrNone(r);
   908 		
   909 		
   909 		r=TheFs.GetDir(_L("\\Caged\\*.*"),KEntryAttNormal,ESortNone,entryCount2);
   910 		r=TheFs.GetDir(_L("\\Caged\\*.*"),KEntryAttNormal,ESortNone,entryCount2);
   910 		test(r==KErrNone);
   911 		test_KErrNone(r);
   911 		TInt cagedCount= entryCount2->Count();
   912 		TInt cagedCount= entryCount2->Count();
   912 		
   913 		
   913 		test(cagedCount==rootCount);
   914 		test(cagedCount==rootCount);
   914 		
   915 		
   915 		delete entryCount2;
   916 		delete entryCount2;
   916 		entryCount2=NULL;
   917 		entryCount2=NULL;
   917 
   918 
   918 	
   919 	
   919 		r=fMan->Copy(_L("\\private\\two\\moo"),_L("\\private\\two\\mew")); 
   920 		r=fMan->Copy(_L("\\private\\two\\moo"),_L("\\private\\two\\mew")); 
   920 		test(r == KErrPathNotFound);
   921 		test_Value(r, r == KErrPathNotFound);
   921 	
   922 	
   922 		// Create a test file
   923 		// Create a test file
   923 		RFile testFile;
   924 		RFile testFile;
   924 		r = testFile.Replace(TheFs, _L("\\capTest"),EFileWrite);
   925 		r = testFile.Replace(TheFs, _L("\\capTest"),EFileWrite);
   925 		test(r==KErrNone || r==KErrAlreadyExists);
   926 		test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   926 		testFile.Close();
   927 		testFile.Close();
   927 		
   928 		
   928 		TFileName name;
   929 		TFileName name;
   929 		name = privatepath;
   930 		name = privatepath;
   930 		name.Append(_L("privateFile.tst"));
   931 		name.Append(_L("privateFile.tst"));
   931 		RFile privateFile;
   932 		RFile privateFile;
   932 		r = privateFile.Replace(TheFs, name,EFileWrite);
   933 		r = privateFile.Replace(TheFs, name,EFileWrite);
   933 		test(r==KErrNone || r==KErrAlreadyExists);
   934 		test_Value(r, r == KErrNone || r==KErrAlreadyExists);
   934 		privateFile.Close();
   935 		privateFile.Close();
   935 
   936 
   936 	
   937 	
   937 		r=fMan->Copy(_L("\\capTest"),_L("\\private\\to\\moo")); 
   938 		r=fMan->Copy(_L("\\capTest"),_L("\\private\\to\\moo")); 
   938 		test(r == KErrPathNotFound);
   939 		test_Value(r, r == KErrPathNotFound);
   939 		r=fMan->Copy(_L("\\capTest"),_L("\\sys\\bin\\moo")); 
   940 		r=fMan->Copy(_L("\\capTest"),_L("\\sys\\bin\\moo")); 
   940 		test(r == KErrPermissionDenied); 
   941 		test_Value(r, r == KErrPermissionDenied); 
   941 		r=fMan->Copy(_L("\\sys\\bin\\capTest"),_L("\\sys\\bin\\moo"));
   942 		r=fMan->Copy(_L("\\sys\\bin\\capTest"),_L("\\sys\\bin\\moo"));
   942 		test(r == KErrPathNotFound); 
   943 		test_Value(r, r == KErrPathNotFound); 
   943 		r=fMan->Copy(_L("\\sys\\*"),_L("\\"));
   944 		r=fMan->Copy(_L("\\sys\\*"),_L("\\"));
   944 		test (r==KErrNone || r==KErrNotFound);
   945 		test_Value(r, r == KErrNone || r==KErrNotFound);
   945 		r=fMan->Copy(name,_L("\\sys\\"));
   946 		r=fMan->Copy(name,_L("\\sys\\"));
   946 		test(r==KErrPermissionDenied);
   947 		test_Value(r, r == KErrPermissionDenied);
   947 		
   948 		
   948 		// Testing Move
   949 		// Testing Move
   949 		r=fMan->Move(_L("\\capTest"),_L("\\private\\wst\\moo"), CFileMan::ERecurse); // Recurse flag needed as destination path does not exist.
   950 		r=fMan->Move(_L("\\capTest"),_L("\\private\\wst\\moo"), CFileMan::ERecurse); // Recurse flag needed as destination path does not exist.
   950 		test(r == KErrNone);
   951 		test_KErrNone(r);
   951 		r=fMan->Move(_L("\\sys\\bin\\capTest"),_L("\\sys\\bin\\moo"));
   952 		r=fMan->Move(_L("\\sys\\bin\\capTest"),_L("\\sys\\bin\\moo"));
   952 		test(r == KErrPathNotFound); 
   953 		test_Value(r, r == KErrPathNotFound); 
   953 		r=fMan->Move(_L("\\sys\\*"),_L("\\"));
   954 		r=fMan->Move(_L("\\sys\\*"),_L("\\"));
   954 		test (r==KErrNone || r==KErrNotFound);
   955 		test_Value(r, r == KErrNone || r==KErrNotFound);
   955 		r=fMan->Move(name,_L("\\sys\\"));
   956 		r=fMan->Move(name,_L("\\sys\\"));
   956 		test(r==KErrPermissionDenied);
   957 		test_Value(r, r == KErrPermissionDenied);
   957 		r=fMan->Move(_L("\\private\\two\\moo"),_L("\\private\\one\\moo"));
   958 		r=fMan->Move(_L("\\private\\two\\moo"),_L("\\private\\one\\moo"));
   958 		test(r == KErrPathNotFound);
   959 		test_Value(r, r == KErrPathNotFound);
   959 		r=fMan->Move(_L("\\private\\two\\moo.."),_L("\\private\\one\\moo"));
   960 		r=fMan->Move(_L("\\private\\two\\moo.."),_L("\\private\\one\\moo"));
   960 		test(r == KErrPathNotFound);
   961 		test_Value(r, r == KErrPathNotFound);
   961 		r=fMan->Move(_L("\\private\\two\\moo"),_L("\\private\\one\\moo.."));
   962 		r=fMan->Move(_L("\\private\\two\\moo"),_L("\\private\\one\\moo.."));
   962 		test(r == KErrPathNotFound);
   963 		test_Value(r, r == KErrPathNotFound);
   963 		r=fMan->Move(name,_L("\\privateFile.tst"));
   964 		r=fMan->Move(name,_L("\\privateFile.tst"));
   964 		test(r == KErrNone);
   965 		test_KErrNone(r);
   965 		r=fMan->Move(_L("\\privateFile.tst"),name);
   966 		r=fMan->Move(_L("\\privateFile.tst"),name);
   966 		test(r == KErrNone);
   967 		test_KErrNone(r);
   967 
   968 
   968 		
   969 		
   969 		// Testing Attribs
   970 		// Testing Attribs
   970 		r=fMan->Attribs(_L("\\private\\two\\moo"),KEntryAttReadOnly,0,TTime(0)); 
   971 		r=fMan->Attribs(_L("\\private\\two\\moo"),KEntryAttReadOnly,0,TTime(0)); 
   971 		test(r == KErrPathNotFound);
   972 		test_Value(r, r == KErrPathNotFound);
   972 		r=fMan->Attribs(_L("\\private\\moo"),KEntryAttReadOnly,0,TTime(0)); 
   973 		r=fMan->Attribs(_L("\\private\\moo"),KEntryAttReadOnly,0,TTime(0)); 
   973 		test(r == KErrNotFound);
   974 		test_Value(r, r == KErrNotFound);
   974 		r=fMan->Attribs(name,KEntryAttReadOnly,0,TTime(0));
   975 		r=fMan->Attribs(name,KEntryAttReadOnly,0,TTime(0));
   975 		test(r == KErrNone);
   976 		test_KErrNone(r);
   976 		r=fMan->Attribs(name,0,KEntryAttReadOnly,TTime(0));
   977 		r=fMan->Attribs(name,0,KEntryAttReadOnly,TTime(0));
   977 		test(r == KErrNone);		
   978 		test_KErrNone(r);		
   978 
   979 
   979 		// Testing RmDir
   980 		// Testing RmDir
   980 		r=fMan->RmDir(_L("\\private\\"));
   981 		r=fMan->RmDir(_L("\\private\\"));
   981 		test(r == KErrNone);
   982 		test_KErrNone(r);
   982 		// put it back where it was
   983 		// put it back where it was
   983 		r = TheFs.MkDirAll(_L("\\private\\00000001\\"));
   984 		r = TheFs.MkDirAll(_L("\\private\\00000001\\"));
   984 		test(r == KErrNone);
   985 		test_KErrNone(r);
   985 		r=fMan->RmDir(_L("\\private\\two\\"));
   986 		r=fMan->RmDir(_L("\\private\\two\\"));
   986 		test(r == KErrPathNotFound);
   987 		test_Value(r, r == KErrPathNotFound);
   987 		r=fMan->RmDir(_L("\\private\\tw?\\"));
   988 		r=fMan->RmDir(_L("\\private\\tw?\\"));
   988 		test(r == KErrBadName);
   989 		test_Value(r, r == KErrBadName);
   989 		r=fMan->RmDir(_L("\\sys\\"));
   990 		r=fMan->RmDir(_L("\\sys\\"));
   990 		test(r == KErrPermissionDenied);
   991 		test_Value(r, r == KErrPermissionDenied);
   991 		
   992 		
   992 		// Testing Rename
   993 		// Testing Rename
   993 		r=fMan->Rename(_L("\\private\\two\\moo"),_L("\\private\\two\\mew")); 
   994 		r=fMan->Rename(_L("\\private\\two\\moo"),_L("\\private\\two\\mew")); 
   994 		test(r == KErrPathNotFound);
   995 		test_Value(r, r == KErrPathNotFound);
   995 		
   996 		
   996 		// Testing Delete
   997 		// Testing Delete
   997 		r=fMan->Delete(_L("\\private\\two\\test")); 
   998 		r=fMan->Delete(_L("\\private\\two\\test")); 
   998 		test(r == KErrPathNotFound);
   999 		test_Value(r, r == KErrPathNotFound);
   999 		r=fMan->Delete(_L("\\private\\moo")); 
  1000 		r=fMan->Delete(_L("\\private\\moo")); 
  1000 		test(r == KErrNotFound);
  1001 		test_Value(r, r == KErrNotFound);
  1001 		
  1002 		
  1002 		//Something that actually exists in Private
  1003 		//Something that actually exists in Private
  1003 		r=fMan->Rename(name,_L("\\private\\00000001\\moo")); 
  1004 		r=fMan->Rename(name,_L("\\private\\00000001\\moo")); 
  1004 		test(r == KErrNotFound); //deleted the file previously
  1005 		test_Value(r, r == KErrNotFound); //deleted the file previously
  1005 		r=fMan->Rename(_L("\\private\\00000001\\moo"),name); 
  1006 		r=fMan->Rename(_L("\\private\\00000001\\moo"),name); 
  1006 		test(r == KErrNotFound);
  1007 		test_Value(r, r == KErrNotFound);
  1007 		r=fMan->Copy(name,_L("\\private\\00000001\\moo")); 
  1008 		r=fMan->Copy(name,_L("\\private\\00000001\\moo")); 
  1008 		test(r == KErrNotFound);
  1009 		test_Value(r, r == KErrNotFound);
  1009 		r=fMan->Delete(_L("\\private\\00000001\\moo")); 
  1010 		r=fMan->Delete(_L("\\private\\00000001\\moo")); 
  1010 		test(r == KErrNotFound);
  1011 		test_Value(r, r == KErrNotFound);
  1011 
  1012 
  1012 		// Clean up the test data
  1013 		// Clean up the test data
  1013 		r=fMan->RmDir(_L("\\Caged\\")); 
  1014 		r=fMan->RmDir(_L("\\Caged\\")); 
  1014 		test(r == KErrNone);
  1015 		test_KErrNone(r);
  1015 		r=fMan->Delete(_L("\\capTest")); 
  1016 		r=fMan->Delete(_L("\\capTest")); 
  1016 		test(r == KErrNone || KErrNotFound);
  1017 		test_Value(r, r == KErrNone || r == KErrNotFound);
  1017 		delete(fMan);
  1018 		delete(fMan);
  1018 		}
  1019 		}
  1019 	
  1020 	
  1020 	// CDirScan tests
  1021 	// CDirScan tests
  1021 	ScanDir(_L("\\"), CDirScan::EScanUpTree, KErrNone);
  1022 	ScanDir(_L("\\"), CDirScan::EScanUpTree, KErrNone);
  1032 //
  1033 //
  1033 	{
  1034 	{
  1034 	test.Next(_L("Delete test directory"));
  1035 	test.Next(_L("Delete test directory"));
  1035 	CFileMan* fMan=CFileMan::NewL(TheFs);
  1036 	CFileMan* fMan=CFileMan::NewL(TheFs);
  1036 	TInt r=fMan->RmDir(gSessionPath);
  1037 	TInt r=fMan->RmDir(gSessionPath);
  1037 	test(r==KErrNone);
  1038 	test_KErrNone(r);
  1038 	delete fMan;
  1039 	delete fMan;
  1039 	}
  1040 	}
  1040 
  1041 
  1041 GLDEF_C void CallTestsL(/*TChar aDriveLetter*/)
  1042 GLDEF_C void CallTestsL(/*TChar aDriveLetter*/)
  1042 //
  1043 //
  1056 	TBuf<30> sesspath;
  1057 	TBuf<30> sesspath;
  1057 	sesspath=_L("?:\\");
  1058 	sesspath=_L("?:\\");
  1058 	sesspath[0] = (TText)gDriveToTest;
  1059 	sesspath[0] = (TText)gDriveToTest;
  1059 
  1060 
  1060 	TInt r= TheFs.SetSessionPath(sesspath);
  1061 	TInt r= TheFs.SetSessionPath(sesspath);
  1061 	test(r==KErrNone);
  1062 	test_KErrNone(r);
  1062 
  1063 
  1063 	TBuf<2> cmd;
  1064 	TBuf<2> cmd;
  1064 	cmd.SetLength(1);
  1065 	cmd.SetLength(1);
  1065 	cmd[0] = (TText)gDriveToTest;
  1066 	cmd[0] = (TText)gDriveToTest;
  1066 	RProcess tp;
  1067 	RProcess tp;
  1067 	r=tp.Create(_L("clean_prepdc.exe"),sesspath);
  1068 	r=tp.Create(_L("clean_prepdc.exe"),sesspath);
  1068 	test(r==KErrNone);
  1069 	test_KErrNone(r);
  1069 	{
  1070 	{
  1070 	TRequestStatus ps;
  1071 	TRequestStatus ps;
  1071 	tp.Logon(ps);
  1072 	tp.Logon(ps);
  1072 	tp.Resume();
  1073 	tp.Resume();
  1073 	tp.Close();
  1074 	tp.Close();
  1077 	//check double mode ie that Defpath still works	
  1078 	//check double mode ie that Defpath still works	
  1078 	RFs fs1;
  1079 	RFs fs1;
  1079 	RFs fs2;
  1080 	RFs fs2;
  1080 	
  1081 	
  1081 	r=fs1.Connect();
  1082 	r=fs1.Connect();
  1082 	test(r==KErrNone);
  1083 	test_KErrNone(r);
  1083 	r=fs1.SessionPath(sesspath);
  1084 	r=fs1.SessionPath(sesspath);
  1084 	test(r==KErrNone);
  1085 	test_KErrNone(r);
  1085 	test.Printf(_L("session1 Path=%S"),&sesspath);
  1086 	test.Printf(_L("session1 Path=%S"),&sesspath);
  1086 
  1087 
  1087 	TBuf<30> privatepath;
  1088 	TBuf<30> privatepath;
  1088 	r=fs1.SetSessionToPrivate(gTheDriveNum);
  1089 	r=fs1.SetSessionToPrivate(gTheDriveNum);
  1089 	test(r==KErrNone);
  1090 	test_KErrNone(r);
  1090 	r=fs1.PrivatePath(privatepath);
  1091 	r=fs1.PrivatePath(privatepath);
  1091 	test(r==KErrNone);
  1092 	test_KErrNone(r);
  1092 	r=privatepath.Compare(KExpectedPrivatePath());
  1093 	r=privatepath.Compare(KExpectedPrivatePath());
  1093 	test(r==0);
  1094 	test_Value(r, r == 0);
  1094 	r=fs1.SessionPath(sesspath);
  1095 	r=fs1.SessionPath(sesspath);
  1095 	test(r==KErrNone);
  1096 	test_KErrNone(r);
  1096 	r=privatepath.Compare(sesspath.Mid(KPathPosition));
  1097 	r=privatepath.Compare(sesspath.Mid(KPathPosition));
  1097 	test(r==0);
  1098 	test_Value(r, r == 0);
  1098 	r=fs1.CreatePrivatePath(gTheDriveNum);
  1099 	r=fs1.CreatePrivatePath(gTheDriveNum);
  1099 	test(r==KErrNone);
  1100 	test_KErrNone(r);
  1100 	fs1.Close();
  1101 	fs1.Close();
  1101 
  1102 
  1102 	r=fs2.Connect();
  1103 	r=fs2.Connect();
  1103 	test(r==KErrNone);
  1104 	test_KErrNone(r);
  1104 	r=fs2.SessionPath(sesspath);
  1105 	r=fs2.SessionPath(sesspath);
  1105 	test(r==KErrNone);
  1106 	test_KErrNone(r);
  1106 	test.Printf(_L("session2 Path=%S"),&sesspath);
  1107 	test.Printf(_L("session2 Path=%S"),&sesspath);
  1107 	fs2.Close();
  1108 	fs2.Close();
  1108 
  1109 
  1109 	TestCaps();
  1110 	TestCaps();
  1110 	TestCaging();
  1111 	TestCaging();