add browser test runner
This commit is contained in:
parent
f7813ccd5e
commit
61049e9ca2
2 changed files with 128 additions and 0 deletions
74
lib/ace/test/all_browser.js
Normal file
74
lib/ace/test/all_browser.js
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
define(function(require, exports, module) {
|
||||
|
||||
var async = require("asyncjs");
|
||||
var dom = require("pilot/dom");
|
||||
|
||||
var passed = 0
|
||||
var failed = 0
|
||||
var log = document.getElementById("log")
|
||||
|
||||
async.concat(
|
||||
require("./anchor_test"),
|
||||
require("./change_document_test"),
|
||||
require("./document_test"),
|
||||
require("./edit_session_test"),
|
||||
require("./event_emitter_test"),
|
||||
require("./navigation_test"),
|
||||
require("./range_test"),
|
||||
require("./search_test"),
|
||||
require("./selection_test"),
|
||||
require("./text_edit_test"),
|
||||
require("./virtual_renderer_test"),
|
||||
require("./mode/css_test"),
|
||||
require("./mode/css_tokenizer_test"),
|
||||
require("./mode/html_test"),
|
||||
require("./mode/html_tokenizer_test"),
|
||||
require("./mode/javascript_test"),
|
||||
require("./mode/javascript_tokenizer_test"),
|
||||
require("./mode/text_test"),
|
||||
require("./mode/xml_test"),
|
||||
require("./mode/xml_tokenizer_test")
|
||||
)
|
||||
.run()
|
||||
.each(function(test, next) {
|
||||
var node = document.createElement("div");
|
||||
node.className = test.passed ? "passed" : "failed";
|
||||
|
||||
var name = test.name
|
||||
if (test.suiteName)
|
||||
name = test.suiteName + ": " + test.name
|
||||
|
||||
var msg = "[" + test.count + "/" + test.index + "] " + name + " " + (test.passed ? "OK" : "FAIL")
|
||||
if (!test.passed) {
|
||||
if (test.err.stack)
|
||||
var err = test.err.stack
|
||||
else
|
||||
var err = test.err
|
||||
|
||||
msg += "<pre class='error'>" + err + "</pre>";
|
||||
}
|
||||
|
||||
node.innerHTML = msg;
|
||||
log.appendChild(node);
|
||||
|
||||
next()
|
||||
})
|
||||
.each(function(test) {
|
||||
if (test.passed)
|
||||
passed += 1
|
||||
else
|
||||
failed += 1
|
||||
})
|
||||
.end(function() {
|
||||
log.innerHTML += [
|
||||
"<div class='summary'>",
|
||||
"<br>",
|
||||
"Summary: <br>",
|
||||
"<br>",
|
||||
"Total number of tests: " + (passed + failed) + "<br>",
|
||||
(passed ? "Passed tests: " + passed + "<br>" : ""),
|
||||
(failed ? "Failed tests: " + failed + "<br>" : "")
|
||||
].join("")
|
||||
})
|
||||
|
||||
});
|
||||
54
lib/ace/test/tests.html
Normal file
54
lib/ace/test/tests.html
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>Ace Unit Tests</title>
|
||||
<style type="text/css" media="screen">
|
||||
|
||||
#log .passed {
|
||||
color: green;
|
||||
}
|
||||
|
||||
#log .failed {
|
||||
color: red;
|
||||
}
|
||||
|
||||
#log pre.error {
|
||||
color: black;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="log"></div>
|
||||
|
||||
<script src="../../../demo/require.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
|
||||
require({
|
||||
paths: {
|
||||
ace: "../lib/ace",
|
||||
cockpit: "../support/cockpit/lib/cockpit",
|
||||
pilot: "../support/pilot/lib/pilot"
|
||||
},
|
||||
packages : [{
|
||||
name: "asyncjs",
|
||||
location: "../lib/ace/test",
|
||||
lib: "asyncjs",
|
||||
main: "index"
|
||||
}, {
|
||||
name: "assert",
|
||||
location: "../lib/ace/test",
|
||||
lib: "asyncjs",
|
||||
main: "assert"
|
||||
}]
|
||||
});
|
||||
|
||||
require(["ace/test/all_browser"], function(tests) {
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Add table
Add a link
Reference in a new issue