Bug 808764 - Set XPCOM_DEBUG_BREAK and other env vars in Android xpcshell tests; r=jmaher

--HG--
extra : rebase_source : 548629ff005a6ee41e7c1d6e44f9eaab2d200a70
This commit is contained in:
Geoff Brown 2012-11-13 16:37:56 -07:00
parent d35a285b7b
commit 4685404665
2 changed files with 12 additions and 12 deletions

View File

@ -224,14 +224,8 @@ class XPCShellRemote(xpcshell.XPCShellTests, object):
self.log.info("TEST-INFO | %s | environment: %s" % (name, self.env))
def setupLeakLogging(self):
# Leak logging disabled on Android because it makes the command
# line too long: bug 752126
# filename = "leaks"
# leakLogFile = self.remoteJoin(self.profileDir, filename)
# self.env["XPCOM_MEM_LEAK_LOG"] = leakLogFile
leakLogFile = ""
return leakLogFile
self.env["XPCOM_MEM_LEAK_LOG"] = self.remoteJoin(self.profileDir, "leaks.log")
return self.env["XPCOM_MEM_LEAK_LOG"]
def setLD_LIBRARY_PATH(self, env):
env["LD_LIBRARY_PATH"]=self.remoteBinDir
@ -260,6 +254,7 @@ class XPCShellRemote(xpcshell.XPCShellTests, object):
def buildEnvironment(self):
self.env = {}
self.buildCoreEnvironment()
self.setLD_LIBRARY_PATH(self.env)
self.env["MOZ_LINKER_CACHE"]=self.remoteBinDir
if self.options.localAPK and self.appRoot:

View File

@ -121,12 +121,10 @@ class XPCShellTests(object):
if self.mozInfo is None:
self.mozInfo = os.path.join(self.testharnessdir, "mozinfo.json")
def buildEnvironment(self):
def buildCoreEnvironment(self):
"""
Create and returns a dictionary of self.env to include all the appropriate env variables and values.
On a remote system, we overload this to set different values and are missing things like os.environ and PATH.
Add environment variables likely to be used across all platforms, including remote systems.
"""
self.env = dict(os.environ)
# Make assertions fatal
self.env["XPCOM_DEBUG_BREAK"] = "stack-and-abort"
# Don't launch the crash reporter client
@ -135,6 +133,13 @@ class XPCShellTests(object):
# disabled by automation.py too
self.env["NS_TRACE_MALLOC_DISABLE_STACKS"] = "1"
def buildEnvironment(self):
"""
Create and returns a dictionary of self.env to include all the appropriate env variables and values.
On a remote system, we overload this to set different values and are missing things like os.environ and PATH.
"""
self.env = dict(os.environ)
self.buildCoreEnvironment()
if sys.platform == 'win32':
self.env["PATH"] = self.env["PATH"] + ";" + self.xrePath
elif sys.platform in ('os2emx', 'os2knix'):