Zombied Chai
A plugin for Chai that wraps ZombieJS assertions, but with a better DSL.
If you are using should
or expect
in Chai, instead of writing
browser.assert.status(200)
you can write
browser.should.have.status(200)
expect(browser).to.have.status(200)
How to use it
On your specHelper.js make sure you load zombied-chai
like below:
'use strict'
var chai = require('chai')
var zombiedChai = require('zombied-chai')
chai.should()
chai.use(zombiedChai)
Assertions
Not all assertions are implemented yet but you already can do some basic things:
Zombie assertionbrowser.assert |
Zombied-Chai assertionbrowser.should.be/have |
---|---|
.success |
.successful |
.status(200) |
.status(200) |
.element('#selector') |
.element('#selector') |
.className('#selector', 'foo') |
.element('#selector').withClass('foo') |
.hasNoClass('#selector', 'foo') |
.element('#selector').withoutClass('foo') |
.attribute('#selector', 'foo', 'bar') |
.element('#selector').withAttribute('foo', 'bar') |
.attribute('#selector', 'data-foo', 'bar') |
.element('#selector').withData('foo', 'bar') |
.hasFocus('#selector') |
.element('#selector').focused |
.link('#selector', 'link text') |
.link('#selector', 'link text') |
.link('#selector', 'link text', 'url') |
.link('#selector', 'link text').withHref('#href') |
.url('url|obj|regex') |
.url().withHost('host') |
.url('url|obj|regex') |
.url().withPath('/path') |
.url('url|obj|regex') |
.url().withQuery('a', 'b') |
You can chain all this:
.url().withHost('host').withPath('/').withQuery('a', 'b')
Check the tests for all assertions. More assertions will come in time.