Browse Source

* Do not pass -f switch for rm when testing via adb, since default android shell do not support -f switch.

git-svn-id: branches/targetandroid@23484 -
yury 12 years ago
parent
commit
4902dd2f99
1 changed files with 14 additions and 4 deletions
  1. 14 4
      tests/utils/dotest.pp

+ 14 - 4
tests/utils/dotest.pp

@@ -1176,7 +1176,7 @@ function MaybeCopyFiles(const FileToCopy : string) : boolean;
 var
 var
   TestRemoteExe,
   TestRemoteExe,
   pref     : string;
   pref     : string;
-  LocalFile, RemoteFile: string;
+  LocalFile, RemoteFile, s: string;
   LocalPath: string;
   LocalPath: string;
   i       : integer;
   i       : integer;
   execres : boolean;
   execres : boolean;
@@ -1234,8 +1234,13 @@ begin
   { We don't want to create subdirs, remove paths from the test }
   { We don't want to create subdirs, remove paths from the test }
   TestRemoteExe:=RemotePath+'/'+SplitFileName(FileToCopy);
   TestRemoteExe:=RemotePath+'/'+SplitFileName(FileToCopy);
   if deBefore in DelExecutable then
   if deBefore in DelExecutable then
-    ExecuteRemote(rshprog,RemoteRshParas+' rm -f '+TestRemoteExe,
-                  StartTicks,EndTicks);
+    begin
+      s:=RemoteRshParas+' rm ';
+      if rshprog <> 'adb' then
+        s:=s+'-f ';
+      ExecuteRemote(rshprog,s+TestRemoteExe,
+                    StartTicks,EndTicks);
+    end;
   execres:=ExecuteRemote(rcpprog,RemotePara+' '+FileToCopy+' '+
   execres:=ExecuteRemote(rcpprog,RemotePara+' '+FileToCopy+' '+
                          RemotePathPrefix+TestRemoteExe,StartTicks,EndTicks);
                          RemotePathPrefix+TestRemoteExe,StartTicks,EndTicks);
   if not execres then
   if not execres then
@@ -1355,7 +1360,12 @@ begin
       execcmd:=execcmd+' ; echo "TestExitCode: $?"';
       execcmd:=execcmd+' ; echo "TestExitCode: $?"';
       if (deAfter in DelExecutable) and
       if (deAfter in DelExecutable) and
          not Config.NeededAfter then
          not Config.NeededAfter then
-        execcmd:=execcmd+' ; rm -f '+SplitFileName(TestRemoteExe);
+        begin
+          execcmd:=execcmd+' ; rm ';
+          if rshprog <> 'adb' then
+            execcmd:=execcmd+'-f ';
+          execcmd:=execcmd+SplitFileName(TestRemoteExe);
+        end;
       execcmd:=execcmd+rquote;
       execcmd:=execcmd+rquote;
       execres:=ExecuteRemote(rshprog,execcmd,StartTicks,EndTicks);
       execres:=ExecuteRemote(rshprog,execcmd,StartTicks,EndTicks);
       { Check for TestExitCode error in output, sets ExecuteResult }
       { Check for TestExitCode error in output, sets ExecuteResult }