kerneltest/f32test/server/t_file.cpp
branchRCL_3
changeset 42 a179b74831c9
parent 6 0173bcd7697c
child 43 c1f20ce4abcf
equal deleted inserted replaced
41:0ffb4e86fcc9 42:a179b74831c9
   195 	TFileName fn = _L("Z:\\TEST\\T_FILE.CPP");
   195 	TFileName fn = _L("Z:\\TEST\\T_FILE.CPP");
   196 	fn[0] = gExeFileName[0];
   196 	fn[0] = gExeFileName[0];
   197 	r=ZFile.Open(TheFs,fn,EFileStreamText);
   197 	r=ZFile.Open(TheFs,fn,EFileStreamText);
   198 	test(r==KErrNone);
   198 	test(r==KErrNone);
   199 
   199 
       
   200 	// check the file on the Z: drive his read-only
       
   201 	TEntry fileAtt;
       
   202 	r=TheFs.Entry(fn,fileAtt);
       
   203 	test_KErrNone(r);
       
   204 	test((fileAtt.iAtt & KEntryAttReadOnly) == KEntryAttReadOnly);
       
   205 
       
   206 
   200 	test.Next(_L("Read file"));
   207 	test.Next(_L("Read file"));
   201 	TBuf8<0x100> a,b;
   208 	TBuf8<0x100> a,b;
   202 	FOREVER
   209 	FOREVER
   203 		{
   210 		{
   204 		r=f.Read(b);
   211 		r=f.Read(b);
   950 	r=f.SetAtt(KEntryAttReadOnly,0);
   957 	r=f.SetAtt(KEntryAttReadOnly,0);
   951 	test(r==KErrNone);
   958 	test(r==KErrNone);
   952 	r=f.Write(_L8("Hello World"));
   959 	r=f.Write(_L8("Hello World"));
   953 	test(r==KErrNone);
   960 	test(r==KErrNone);
   954 	f.Close();
   961 	f.Close();
       
   962 
       
   963 
       
   964 	test.Next(_L("Internal attribute can't be read"));
       
   965 
       
   966 	r=TheFs.SetAtt(fname,0,KEntryAttReadOnly);
       
   967 	test_KErrNone(r);
       
   968 
       
   969 	r=f.Open(TheFs,fname,EFileWrite);
       
   970 	test_KErrNone(r);
       
   971 
       
   972 	r=f.SetAtt(KEntryAttReadOnly, 0);	// this will set internal attribut KEntryAttModified
       
   973 	test_KErrNone(r);
       
   974 
       
   975 	// copied \sf\os\kernelhwsrv\userlibandfileserver\fileserver\inc\common.h
       
   976 	const TUint KEntryAttModified=0x20000000;	
       
   977 
       
   978 	TUint att;
       
   979 	r = f.Att(att);
       
   980 	test_KErrNone(r);
       
   981     test.Printf(_L("att %x"), att);
       
   982 	test_Value(att & KEntryAttModified, (att & KEntryAttModified) == 0);
       
   983 
       
   984 	r=f.SetAtt(att | KEntryAttModified, 0);
       
   985 	test_KErrNone(r);
       
   986 
       
   987 	r = f.Att(att);
       
   988 	test_KErrNone(r);
       
   989     test.Printf(_L("att %x"), att);
       
   990 	test_Value(att & KEntryAttModified, (att & KEntryAttModified) == 0);
       
   991 
       
   992 	test.Next(_L("file time is set"));
       
   993 	r = f.Modified(time);
       
   994 	test(time.Int64() != 0);
       
   995 
       
   996     r = f.Flush(); //-- this will flush attributes to the media
       
   997     test_KErrNone(r);
       
   998 	f.Close();
       
   999 
   955 
  1000 
   956 	// Tidy up
  1001 	// Tidy up
   957 	r=TheFs.SetAtt(fname,0,KEntryAttReadOnly);
  1002 	r=TheFs.SetAtt(fname,0,KEntryAttReadOnly);
   958 	test(r==KErrNone);
  1003 	test(r==KErrNone);
   959 	r=TheFs.Delete(fname);
  1004 	r=TheFs.Delete(fname);