LOCAL_C void Test3() // // Test RFs::Entry() // { test.Next(_L("Use RFs::EntryL() to check files")); TEntry entry; TInt r=TheFs.Entry(_L("UIDCHKNO.SHT"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHKNO.SHT")); test(entry.IsTypeValid()==EFalse); r=TheFs.Entry(_L("UIDCHKNO.LNG"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHKNO.LNG")); test(entry.IsTypeValid()==EFalse); r=TheFs.Entry(_L("UIDCHK.MSG"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHK.MSG")); test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid('X') && entry.iType[1]==TUid::Uid('Y') && entry.iType[2]==TUid::Uid('Z')); r=TheFs.Entry(_L("UIDCHK.BLG"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHK.BLG")); test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid('U') && entry.iType[1]==TUid::Uid('I') && entry.iType[2]==TUid::Uid('D')); r=TheFs.Entry(_L("UIDCHK.DAT"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHK.DAT")); test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid('D') && entry.iType[1]==TUid::Uid('A') && entry.iType[2]==TUid::Uid('T')); r=TheFs.Entry(_L("UIDWINS.PE"),entry); test_KErrNone(r); test(entry.iName==_L("UIDWINS.PE")); #if defined(__WINS__) TFileName sessionPath; TheFs.SessionPath(sessionPath); if (sessionPath[0]!='C') test(entry.IsTypeValid()==EFalse); else { test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid(0x1000007a) && entry.iType[1]==TUid::Uid(2) && entry.iType[2]==TUid::Uid(3)); } #else test(entry.IsTypeValid()==EFalse); #endif }
LOCAL_C void DoTestsL() { test.Start(_L("@SYMTESTCaseID:PIM-T-NOMACH-0001 T_NOMACH")); CTestRegister* TempFiles = CTestRegister::NewLC(); #ifndef __SYMBIAN_CNTMODEL_USE_SQLITE__ TempFiles->RegisterL(KDatabaseOpenName, EFileTypeCnt); #endif // __SYMBIAN_CNTMODEL_USE_SQLITE__ TempFiles->RegisterL(KDatabaseFileName, EFileTypeCnt); CntTest->CreateDatabaseL(); TInt err; #ifndef __SYMBIAN_CNTMODEL_USE_SQLITE__ //see comments above function TestDbUpdateL test.Printf(KTestDbUpdate); TRAP(err,TestDbUpdateL()); test(err==KErrNone); #endif // __SYMBIAN_CNTMODEL_USE_SQLITE__ test.Printf(KTest11Digitmatching); TRAP(err,Test11DigitMatchingL()); test(err==KErrNone); test.Printf(KTest15Digitmatching); TRAP(err,Test15DigitMatchingL()); test(err==KErrNone); test.Printf(KTestEmbeddedZeroes); TRAP(err,TestEmbeddedZeroesL()); test(err==KErrNone); test.Printf(KTestNoPhoneMatchLibrary); TestNoPhoneMatchLibraryL(); test.Printf(KTestNewMatching); TestNewMatchingL(); test.Printf(KTestFaxSMSMatching); TestFaxSMSMatchingL(); test.Printf(KSpeedDialSimpleTest); TRAP(err,SpeedDialSimpleTest()); test(err==KErrNone); test.Printf(KTestRemovingSpeedDials); TRAP(err,TestRemovingSpeedDialsL()); test(err==KErrNone); CntTest->CloseDatabase(); CntTest->DeleteDatabaseL(); CleanupStack::PopAndDestroy(TempFiles); // stop efsrv.lib warning on 8.1a wins TEntry dummy; (void)dummy.IsTypeValid(); }
LOCAL_C void Test4() // // Test uid's can be read when the file is open // // EFileShareExclusive,EFileShareReadersOnly,EFileShareAny, // EFileStream=0,EFileStreamText=0x100, // EFileRead=0,EFileWrite=0x200 // { test.Next(_L("Uids can be read if the file is open")); RFile f; TEntry entry; TInt r=f.Open(TheFs,_L("UIDCHK.DAT"),EFileShareExclusive|EFileRead); test_KErrNone(r); r=TheFs.Entry(_L("UIDCHK.DAT"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHK.DAT")); test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid('D') && entry.iType[1]==TUid::Uid('A') && entry.iType[2]==TUid::Uid('T')); f.Close(); r=f.Open(TheFs,_L("UIDCHK.DAT"),EFileShareExclusive|EFileWrite); test_KErrNone(r); r=TheFs.Entry(_L("UIDCHK.DAT"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHK.DAT")); test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid('D') && entry.iType[1]==TUid::Uid('A') && entry.iType[2]==TUid::Uid('T')); r=f.SetSize(256); test_KErrNone(r); TBuf8<16> des; r=TheFs.ReadFileSection(_L("UIDCHK.DAT"),0,des,16); test_KErrNone(r); f.Close(); r=f.Open(TheFs,_L("UIDCHK.DAT"),EFileShareReadersOnly|EFileRead); test_KErrNone(r); r=TheFs.Entry(_L("UIDCHK.DAT"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHK.DAT")); test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid('D') && entry.iType[1]==TUid::Uid('A') && entry.iType[2]==TUid::Uid('T')); f.Close(); // EFileShareReadersOnly|EFileWrite is illegal r=f.Open(TheFs,_L("UIDCHK.DAT"),EFileShareAny|EFileRead); test_KErrNone(r); r=TheFs.Entry(_L("UIDCHK.DAT"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHK.DAT")); test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid('D') && entry.iType[1]==TUid::Uid('A') && entry.iType[2]==TUid::Uid('T')); f.Close(); r=f.Open(TheFs,_L("UIDCHK.DAT"),EFileShareAny|EFileWrite); test_KErrNone(r); RFile secondFile; r=secondFile.Open(TheFs,_L("UIDCHK.DAT"),EFileShareAny|EFileWrite); test_KErrNone(r); RFile thirdFile; r=thirdFile.Open(TheFs,_L("UIDCHK.DAT"),EFileShareAny|EFileRead); test_KErrNone(r); r=TheFs.Entry(_L("UIDCHK.DAT"),entry); test_KErrNone(r); test(entry.iName==_L("UIDCHK.DAT")); test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid('D') && entry.iType[1]==TUid::Uid('A') && entry.iType[2]==TUid::Uid('T')); f.Close(); secondFile.Close(); thirdFile.Close(); r=f.Open(TheFs,_L("UIDWINS.PE"),EFileShareAny|EFileWrite); test_KErrNone(r); r=TheFs.Entry(_L("UIDWINS.PE"),entry); test_KErrNone(r); test(entry.iName==_L("UIDWINS.PE")); #if defined(__WINS__) TFileName sessionPath; TheFs.SessionPath(sessionPath); if (sessionPath[0]!='C') test(entry.IsTypeValid()==EFalse); else { test(entry.IsTypeValid()); test(entry.iType[0]==TUid::Uid(0x1000007a) && entry.iType[1]==TUid::Uid(2) && entry.iType[2]==TUid::Uid(3)); } #else test(entry.IsTypeValid()==EFalse); #endif f.Close(); }