Skip to content

Commit 99aae5d

Browse files
committed
Merge pull request #59 from github/mocha
Switch to Mocha
2 parents fcaa6f3 + acac0fb commit 99aae5d

File tree

9 files changed

+343
-234
lines changed

9 files changed

+343
-234
lines changed

bower.json

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33
"version": "0.4.0",
44
"main": "fetch.js",
55
"devDependencies": {
6-
"es6-promise": "1.0.0",
7-
"qunit": "1.14.0"
6+
"es6-promise": "1.0.0"
87
},
98
"ignore": [
109
".*",

fetch.js

+5-3
Original file line numberDiff line numberDiff line change
@@ -92,9 +92,11 @@
9292
}
9393
}
9494

95-
this.formData = function() {
96-
var rejected = consumed(this)
97-
return rejected ? rejected : Promise.resolve(decode(this._body))
95+
if (self.FormData) {
96+
this.formData = function() {
97+
var rejected = consumed(this)
98+
return rejected ? rejected : Promise.resolve(decode(this._body))
99+
}
98100
}
99101

100102
this.json = function() {

package.json

+4-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@
55
"private": true,
66
"devDependencies": {
77
"bower": "1.3.8",
8+
"chai": "1.10.0",
89
"jshint": "2.5.2",
9-
"node-qunit-phantomjs": "0.2.2"
10+
"mocha-phantomjs": "3.5.2",
11+
"mocha": "2.1.0",
12+
"phantomjs": "1.9.13"
1013
}
1114
}

test/.jshintrc

+4-17
Original file line numberDiff line numberDiff line change
@@ -18,27 +18,14 @@
1818
"browser": true,
1919
"worker": true,
2020
"globals": {
21-
"MockXHR": false,
22-
"QUnit": false,
2321
"fetch": false,
2422
"Headers": false,
2523
"Request": false,
2624
"Response": false,
27-
"module": false,
25+
"mocha": false,
26+
"chai": false,
27+
"suite": false,
2828
"test": false,
29-
"asyncTest": false,
30-
"promiseTest": false,
31-
"testDone": false,
32-
"expect": false,
33-
"start": false,
34-
"stop": false,
35-
"ok": false,
36-
"equal": false,
37-
"notEqual": false,
38-
"deepEqual": false,
39-
"notDeepEqual": false,
40-
"strictEqual": false,
41-
"notStrictEqual": false,
42-
"raises": false
29+
"assert": false
4330
}
4431
}

test/run.sh

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ node ./test/server.js $port &>/dev/null &
1111
server_pid=$!
1212
trap "kill $server_pid" INT EXIT
1313

14-
node ./node_modules/.bin/node-qunit-phantomjs "http://localhost:$port/test/test.html"
14+
node ./node_modules/.bin/mocha-phantomjs -s localToRemoteUrlAccessEnabled=true -s webSecurityEnabled=false "http://localhost:$port/test/test.html"
15+
node ./node_modules/.bin/mocha-phantomjs -s localToRemoteUrlAccessEnabled=true -s webSecurityEnabled=false "http://localhost:$port/test/test-worker.html"

test/test-worker.html

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>Fetch Worker Tests</title>
6+
<link rel="stylesheet" href="../node_modules/mocha/mocha.css" />
7+
</head>
8+
<body>
9+
<div id="mocha"></div>
10+
<script src="../node_modules/mocha/mocha.js"></script>
11+
12+
<script>
13+
mocha.setup('tdd')
14+
15+
var worker = new Worker('worker.js')
16+
17+
worker.addEventListener('message', function(e) {
18+
switch (e.data.name) {
19+
case 'pass':
20+
test(e.data.title, function() {})
21+
break
22+
case 'pending':
23+
test(e.data.title)
24+
break
25+
case 'fail':
26+
test(e.data.title, function() {
27+
var err = new Error(e.data.message)
28+
err.stack = e.data.stack
29+
throw err
30+
})
31+
break
32+
case 'end':
33+
if (self.mochaPhantomJS) {
34+
mochaPhantomJS.run()
35+
} else {
36+
mocha.run()
37+
}
38+
break
39+
}
40+
})
41+
</script>
42+
</body>
43+
</html>

test/test.html

+17-16
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,29 @@
22
<html>
33
<head>
44
<meta charset="utf-8">
5-
<title>Test Suite</title>
6-
<link rel="stylesheet" href="../bower_components/qunit/qunit/qunit.css">
5+
<title>Fetch Tests</title>
6+
<link rel="stylesheet" href="../node_modules/mocha/mocha.css" />
77
</head>
88
<body>
9-
<div id="qunit"></div>
10-
<div id="qunit-fixture"></div>
9+
<div id="mocha"></div>
10+
<script src="../node_modules/chai/chai.js"></script>
11+
<script src="../node_modules/mocha/mocha.js"></script>
12+
<script>
13+
mocha.setup('tdd')
14+
self.assert = chai.assert
15+
</script>
16+
1117
<script src="../bower_components/es6-promise/promise.js"></script>
1218
<script src="../fetch.js"></script>
13-
<script src="../bower_components/qunit/qunit/qunit.js"></script>
19+
20+
<script src="test.js"></script>
21+
1422
<script>
15-
QUnit.promiseTest = function(testName, expected, callback) {
16-
QUnit.test(testName, expected, function() {
17-
stop();
18-
Promise.resolve().then(callback).then(start, function(error) {
19-
ok(false, error);
20-
start();
21-
});
22-
});
23+
if (self.mochaPhantomJS) {
24+
mochaPhantomJS.run()
25+
} else {
26+
mocha.run()
2327
}
24-
window.promiseTest = QUnit.promiseTest;
2528
</script>
26-
<script>QUnit.config.testTimeout = 1000</script>
27-
<script src="./test.js"></script>
2829
</body>
2930
</html>

0 commit comments

Comments
 (0)