Bug 638219 - Move command construction into Test class method; r=terrence

--HG--
rename : toolkit/modules/Timer.jsm => browser/devtools/shared/Browser.jsm
rename : toolkit/modules/tests/xpcshell/test_timer.js => browser/devtools/shared/test/browser_browser_basic.js
extra : rebase_source : 4a02112413b31457cf855d68a6db6d816172652f
Bug 638219 - Extract valgrind setup, prepend in Test.command(); r=terrence

--HG--
extra : rebase_source : dc17ae04127892f4d5778e5d546d8fba4436766f
Bug 638219 - Save static paths in module-level constants; r=terrence

These paths are a little far away from the script they're referenced in, so
it's a little fragile. However, since (a) these aren't expected to change
that often, and (b) the code should fail conspicuously if there is a change,
I don't think it's a problem.

--HG--
extra : rebase_source : 2e2d278826d4d30c813156553590c24d9056575f
Bug 638219 - Use TestOutput class to wrap test results; r=terrence

--HG--
extra : rebase_source : 446d5f86d11c4d41fc771dde2b6357f6fff63175
Bug 638219 - Reuse cmd saved in results object rather than rebuilding it; r=terrence

--HG--
extra : rebase_source : 4b955e7793c966db184f67cc1a90ab8c24bbfcd7
Bug 638219 - Move test result output into result processing function; r=terrence

--HG--
extra : rebase_source : c72b28460c2e4b52aa3e4bfa903d5ee1563c1e39
Bug 638219 - Set all test-independent command-line bits up once, pass in; r=terrence

This will help integration with the jstests framework, which also uses
a single prefix argument to its Test command construction method.

Note that the order of js arguments is changed, from:

    cmd = [js] + list(set(self.jitflags)) + shell_args + ['-e', expr]
    cmd += ['-f', os.path.join(LIB_DIR, 'prolog.js'), '-f', self.path]

to:

    prefix = [os.path.abspath(args[0])] + shlex.split(options.shell_args)
    prefix += ['-f', os.path.join(jittests.LIB_DIR, 'prolog.js')]
    cmd = prefix + list(set(self.jitflags)) + ['-e', expr, '-f', self.path]

The assumption here is that only the order of -f options matters.

--HG--
extra : rebase_source : 9655d6efc62006aa840d72f6b31d764bd870cc7d
Bug 846099:  Avoid (GC-timing-sensitive) nsTraceRefcnt assertions from duplicate class names.  r=mounir
Bug 832920 - fix failure for browser_dbg_bug723069_editor-breakpoints.js.  r=past
Bug 832920.  Add a way for chrome iframes to opt into having a separate refresh driver (e.g. if they plan to be moved between windows) and make devtools use that opt-in.  r=tnikkel,paul
Bug 843261.  Add support for sequence<DOMString> arguments in WebIDL callbacks.  r=peterv

This does allow people to accidentally hit the slower path through use
of non-const strings, but I think that's OK now that we're mostly
autogenerating this stuff
Bug 776536 part 1.  Rename nsNodeIterator to mozilla::dom::NodeIterator.  r=peterv

--HG--
rename : content/base/src/nsNodeIterator.cpp => content/base/src/NodeIterator.cpp
rename : content/base/src/nsNodeIterator.h => content/base/src/NodeIterator.h
Bug 776536 part 2.  Rename nsTreeWalker to mozilla::dom::TreeWalker.  r=peterv

--HG--
rename : content/base/src/nsTreeWalker.cpp => content/base/src/TreeWalker.cpp
rename : content/base/src/nsTreeWalker.h => content/base/src/TreeWalker.h
Bug 776536 part 3.  Add a WebIDL API to NodeIterator and TreeWalker.  r=peterv
Bug 776536 part 4.  Turn on WebIDL bindings for NodeIterator and TreeWalker.  r=peterv

The behavior here is a bit weird because Document is still not a
WebIDL object, so calling createNodeIterator or createTreeWalker via
an Xray will call the XPCOM versions of those methods.  That means
that I can't just disable XPCOM-based wrapping for TreeWalker and
NodeIterator altogether, unfortunately, which means a web page could
try stashing a TreeWalker in something like userdata and then getting
it back and end up wrapping it as an XPCOM object the second time.

I could "fix" that by adding a wrapper cache and whatnot, I guess, if
desired...  But the problem will go away once we convert Document in
any case.
Bug 844869 - Make NS_ASSERTION fatal under GTest. r=dbaron

--HG--
extra : rebase_source : e2a6772d505349be23a801b25fa1ee712a36a88e
Bug 834672 - AppProtocolHandler.js should never throw r=jduell
Bug 683159:  Explicitly gc in test_bug451286 so that intermittent assertions aren't spread across all the following tests.
Bug 844832. r=blassey
Bug 844290 - Refactor GeckoInputConnection key handling code; r=cpeterson