Skip to content

Commit

Permalink
commits e2e test
Browse files Browse the repository at this point in the history
  • Loading branch information
yyx990803 committed Apr 21, 2016
1 parent 0220fc3 commit 7b180cd
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 19 deletions.
19 changes: 0 additions & 19 deletions examples/commits/app.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,4 @@
var apiURL = 'https://api.github.com/repos/vuejs/vue/commits?per_page=3&sha='
var isPhantom = navigator.userAgent.indexOf('PhantomJS') > -1

/**
* Test mocks
*/

var mocks = {
master: [{sha:'111111111111', commit: {message:'one', author:{name:'Evan',date:'2014-10-15T13:52:58Z'}}},{sha:'111111111111', commit: {message:'hi', author:{name:'Evan',date:'2014-10-15T13:52:58Z'}}},{sha:'111111111111', commit: {message:'hi', author:{name:'Evan',date:'2014-10-15T13:52:58Z'}}}],
dev: [{sha:'222222222222', commit: {message:'two', author:{name:'Evan',date:'2014-10-15T13:52:58Z'}}},{sha:'111111111111', commit: {message:'hi', author:{name:'Evan',date:'2014-10-15T13:52:58Z'}}},{sha:'111111111111', commit: {message:'hi', author:{name:'Evan',date:'2014-10-15T13:52:58Z'}}}]
}

function mockData () {
this.commits = mocks[this.currentBranch]
}

/**
* Actual demo
Expand Down Expand Up @@ -45,11 +31,6 @@ var demo = new Vue({
return v.replace(/T|Z/g, ' ')
},
fetchData: function () {
// CasperJS fails at cross-domain XHR even with
// --web-security=no, have to mock data here.
if (isPhantom) {
return mockData.call(this)
}
var xhr = new XMLHttpRequest()
var self = this
xhr.open('GET', apiURL + self.currentBranch)
Expand Down
18 changes: 18 additions & 0 deletions test/e2e/custom-assertions/checked.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
exports.assertion = function (selector, expected) {
this.message = 'Testing if element <' + selector + '> is checked.'
this.expected = expected !== false
this.value = function (res) {
return res.value
}
this.pass = function (val) {
return val === this.expected
}
this.command = function (cb) {
var self = this
return this.api.execute(function (selector) {
return document.querySelector(selector).checked
}, [selector], function (res) {
cb.call(self, res)
})
}
}
18 changes: 18 additions & 0 deletions test/e2e/specs/commits.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
module.exports = {
'commits': function (browser) {
browser
.url('http://localhost:8080/examples/commits/')
.waitForElementVisible('li', 1000)
.assert.elementCount('input', 2)
.assert.elementCount('label', 2)
.assert.containsText('label[for="master"]', 'master')
.assert.containsText('label[for="dev"]', 'dev')
.assert.checked('#master')
.assert.checked('#dev', false)
.assert.containsText('p', 'vuejs/vue@master')
.assert.elementCount('li', 3)
.assert.elementCount('li .commit', 3)
.assert.elementCount('li .message', 3)
.end()
}
}

0 comments on commit 7b180cd

Please sign in to comment.