gecko/testing/mochitest
Bobby Holley 228e78b8ef Bug 713747 - Fix funky tests. r=bz
The conversion of checks for UniversalBrowserWrite to UniversalXPConnect caused these test fail, because they acquire UniversalXPConnect and actually doesn't want the results. In particular, they pass the security check in nsWindowWatcher::CalculateChromeFlags, which causes them to fail.

The first test doesn't actually need UniversalXPConnect, so we can remove it for free. The second one needs it, so we add some SpecialPowers goop to make it possible. It's not ideal, but it can go away when the wrapper in bug 702353 lands.
2011-12-30 09:35:39 -08:00
..
chrome Bug 670831 - Enable some mochitest sanity tests for uncaught exception handling. r=jmaher 2011-12-02 23:25:04 +11:00
dynamic Backout 4997c6f8b24d (bug 616542) for causing locally run mochitest-browser-chrome test runs to fail 2011-11-05 18:35:59 +00:00
MochiKit Backout 4997c6f8b24d (bug 616542) for causing locally run mochitest-browser-chrome test runs to fail 2011-11-05 18:35:59 +00:00
pywebsocket Bug 710345: Mozilla-specific changes to pywebsocket v606. r=mcmanus 2011-12-20 00:20:12 -08:00
specialpowers Backout 4997c6f8b24d (bug 616542) for causing locally run mochitest-browser-chrome test runs to fail 2011-11-05 18:35:59 +00:00
ssltunnel bug 599295 r=jduell 2011-11-02 17:43:27 -04:00
static Bug 711011 - Declare a character encoding in the Mochitest HTML template. r=ted. 2011-12-15 16:14:32 +02:00
tests Bug 713747 - Fix funky tests. r=bz 2011-12-30 09:35:39 -08:00
android.json Bug 694741 - Move Android mochitest test-paths into the source tree. r=ctalbert 2011-10-17 16:58:57 -04:00
browser-harness.xul Bug 693959 - convert quit.js to specialpowers. r=ted 2011-10-14 07:52:02 -04:00
browser-test-overlay.xul Bug 676274 - refactor specialpowers so we can use the api in mochitest-chrome without specialpowers. r=ted, a=test-only. 2011-10-06 10:51:03 -04:00
browser-test.js Bug 703176 - Ensure all browser chrome mochitests do fail when uncaught JS exceptions occur. (v1.1) r=jmaher 2011-12-02 23:25:03 +11:00
chrome-harness.js Bug 367393 - Add a packed MochiKit that contains only SimpleTest dependencies- harness. r=jmaher, a=test-only 2011-08-12 12:21:35 -04:00
gen_template.pl
harness-overlay.xul Bug 693959 - convert quit.js to specialpowers. r=ted 2011-10-14 07:52:02 -04:00
harness.xul
install.rdf Merging to tip. a=blocking-b7 2010-09-30 17:10:19 -07:00
jar.mn Back out changeset 453772872eeb (bug 668710) for bustage 2011-11-20 01:10:40 +13:00
Makefile.in Bug 689006: Upgrade pywebsocket to binary API (version 553, also supports Python > 2.5) r=mcmanus 2011-12-15 15:21:55 -08:00
MockFilePicker.jsm Bug 712518 - Improve MockFilePicker.jsm; r=jmaher 2011-12-23 11:10:52 +13:00
mozprefs.js
plain-loop.html Bug 693959 - convert quit.js to specialpowers. r=ted 2011-10-14 07:52:02 -04:00
pywebsocket_wrapper.py Bug 654354 - Don't output python backtraces when a mochitest is killed via ctrl-c. r=ted 2011-05-09 17:54:35 -04:00
README.txt
redirect.html Bug 676274 - refactor specialpowers so we can use the api in mochitest-chrome without specialpowers. r=ted, a=test-only. 2011-10-06 10:51:03 -04:00
runtests.py Bug 710345: Mozilla-specific changes to pywebsocket v606. r=mcmanus 2011-12-20 00:20:12 -08:00
runtestsremote.py Bug 691425 - allow for reftest/mochitest android crashes to be dumped in the logs just like desktop crashes. r=ctalbert 2011-10-06 10:51:03 -04:00
runtestsvmware.py Bug 552300 - 'Use VMware VMs to run mochitests, optionally record and repeat until they fail.' r=ted. 2010-05-17 11:00:13 -07:00
server.js Bug 693959 - convert quit.js to specialpowers. r=ted 2011-10-14 07:52:02 -04:00

 ----------------
 mochitest README
 ----------------

Steps to get started:

 1.) Run the runtests.pl script to start the server.
 
     Currently, the test script automatically determines the location
     of *Firefox*.

 2.) gen_template.pl will generate test templates for HTML, XUL, and XHTML.
     Read the comment at the top of the file for usage instructions.

 3.) Write a test.


Example test:

<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=345656
-->
<head>
  <title>Test for Bug 345656</title>
  <script type="text/javascript" src="/MochiKit/MochiKit.js"></script>
  <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>        
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<p id="display"></p>
<div id="content" style="display: none">
  
</div>
<pre id="test">
<script class="testbody" type="text/javascript">

/** Test for Bug 345656 **/
//
//add information to show on the test page
//
$("display").innerHTML = "doing stuff...";

//
// The '$' is function is shorthand for getElementById. This is the same thing:
//
document.getElementById("display").innerHTML = "doing stuff...";

//
// you can add content that you don't want to clutter 
// the display to the content div.
//
// You can write directly, or you can use MochiKit functions
// to do it in JS like this:
//
appendChildNodes($("content"),
                 DIV({class: "qux"},
                     SPAN({id: "span42"}, "content"))
                 );

//
// the ok() function is like assert
//
ok(true, "checking to see if true is true);

//
// this will fail
//
ok(1==2, "1 equals 2?");


//
// this will be marked as a todo.
// When we fix 1 so it equals 2, we'll need to change this 
// function to ok() or is().
//
todo(1==2, "1 equals 2?");

//
// is() takes two args
//
myVar = "foo";
is(myVar, "foo", "checking to see if myVar is 'foo'");

//
// Tests can run in event handlers.
// Call this to tell SimpleTest to wait for SimpleTest.finish() 
//
SimpleTest.waitForExplicitFinish();

//
// event handler:
//
function event_fired(ev) {
  is(ev.newValue, "width: auto;", "DOMAttrModified event reports correct newValue");
  SimpleTest.finish(); // trigger the end of our test sequence
}

//
// Hook up the event. Mochikit.Signal has many conveniences for this, if you want.
//
$("content").addEventListener("DOMAttrModified", event_fired, false);

//
// Fire the event.
//
$("content").style.width = "auto";

</script>
</pre>
</body>
</html>