Closed Bug 509583 Opened 14 years ago Closed 14 years ago

test_null_interfaces.js asserts in debug builds

Categories

(Core :: XPConnect, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
Tracking Status
status1.9.2 --- beta1-fixed
status1.9.1 --- .4-fixed

People

(Reporter: sdwilsh, Assigned: mrbkap)

References

Details

(Keywords: fixed1.9.0.15, verified1.9.1)

Attachments

(1 file)

bug 505988 added an assertion that test_null_interfaces.js triggers, which makes xpcshell tests not run to completion in debug builds.

You can run this test with the following command (in your object directory):
make -C toolkit/components/places/tests/ check-one SOLO_FILE=test_null_interfaces.js
OS: Windows 95 → All
Attached patch Proposed fixSplinter Review
This looks like a many-years-old oversight in the existing code.
Assignee: nobody → mrbkap
Status: NEW → ASSIGNED
Attachment #393640 - Flags: superreview?(jst)
Attachment #393640 - Flags: review?(jst)
Attachment #393640 - Flags: superreview?(jst)
Attachment #393640 - Flags: superreview+
Attachment #393640 - Flags: review?(jst)
Attachment #393640 - Flags: review+
http://hg.mozilla.org/mozilla-central/rev/2c3017c460ac
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Attachment #393640 - Flags: approval1.9.1.4?
Attachment #393640 - Flags: approval1.9.0.15?
http://hg.mozilla.org/releases/mozilla-1.9.1/rev/05208601274e

Checking in js/src/xpconnect/src/xpcvariant.cpp;
/cvsroot/mozilla/js/src/xpconnect/src/xpcvariant.cpp,v  <--  xpcvariant.cpp
new revision: 1.33; previous revision: 1.32
done
Comment on attachment 393640 [details] [diff] [review]
Proposed fix

approval ex post facto.
Attachment #393640 - Flags: approval1.9.1.4?
Attachment #393640 - Flags: approval1.9.1.4+
Attachment #393640 - Flags: approval1.9.0.15?
Attachment #393640 - Flags: approval1.9.0.15+
(In reply to comment #0)
> bug 505988 added an assertion that test_null_interfaces.js triggers, which
> makes xpcshell tests not run to completion in debug builds.
> 
> You can run this test with the following command (in your object directory):
> make -C toolkit/components/places/tests/ check-one
> SOLO_FILE=test_null_interfaces.js

Verified this for 1.9.1 with the above:

ff-191-debug albill$ make -C toolkit/components/places/tests/ check-one SOLO_FILE=test_null_interfaces.js
/usr/bin/python -u /Users/albill/mozilla-191/config/pythonpath.py \
          -I/Users/albill/mozilla-191/build \
          /Users/albill/mozilla-191/testing/xpcshell/runxpcshelltests.py \
          --symbols-path=../../../../dist/crashreporter-symbols \
          --test-path=test_null_interfaces.js \
          ../../../../dist/bin/xpcshell \
          ../../../../_tests/xpcshell/test_places/autocomplete ../../../../_tests/xpcshell/test_places/sync ../../../../_tests/xpcshell/test_places/bookmarks ../../../../_tests/xpcshell/test_places/queries ../../../../_tests/xpcshell/test_places/unit
TEST-PASS | /Users/albill/ff-191-debug/_tests/xpcshell/test_places/unit/test_null_interfaces.js | test passed
INFO | Result summary:
INFO | Passed: 1
INFO | Failed: 0


This doesn't work on 1.9.0 though. I'm not an expert in running tests this way so I'm not sure if there is a way to work around this failure:

************************************************************
* Call to xpconnect wrapped JSObject produced this error:  *
[Exception... "Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]"  nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)"  location: "JS frame :: file:///Users/albill/ff-190-debug/dist/bin/components/nsBrowserContentHandler.js :: mod_regself :: line 801"  data: no]
************************************************************
No error message available for error number 1
*** test pending
ReferenceError: run_test is not defined
*** FAIL ***
WARNING: nsExceptionService ignoring thread destruction after shutdown: file /Users/albill/mozilla/xpcom/base/nsExceptionService.cpp, line 194
Keywords: verified1.9.1
You need to log in before you can comment on or make changes to this bug.