Skip to content

Commit 80b3a61

Browse files
committed
use mocha sinon chai instead
1 parent b1f3f6d commit 80b3a61

File tree

5 files changed

+45
-6
lines changed

5 files changed

+45
-6
lines changed

karma.conf.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ var path = require('path')
22

33
module.exports = function (config) {
44
config.set({
5-
frameworks: ['jasmine'],
5+
frameworks: ['mocha', 'sinon-chai'],
66
browsers: ['PhantomJS'],
77
reporters: ['spec', 'coverage'],
88
files: [

package.json

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,27 @@
2828
},
2929
"homepage": "https://github.com/firebase/vuefire#readme",
3030
"devDependencies": {
31+
"chai": "^3.5.0",
3132
"eslint": "^2.5.1",
3233
"eslint-config-standard": "^5.1.0",
3334
"eslint-plugin-html": "^1.4.0",
3435
"eslint-plugin-promise": "^1.1.0",
3536
"eslint-plugin-standard": "^1.3.2",
3637
"firebase": "^2.4.1",
3738
"istanbul-instrumenter-loader": "^0.2.0",
38-
"jasmine-core": "^2.4.1",
3939
"karma": "^0.13.22",
4040
"karma-coverage": "^0.5.5",
41-
"karma-jasmine": "^0.3.8",
41+
"karma-mocha": "^0.2.2",
4242
"karma-phantomjs-launcher": "^1.0.0",
43+
"karma-sinon-chai": "^1.2.0",
4344
"karma-sourcemap-loader": "^0.3.7",
4445
"karma-spec-reporter": "0.0.24",
4546
"karma-webpack": "^1.7.0",
47+
"lolex": "^1.4.0",
48+
"mocha": "^2.4.5",
4649
"phantomjs-prebuilt": "^2.1.3",
50+
"sinon": "^1.17.3",
51+
"sinon-chai": "^2.8.0",
4752
"vue": "^1.0.19",
4853
"webpack": "^1.12.14"
4954
}

src/vuefire.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
let Vue // late binding
1+
var Vue // late binding
22

33
/**
44
* Check if a value is an object.

tests/helpers.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
module.exports = {
2+
invalidFirebaseRefs: [null, undefined, true, false, [], 0, 5, '', 'a', ['hi', 1]],
3+
invalidBindVars: ['', 1, true, false, [], {}, [1, 2], {a: 1}, null, undefined, 'te.st', 'te$st', 'te[st', 'te]st', 'te#st', 'te/st', 'a#i]$da[s', 'te/nst', 'te/rst', 'te/u0000st', 'te/u0015st', 'te/007Fst', Array(800).join('a')],
4+
5+
/* Returns a random alphabetic string of variable length */
6+
generateRandomString: function () {
7+
var possibleCharacters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
8+
var numPossibleCharacters = possibleCharacters.length
9+
10+
var text = ''
11+
for (var i = 0; i < 10; i++) {
12+
text += possibleCharacters.charAt(Math.floor(Math.random() * numPossibleCharacters))
13+
}
14+
15+
return text
16+
}
17+
}

tests/vuefire.spec.js

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,28 @@
11
var Vue = require('vue')
2-
// var Firebase = require('firebase')
2+
var Firebase = require('firebase')
33
var VueFire = require('../src/vuefire')
4+
var helpers = require('./helpers')
45

56
Vue.use(VueFire)
67

8+
var demoFirebaseUrl = 'https://' + helpers.generateRandomString() + '.firebaseio-demo.com'
9+
710
describe('VueFire', function () {
11+
var firebaseRef
12+
13+
beforeEach(function (done) {
14+
firebaseRef = new Firebase(demoFirebaseUrl)
15+
firebaseRef.remove(function (error) {
16+
if (error) {
17+
done(error)
18+
} else {
19+
firebaseRef = firebaseRef.child(helpers.generateRandomString())
20+
done()
21+
}
22+
})
23+
})
24+
825
it('should pass', function () {
9-
expect(1).toBe(1)
26+
expect(1).to.equal(1)
1027
})
1128
})

0 commit comments

Comments
 (0)