Fixed run.py bugs
This commit is contained in:
parent
b528348f39
commit
cfc593eb0d
@ -1,4 +1,4 @@
|
|||||||
import sys, os, platform, xml, re, tempfile, glob, datetime, getpass
|
import sys, os, platform, xml, re, tempfile, glob, datetime, getpass, shutil
|
||||||
from optparse import OptionParser
|
from optparse import OptionParser
|
||||||
from subprocess import Popen, PIPE
|
from subprocess import Popen, PIPE
|
||||||
|
|
||||||
@ -228,6 +228,7 @@ class RunInfo(object):
|
|||||||
# fix empty tests dir
|
# fix empty tests dir
|
||||||
if not self.tests_dir:
|
if not self.tests_dir:
|
||||||
self.tests_dir = self.path
|
self.tests_dir = self.path
|
||||||
|
self.tests_dir = os.path.normpath(self.tests_dir)
|
||||||
# add path to adb
|
# add path to adb
|
||||||
if self.android_executable:
|
if self.android_executable:
|
||||||
self.adb = os.path.join(os.path.dirname(os.path.dirname(self.android_executable)), ("platform-tools/adb","platform-tools/adb.exe")[hostos == 'nt'])
|
self.adb = os.path.join(os.path.dirname(os.path.dirname(self.android_executable)), ("platform-tools/adb","platform-tools/adb.exe")[hostos == 'nt'])
|
||||||
@ -375,7 +376,6 @@ class RunInfo(object):
|
|||||||
setattr(self, name, None)
|
setattr(self, name, None)
|
||||||
finally:
|
finally:
|
||||||
if dir:
|
if dir:
|
||||||
import shutil
|
|
||||||
shutil.rmtree(dir)
|
shutil.rmtree(dir)
|
||||||
|
|
||||||
def isTest(self, fullpath):
|
def isTest(self, fullpath):
|
||||||
@ -536,16 +536,17 @@ class RunInfo(object):
|
|||||||
if fname == name:
|
if fname == name:
|
||||||
return t
|
return t
|
||||||
if fname.endswith(".exe") or (self.targetos == "android" and fname.endswith(".apk")):
|
if fname.endswith(".exe") or (self.targetos == "android" and fname.endswith(".apk")):
|
||||||
if fname.endswith("d.exe"):
|
fname = fname[:-4]
|
||||||
fname = fname[:-5]
|
|
||||||
else:
|
|
||||||
fname = fname[:-4]
|
|
||||||
if fname == name:
|
if fname == name:
|
||||||
return t
|
return t
|
||||||
|
if self.options.configuration == "Debug" and fname == name + 'd':
|
||||||
|
return t
|
||||||
if fname.startswith(self.nameprefix):
|
if fname.startswith(self.nameprefix):
|
||||||
fname = fname[len(self.nameprefix):]
|
fname = fname[len(self.nameprefix):]
|
||||||
if fname == name:
|
if fname == name:
|
||||||
return t
|
return t
|
||||||
|
if self.options.configuration == "Debug" and fname == name + 'd':
|
||||||
|
return t
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def runAdb(self, *args):
|
def runAdb(self, *args):
|
||||||
@ -707,6 +708,11 @@ class RunInfo(object):
|
|||||||
cmd.append("--help")
|
cmd.append("--help")
|
||||||
else:
|
else:
|
||||||
cmd.extend(args)
|
cmd.extend(args)
|
||||||
|
|
||||||
|
orig_temp_path = os.environ.get('OPENCV_TEMP_PATH')
|
||||||
|
temp_path = tempfile.mkdtemp(prefix="__opencv_temp.", dir=orig_temp_path or None)
|
||||||
|
os.environ['OPENCV_TEMP_PATH'] = temp_path
|
||||||
|
|
||||||
print >> _stderr, "Running:", " ".join(cmd)
|
print >> _stderr, "Running:", " ".join(cmd)
|
||||||
try:
|
try:
|
||||||
Popen(cmd, stdout=_stdout, stderr=_stderr, cwd = workingDir).wait()
|
Popen(cmd, stdout=_stdout, stderr=_stderr, cwd = workingDir).wait()
|
||||||
@ -714,20 +720,13 @@ class RunInfo(object):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
# clean temporary files
|
# clean temporary files
|
||||||
temp_path = os.environ.get('OPENCV_TEMP_PATH')
|
if orig_temp_path:
|
||||||
if not temp_path:
|
os.environ['OPENCV_TEMP_PATH'] = orig_temp_path
|
||||||
if self.targetos == "nt":
|
else:
|
||||||
temp_path = tempfile.gettempdir()
|
del os.environ['OPENCV_TEMP_PATH']
|
||||||
else:
|
|
||||||
temp_path = "/tmp"
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
if self.targetos == "nt":
|
shutil.rmtree(temp_path)
|
||||||
for filename in glob.glob(os.path.join(temp_path, "ocv*")) :
|
|
||||||
os.remove( filename )
|
|
||||||
else:
|
|
||||||
for filename in glob.glob(os.path.join(temp_path, "__opencv_temp.*")) :
|
|
||||||
os.remove( filename )
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user