223 r=TheFs.RmDir(_L("\\F32-TST\\ABCDEF\\")); |
226 r=TheFs.RmDir(_L("\\F32-TST\\ABCDEF\\")); |
224 test_KErrNone(r); |
227 test_KErrNone(r); |
225 } |
228 } |
226 LOCAL_C void TestLongFileName() |
229 LOCAL_C void TestLongFileName() |
227 { |
230 { |
228 #ifndef __EPOC32__ //emulator |
231 if (Is_SimulatedSystemDrive(TheFs, CurrentDrive())) |
229 if (gDriveToTest.GetLowerCase()=='c') |
232 { |
230 return;//don't perform this test for c: in emulator as emulator uses windows system calls |
233 // Do not perform this test for the system drive of the emulator or PlatSim |
231 //windows doesn't create a directory with length more than 244 characters |
234 // as they use Windows system calls. |
232 #endif |
235 // Windows does not create a directory with length more than 244 characters |
233 |
236 // (247 including <drive>:\) |
234 test.Next(_L("Test renaming 257 characters directories")); |
237 test.Printf(_L("TestLongFileName() skipped on simulated system drive.\n")); |
|
238 return; |
|
239 } |
|
240 |
|
241 test.Next(_L("Test renaming 257 characters directories")); |
235 _LIT(KLongFileName256, "256dir_IncludingBackslash_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); |
242 _LIT(KLongFileName256, "256dir_IncludingBackslash_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); |
236 _LIT(KLongFileName257, "257dir_IncludingBackslash_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); |
243 _LIT(KLongFileName257, "257dir_IncludingBackslash_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); |
237 TBuf<260> Path; |
244 TBuf<260> Path; |
238 TBuf<10> baseDir; |
245 TBuf<10> baseDir; |
239 |
246 |
882 // Check attributes have been changed |
889 // Check attributes have been changed |
883 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
890 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
884 r=file.Att(atts); |
891 r=file.Att(atts); |
885 test_KErrNone(r); |
892 test_KErrNone(r); |
886 file.Close(); |
893 file.Close(); |
887 test(atts&KEntryAttSystem); |
894 test_Value((TInt)atts, atts&KEntryAttSystem); |
888 |
895 |
889 // Change attributes to normal |
896 // Change attributes to normal |
890 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
897 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
891 r=file.SetAtt(KEntryAttNormal,KEntryAttSystem|KEntryAttArchive); |
898 r=file.SetAtt(KEntryAttNormal,KEntryAttSystem|KEntryAttArchive); |
892 test_KErrNone(r); |
899 test_KErrNone(r); |
895 // Check attributes have been changed |
902 // Check attributes have been changed |
896 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
903 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
897 r=file.Att(atts); |
904 r=file.Att(atts); |
898 test_KErrNone(r); |
905 test_KErrNone(r); |
899 file.Close(); |
906 file.Close(); |
900 test(atts==KEntryAttNormal); |
907 test_Value((TInt)atts, atts==KEntryAttNormal); |
901 |
908 |
902 // Attempt to change attributes from normal file to directory |
909 // Attempt to change attributes from normal file to directory |
903 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
910 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
904 r=file.SetAtt(KEntryAttDir,KEntryAttNormal); |
911 r=file.SetAtt(KEntryAttDir,KEntryAttNormal); |
905 test_KErrNone(r); // Returns KErrNone but DOESN'T change the file to a directory |
912 test_KErrNone(r); // Returns KErrNone but DOESN'T change the file to a directory |
908 // Check the file has not been changed to a directory |
915 // Check the file has not been changed to a directory |
909 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
916 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
910 r=file.Att(atts); |
917 r=file.Att(atts); |
911 test_KErrNone(r); |
918 test_KErrNone(r); |
912 file.Close(); |
919 file.Close(); |
913 test((TInt)(atts&KEntryAttDir)==KErrNone); |
920 test_Value((TInt)atts, (TInt)(atts&KEntryAttDir)==KErrNone); |
914 |
921 |
915 // Change the attributes from normal file to hidden file |
922 // Change the attributes from normal file to hidden file |
916 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
923 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
917 r=file.SetAtt(KEntryAttHidden,KEntryAttNormal); |
924 r=file.SetAtt(KEntryAttHidden,KEntryAttNormal); |
918 test_KErrNone(r); |
925 test_KErrNone(r); |
921 // Check the attributes have been changed |
928 // Check the attributes have been changed |
922 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
929 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
923 r=file.Att(atts); |
930 r=file.Att(atts); |
924 test_KErrNone(r); |
931 test_KErrNone(r); |
925 file.Close(); |
932 file.Close(); |
926 test(atts&KEntryAttHidden); |
933 test_Value((TInt)atts, atts&KEntryAttHidden); |
927 |
934 |
928 // Try to change the attributes from hidden file to volume |
935 // Try to change the attributes from hidden file to volume |
929 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
936 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
930 r=file.SetAtt(KEntryAttVolume,KEntryAttHidden); |
937 r=file.SetAtt(KEntryAttVolume,KEntryAttHidden); |
931 test_KErrNone(r); // Returns KErrNone but DOESN'T change the file to a volume |
938 test_KErrNone(r); // Returns KErrNone but DOESN'T change the file to a volume |
934 // Check that the hidden file has not been changed to a volume |
941 // Check that the hidden file has not been changed to a volume |
935 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
942 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
936 r=file.Att(atts); |
943 r=file.Att(atts); |
937 test_KErrNone(r); |
944 test_KErrNone(r); |
938 file.Close(); |
945 file.Close(); |
939 test((TInt)(atts&KEntryAttVolume)==KErrNone); |
946 test_Value((TInt)atts, (TInt)(atts&KEntryAttVolume)==KErrNone); |
940 |
947 |
941 // Test RFile::Set() function |
948 // Test RFile::Set() function |
942 |
949 |
943 test.Next(_L("Test RFile::Set()")); |
950 test.Next(_L("Test RFile::Set()")); |
944 |
951 |
945 // Check attributes |
952 // Check attributes |
946 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
953 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
947 r=file.Att(atts); |
954 r=file.Att(atts); |
948 test_KErrNone(r); |
955 test_KErrNone(r); |
949 file.Close(); |
956 file.Close(); |
950 test(atts==KEntryAttNormal); |
957 test_Value((TInt)atts, atts==KEntryAttNormal); |
951 |
958 |
952 // Change attributes from hidden to system - and change modification time |
959 // Change attributes from hidden to system - and change modification time |
953 TDateTime dateTime(1998,EMay,25,18,23,0,0); |
960 TDateTime dateTime(1998,EMay,25,18,23,0,0); |
954 TTime modTime1(dateTime); |
961 TTime modTime1(dateTime); |
955 TTime retTime; |
962 TTime retTime; |
963 r=file.Att(atts); |
970 r=file.Att(atts); |
964 test_KErrNone(r); |
971 test_KErrNone(r); |
965 r=file.Modified(retTime); |
972 r=file.Modified(retTime); |
966 test_KErrNone(r); |
973 test_KErrNone(r); |
967 file.Close(); |
974 file.Close(); |
968 test(atts&KEntryAttSystem); |
975 test_Value((TInt)atts, atts&KEntryAttSystem); |
969 test(retTime==modTime1); |
976 test(retTime==modTime1); |
970 |
977 |
971 // Change attributes to normal - and change modification time |
978 // Change attributes to normal - and change modification time |
972 dateTime.Set(1997,EMay,24,17,25,0,0); |
979 dateTime.Set(1997,EMay,24,17,25,0,0); |
973 TTime modTime2(dateTime); |
980 TTime modTime2(dateTime); |
981 r=file.Att(atts); |
988 r=file.Att(atts); |
982 test_KErrNone(r); |
989 test_KErrNone(r); |
983 r=file.Modified(retTime); |
990 r=file.Modified(retTime); |
984 test_KErrNone(r); |
991 test_KErrNone(r); |
985 file.Close(); |
992 file.Close(); |
986 test(atts==KEntryAttNormal); |
993 test_Value((TInt)atts, atts==KEntryAttNormal); |
987 test(retTime==modTime2); |
994 test(retTime==modTime2); |
988 |
995 |
989 // Attempt to change attributes from normal file to directory |
996 // Attempt to change attributes from normal file to directory |
990 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
997 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
991 r=file.Set(modTime1,KEntryAttDir,KEntryAttNormal); |
998 r=file.Set(modTime1,KEntryAttDir,KEntryAttNormal); |
997 r=file.Att(atts); |
1004 r=file.Att(atts); |
998 test_KErrNone(r); |
1005 test_KErrNone(r); |
999 r=file.Modified(retTime); |
1006 r=file.Modified(retTime); |
1000 test_KErrNone(r); |
1007 test_KErrNone(r); |
1001 file.Close(); |
1008 file.Close(); |
1002 test((TInt)(atts&KEntryAttDir)==KErrNone); |
1009 test_Value((TInt)atts, (TInt)(atts&KEntryAttDir)==KErrNone); |
1003 test(retTime==modTime1);// Modification time should have been set successfully |
1010 test(retTime==modTime1);// Modification time should have been set successfully |
1004 |
1011 |
1005 // Change the attributes from normal file to hidden file - and change modification time |
1012 // Change the attributes from normal file to hidden file - and change modification time |
1006 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
1013 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
1007 r=file.Set(modTime1,KEntryAttHidden,KEntryAttNormal); |
1014 r=file.Set(modTime1,KEntryAttHidden,KEntryAttNormal); |
1012 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
1019 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
1013 r=file.Att(atts); |
1020 r=file.Att(atts); |
1014 test_KErrNone(r); |
1021 test_KErrNone(r); |
1015 r=file.Modified(retTime); |
1022 r=file.Modified(retTime); |
1016 file.Close(); |
1023 file.Close(); |
1017 test(atts&KEntryAttHidden); |
1024 test_Value((TInt)atts, atts&KEntryAttHidden); |
1018 test(retTime==modTime1); |
1025 test(retTime==modTime1); |
1019 |
1026 |
1020 // Try to change the attributes from hidden file to volume |
1027 // Try to change the attributes from hidden file to volume |
1021 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
1028 file.Open(TheFs,_L("TEMPFILE.TMP"),EFileWrite); |
1022 r=file.Set(modTime2,KEntryAttVolume,KEntryAttHidden); |
1029 r=file.Set(modTime2,KEntryAttVolume,KEntryAttHidden); |