72 tempDirName = _L("?:\\SYS\\BIN\\"); |
73 tempDirName = _L("?:\\SYS\\BIN\\"); |
73 else |
74 else |
74 tempDirName = _L("?:\\SYSTEM\\BIN\\"); |
75 tempDirName = _L("?:\\SYSTEM\\BIN\\"); |
75 tempDirName[0] = gSessionPath[0]; |
76 tempDirName[0] = gSessionPath[0]; |
76 r=TheFs.MkDirAll(tempDirName); |
77 r=TheFs.MkDirAll(tempDirName); |
77 test(r==KErrNone||r==KErrAlreadyExists); |
78 test_Value(r, r == KErrNone||r==KErrAlreadyExists); |
78 CFileMan* fileMan=NULL; |
79 CFileMan* fileMan=NULL; |
79 TRAP(r,fileMan = CFileMan::NewL(TheFs)); |
80 TRAP(r,fileMan = CFileMan::NewL(TheFs)); |
80 test(r==KErrNone); |
81 test_KErrNone(r); |
81 //Copy the test from Z drive. |
82 //Copy the test from Z drive. |
82 TFileName temp=_L("Z:\\SYS\\BIN\\T_SCN32DR3.EXE"); |
83 TFileName temp=_L("Z:\\SYS\\BIN\\T_SCN32DR3.EXE"); |
83 r = fileMan->Copy(temp, TestExeName, CFileMan::EOverWrite); |
84 r = fileMan->Copy(temp, TestExeName, CFileMan::EOverWrite); |
84 test(r==KErrNone); |
85 test_KErrNone(r); |
85 r = fileMan->Copy(TestExeName, StartupExeName, CFileMan::EOverWrite); |
86 r = fileMan->Copy(TestExeName, StartupExeName, CFileMan::EOverWrite); |
86 test(r == KErrNone); |
87 test_KErrNone(r); |
87 //Mask read attribute. Fix for DEF081323 |
88 //Mask read attribute. Fix for DEF081323 |
88 r = fileMan->Attribs(StartupExeName, 0, KEntryAttReadOnly, 0); |
89 r = fileMan->Attribs(StartupExeName, 0, KEntryAttReadOnly, 0); |
89 test(r == KErrNone); |
90 test_KErrNone(r); |
90 r = fileMan->Attribs(TestExeName, 0, KEntryAttReadOnly, 0); |
91 r = fileMan->Attribs(TestExeName, 0, KEntryAttReadOnly, 0); |
91 test(r == KErrNone); |
92 test_KErrNone(r); |
92 r = logFile.Replace(TheFs,LogFileName,EFileShareExclusive|EFileWrite); |
93 r = logFile.Replace(TheFs,LogFileName,EFileShareExclusive|EFileWrite); |
93 test(r == KErrNone); |
94 test_KErrNone(r); |
94 logFile.Close(); |
95 logFile.Close(); |
95 delete fileMan; |
96 delete fileMan; |
96 } |
97 } |
97 } |
98 } |
98 #endif |
99 #endif |
121 TestExeName[0]=StartupExeName[0]=LogFileName[0]=gSessionPath[0]; |
122 TestExeName[0]=StartupExeName[0]=LogFileName[0]=gSessionPath[0]; |
122 // ensure file system is rugged |
123 // ensure file system is rugged |
123 TUint8 oldFsys; |
124 TUint8 oldFsys; |
124 TPtr8 pRugged(&oldFsys,1,1); |
125 TPtr8 pRugged(&oldFsys,1,1); |
125 r=TheFs.ControlIo(gSessionPath[0]-'A',KControlIoIsRugged,pRugged); |
126 r=TheFs.ControlIo(gSessionPath[0]-'A',KControlIoIsRugged,pRugged); |
126 test(r==KErrNone); |
127 test_KErrNone(r); |
127 if(oldFsys==0) |
128 if(oldFsys==0) |
128 { |
129 { |
129 r=TheFs.ControlIo(gSessionPath[0]-'A',KControlIoRuggedOn); |
130 r=TheFs.ControlIo(gSessionPath[0]-'A',KControlIoRuggedOn); |
130 test(r==KErrNone); |
131 test_KErrNone(r); |
131 } |
132 } |
132 TheFunctionNumber=0; |
133 TheFunctionNumber=0; |
133 TheOpNumber=0; |
134 TheOpNumber=0; |
134 TheFailCount=0; |
135 TheFailCount=0; |
135 IsReset=ETrue; |
136 IsReset=ETrue; |
136 WriteFailValue=KWriteFailReset; |
137 WriteFailValue=KWriteFailReset; |
137 test.Printf(_L("IsReset=%d\n"),IsReset); |
138 test.Printf(_L("IsReset=%d\n"),IsReset); |
138 OverrideEShell(); |
139 OverrideEShell(); |
139 ReadLogFile(); |
140 ReadLogFile(); |
140 r=TheFs.ScanDrive(gSessionPath); |
141 r=TheFs.ScanDrive(gSessionPath); |
141 test(r==KErrNone); |
142 test_KErrNone(r); |
142 r=TheFs.CheckDisk(gSessionPath); |
143 r=TheFs.CheckDisk(gSessionPath); |
143 test(r==KErrNone); |
144 test_KErrNone(r); |
144 DoTests(); |
145 DoTests(); |
145 r=TheFs.Delete(LogFileName); |
146 r=TheFs.Delete(LogFileName); |
146 test(r==KErrNone); |
147 test_KErrNone(r); |
147 r=TheFs.Delete(StartupExeName); |
148 r=TheFs.Delete(StartupExeName); |
148 test(r==KErrNone); |
149 test_KErrNone(r); |
149 // return file system to original state |
150 // return file system to original state |
150 if(oldFsys==0) |
151 if(oldFsys==0) |
151 r=TheFs.ControlIo(gSessionPath[0]-'A',KControlIoRuggedOff); |
152 r=TheFs.ControlIo(gSessionPath[0]-'A',KControlIoRuggedOff); |
152 UserSvr::ResetMachine(EStartupWarmReset); |
153 UserSvr::ResetMachine(EStartupWarmReset); |
153 return; |
154 return; |