mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-23 10:54:33 +00:00
Bug 1093834 - Ensure _TEST_NAME is passed to the child process in xpcshell's head.js. r=ted
This commit is contained in:
parent
e53d01ea81
commit
733221f8b6
@ -1071,6 +1071,7 @@ function do_load_child_test_harness()
|
||||
+ "const _HTTPD_JS_PATH=" + uneval(_HTTPD_JS_PATH) + "; "
|
||||
+ "const _HEAD_FILES=" + uneval(_HEAD_FILES) + "; "
|
||||
+ "const _TAIL_FILES=" + uneval(_TAIL_FILES) + "; "
|
||||
+ "const _TEST_NAME=" + uneval(_TEST_NAME) + "; "
|
||||
+ "const _XPCSHELL_PROCESS='child';";
|
||||
|
||||
if (this._TESTING_MODULES_DIR) {
|
||||
@ -1104,7 +1105,6 @@ function run_test_in_child(testFile, optionalCallback)
|
||||
do_test_pending("run in child");
|
||||
sendCommand("_testLogger.info('CHILD-TEST-STARTED'); "
|
||||
+ "const _TEST_FILE=['" + testPath + "']; "
|
||||
+ "const _TEST_NAME=" + uneval(_TEST_NAME) + "; "
|
||||
+ "_execute_test(); "
|
||||
+ "_testLogger.info('CHILD-TEST-COMPLETED');",
|
||||
callback);
|
||||
|
@ -71,6 +71,16 @@ add_test(function test_child_simple () {
|
||||
});
|
||||
'''
|
||||
|
||||
CHILD_HARNESS_SIMPLE = '''
|
||||
function run_test () { run_next_test(); }
|
||||
|
||||
add_test(function test_child_assert () {
|
||||
do_load_child_test_harness();
|
||||
sendCommand("Assert.ok(true);");
|
||||
run_next_test();
|
||||
});
|
||||
'''
|
||||
|
||||
CHILD_TEST_HANG = '''
|
||||
function run_test () { run_next_test(); }
|
||||
|
||||
@ -455,6 +465,24 @@ tail =
|
||||
self.assertNotInLog("CHILD-TEST-COMPLETED")
|
||||
self.assertNotInLog(TEST_PASS_STRING)
|
||||
|
||||
@unittest.skipIf(build_obj.defines.get('MOZ_B2G'),
|
||||
'selftests with child processes fail on b2g desktop builds')
|
||||
def testChild(self):
|
||||
"""
|
||||
Checks that calling do_load_child_test_harness without run_test_in_child
|
||||
results in a usable test state.
|
||||
"""
|
||||
self.writeFile("test_child_assertions.js", CHILD_HARNESS_SIMPLE)
|
||||
self.writeManifest(["test_child_assertions.js"])
|
||||
|
||||
self.assertTestResult(True)
|
||||
self.assertEquals(1, self.x.testCount)
|
||||
self.assertEquals(1, self.x.passCount)
|
||||
self.assertEquals(0, self.x.failCount)
|
||||
self.assertEquals(0, self.x.todoCount)
|
||||
self.assertInLog(TEST_PASS_STRING)
|
||||
self.assertNotInLog(TEST_FAIL_STRING)
|
||||
|
||||
def testSyntaxError(self):
|
||||
"""
|
||||
Check that running a test file containing a syntax error produces
|
||||
|
Loading…
x
Reference in New Issue
Block a user