forked from freeCodeCamp/freeCodeCamp
-
Notifications
You must be signed in to change notification settings - Fork 2
Chai Cheat
Quincy Larson edited this page Aug 20, 2016
·
1 revision
assert(val)
assert.fail(actual, expected)
assert.ok(val) // is truthy
assert.equal(actual, expected) // 'compare with =='
assert.strictEqual
assert.deepEqual
assert.isTrue
assert.isFalse
assert.isNull
assert.isNotNull
assert.isUndefined
assert.isDefined
assert.isFunction
assert.isObject
assert.isArray
assert.isString
assert.isNumber
assert.isBoolean
assert.typeOf(/tea/, 'regexp') // Object.prototype.toString()
assert.instanceOf(chai, Tea)
assert.include([ a,b,c ], a)
assert.match(val, /regexp/)
assert.property(obj, 'tea') // 'tea' in object
assert.deepProperty(obj, 'tea.green')
assert.propertyVal(person, 'name', 'John')
assert.deepPropertyVal(post, 'author.name', 'John')
assert.lengthOf(object, 3)
assert.throws(function() { ... })
assert.throws(function() { ... }, /reference error/)
assert.doesNotThrow
assert.operator(1, '<', 2)
assert.closeTo(actual, expected)
.to .be .been .is .that .and .have .with .at .of .same
expect(object).not.equal('x')
expect(object)
.equal(expected)
.eql
.deep.equal(expected) // same as .eql
.be.a('string')
.include(val)
.be.ok(val)
.be.true
.be.false
.be.null
.be.undefined
.be.empty
.be.arguments
.be.function
.be.instanceOf
.gt(5) # or .above .greaterThan
.gte # or .at.least
.lt(5) # or .below
.respondTo('bar')
.satisfy (n) -> n > 0
.have.members([2, 3, 4])
.have.keys(['foo'])
.have.key('foo')
.exist
expect(-> ...)
.throw /not a function/
global.jQuery = ...;
chai.use(require('chai-jquery'));
expect($body)
.have.attr('foo')
.have.prop('disabled')
.have.css('background')
.have.css('background-color', '#ffffff')
.have.data('foo')
.have.class('active')
.have.id('id')
.have.html('<em>hi</em>')
.have.text('hello')
.have.value('2013')
.be.visible
.be.hidden
.be.checked
.be.selected
.be.enabled
.be.disabled
.be.empty
.to.exist
.to.contain('text')
.to.have('.selector')
Learn to code and help nonprofits. Join our open source community in 15 seconds at http://freecodecamp.com
Follow our Medium blog
Follow Quincy on Quora
Follow us on Twitter
Like us on Facebook
And be sure to click the "Star" button in the upper right of this page.
New to Free Code Camp?
JS Concepts
JS Language Reference
- arguments
- Array.prototype.filter
- Array.prototype.indexOf
- Array.prototype.map
- Array.prototype.pop
- Array.prototype.push
- Array.prototype.shift
- Array.prototype.slice
- Array.prototype.some
- Array.prototype.toString
- Boolean
- for loop
- for..in loop
- for..of loop
- String.prototype.split
- String.prototype.toLowerCase
- String.prototype.toUpperCase
- undefined
Other Links