The complexity of the xpcshell test harness has grown over time. I am reluctant
to make it more complex without first trying to simplify it. Here I consolidate
some of the argument passing between functions in an attempt to simplify some
important interfaces. Changes are strictly structural and should result in no
change in behavior.
This suite already had `add_task.skip(aTask)` and `add_task.only(aTask)`
implemented, which required quite a bit more boilerplate code to get them right.
I removed this API in favor of `add_task(aTask).skip()` and `add_task(aTask).only()`
so that it's the same signature as Mochitest-browser and Mochitest-chrome.
I also noticed that `add_task` was defined twice, right above the other, which
was of course the latest version. I removed the latter.
MozReview-Commit-ID: BSCCXorzSlC
--HG--
extra : rebase_source : 9fe671baa357882258e1e94e47981185f37e246a
If we botch things in libxul badly enough that startup cache
precompilation works, but xpcshell self tests fail, it's nice to get
understandable stacks for asserts or crashes inside libxul.
This commit contains a few things:
* Update our copy of google-breakpad to upstream c53ed143108948eb7e2d7ee77dc8c0d92050ce7c
* Get rid of all but one local patch, fold a few related local patches into one
* Misc build fixup to sync with upstream--adding a few new moz.build files,
source files
* The final bits of unhooking Breakpad from the profiler:
** Revert to only building toolkit/crashreporter if MOZ_CRASHREPORTER.
** Stop building bits of Breakpad that we only needed for the profiler.
** Remove a few bits of profiler code that were used to interface with Breakpad.
** Remove toolkit/crashreporter/breakpad-logging, which was only used to
suppress Breakpad logging for the in-process stackwalker.
* Upstream removed their Android-compat sys/ucontext.h because the Android NDK
added it, but the bionic we're using for Gonk builds is too old, so add a
copy of the previous version of those files to
toolkit/crashreporter/gonk-include to keep Gonk building.
* Consolidate moz.build files under toolkit/crashreporter/google-breakpad/client/linux
--HG--
rename : toolkit/crashreporter/google-breakpad/src/common/pathname_stripper.h => toolkit/crashreporter/google-breakpad/src/processor/pathname_stripper.h
rename : toolkit/crashreporter/google-breakpad/src/common/pathname_stripper_unittest.cc => toolkit/crashreporter/google-breakpad/src/processor/pathname_stripper_unittest.cc
extra : histedit_source : 43e65f5432657f548cac5aa7936461e58454c3b6%2C7b56ccc79d9d58ebde0583d920f3593e25212621
extra : rebase_source : f6dbfb8fb2ba5b27e63b26d57c404962679c7a76
extra : commitid : DMQlXPms868
extra : source : 09fd4f3ab6e764016fe073efb226f03b5969af59
extra : intermediate-source : 16f9d3a6d2ef6a6efd088e3b8eff0a4723daef8f
There's a test for add_task() in selftest.py called ADD_TASK_MULTIPLE, which tests if
multiple add_task() tests are working. The test added in this commit does the exact same
except without run_test(). Since the original tests included this, I thought it would make
a good case for checking if the removal of run_test() is working as expected. Please remove
if this is unnecessary.
--HG--
extra : rebase_source : f6617259056db7ac7a658a89063694f51408b8ce
Since the simple test cases before this bug had cases for both passing and
failing, it would be a good idea to follow suit and add similar failing tests
for when run_test() is omitted.
Like the other simple tests defined in selftest.py, SIMPLE_FAILING_TEST,
ADD_TEST_FAILING, etc., it follows a similar pattern except these are done
without run_test() defined.
--HG--
extra : rebase_source : a1ef9a7b9e8274fe981864c5e021c80d2d66f7ec
Four new test cases have been added to testing/xpcshell/selftest.py.
These new tests check that tests where run_test() is not defined
work properly.
The test cases check the following cases:
1. when only add_test() is used.
2. when only add_task() is used.
3. when both add_task() and add_test() is used.
4. when a test file is empty, i.e. contains no add_test(), add_task() or
run_test().
Test bodies only consist of do_check_true(true) calls to make up a minimal
test without run_test() in the same vein as the other simple tests defined
previously.
Also, broke a comment up that was too long.
--HG--
extra : rebase_source : 48d055680ba8108816ecbe07008496c5281f46cc