Platform/JS Compartments Mochitest: Difference between revisions

 
(6 intermediate revisions by the same user not shown)
Line 48: Line 48:
= Mochitest =
= Mochitest =


Run with <code>python runtests.py --total-chunks=20 --this-chunk=n --autorun --debugger=gdb</code> where <code>n</code> is the chunk you want to examine.
Pass.


== Remaining large-ish items ==
== Remaining large-ish items ==
Line 75: Line 75:


<pre>
<pre>
http://mochi.test:8888/tests/toolkit/components/passwordmgr/test/test_basic_form_2pw_1.html
http://mochi.test:8888/tests/layout/generic/test/test_backspace_delete.xul
http://mochi.test:8888/tests/toolkit/components/microformats/tests/test_Microformats.html
http://mochi.test:8888/tests/toolkit/components/microformats/tests/test_Microformats_hCard.html
http://mochi.test:8888/tests/toolkit/components/microformats/tests/test_Microformats_hCalendar.html
</pre>
</pre>


Line 85: Line 80:


<pre>
<pre>
http://mochi.test:8888/tests/dom/tests/mochitest/ajax/prototype/test_Prototype.html (bug 602574)
</pre>
</pre>


= Mochichrome =
= Mochichrome =


13 failing tests out of 14051, in these files:
<pre>
 
</pre>
chrome://mochikit/content/chrome/js/src/xpconnect/tests/chrome/test_evalInSandbox.xul
-> add a function that the sandbox can call which forwards to getClassName
 
No idea what that comment about getClassName means.  What is happening here is that the test is using exactly the same technique GreaseMonkey uses to set up the sandbox, and that doesn't work anymore.
 
The specific issue is with code that does <code>sandbox.__proto__ = new XPCNativeWrapper(window);</code> where the caller is chrome, but ''sandbox'' and ''window'' are same-domain. When we rewrap the XPCNativeWrapper, it becomes a simple cross-compartment wrapper without X-ray behavior.
 
The whole rewrapping mechanism works as designed right up to WrapperFactory::Rewrap where it's actually time to create the new wrapper. We have a ''flags'' parameter that indicates we want X-ray behavior. But we create a wrapper without it.
 
We could just make that work, but mrbkap thinks we should instead provide a better sandboxing API and require GreaseMonkey (and any similar extensions) to switch to that.
 
-jorendorff, 10/5/2010


  chrome://mochikit/content/chrome/js/src/xpconnect/tests/chrome/test_wrappers-2.xul
  chrome://mochikit/content/chrome/js/src/xpconnect/tests/chrome/test_wrappers-2.xul
Line 159: Line 141:


-jorendorff, 10/5/2010
-jorendorff, 10/5/2010
I am also getting these failures:
7353 ERROR TEST-UNEXPECTED-FAIL | chrome://mochikit/content/chrome/layout/base/test/chrome/test_printpreview.xul | Timers should have run! - didn't expect "0 timers", but got it
7354 ERROR TEST-UNEXPECTED-FAIL | chrome://mochikit/content/chrome/layout/base/test/chrome/test_printpreview.xul | Timers should have run! - didn't expect 0, but got it


= Browserchrome =
= Browserchrome =


Failures (as of try build from 20101005 18:51):
Pass.
 
<pre>
chrome://mochitests/content/browser/browser/base/content/test/browser_bug592338.js
chrome://mochitests/content/browser/browser/base/content/test/browser_bug553455.js
chrome://mochitests/content/browser/browser/base/content/test/browser_tab_dragdrop.js
chrome://mochitests/content/browser/browser/base/content/test/browser_tab_dragdrop2.js
chrome://mochitests/content/browser/browser/components/places/tests/browser/browser_410196_paste_into_tags.js
chrome://mochitests/content/browser/browser/components/places/tests/browser/browser_423515.js
chrome://mochitests/content/browser/browser/components/places/tests/browser/browser_forgetthissite_single.js
chrome://mochitests/content/browser/browser/components/places/tests/browser/browser_library_infoBox.js
chrome://mochitests/content/browser/browser/components/places/tests/browser/browser_library_left_pane_commands.js
chrome://mochitests/content/browser/browser/components/places/tests/browser/browser_library_middleclick.js
chrome://mochitests/content/browser/browser/components/places/tests/browser/browser_library_search.js
chrome://mochitests/content/browser/browser/components/places/tests/browser/browser_sidebarpanels_click.js
chrome://mochitests/content/browser/browser/components/preferences/tests/browser_privacypane_1.js
chrome://mochitests/content/browser/browser/components/privatebrowsing/test/browser/browser_privatebrowsing_newwindow_stopcmd.js
chrome://mochitests/content/browser/browser/components/sessionstore/test/browser/browser_393716.js
chrome://mochitests/content/browser/browser/components/sessionstore/test/browser/browser_394759.js
chrome://mochitests/content/browser/toolkit/components/console/hudservice/tests/browser/browser_HUDServiceTestsAll.js</pre>


= make check =
= make check =


Passes
Pass.


= make jstestbrowser (jsreftest) =
= make jstestbrowser (jsreftest) =


We're seeing this consistently on debug builds on try.
Pass.
 
<pre>
TEST-UNEXPECTED-FAIL | js1_8/regress/regress-464418.js | application timed out after 330 seconds with no output
</pre>
Confirmed users
839

edits