* feat(learn): add mocha and chai instructions * test: added one new lesson * rename added file and add tests * add meta to prettierignore, fix formatting * add unit-test numbering * add examples from boilerplate Co-authored-by: Randell Dawson <rdawson@onepathtech.com> * remove code comments, add description * elaborate test testStrings Co-authored-by: Randell Dawson <rdawson@onepathtech.com>
2.8 KiB
2.8 KiB
id, title, challengeType, forumTopicId
id | title | challengeType | forumTopicId |
---|---|---|---|
587d824b367417b2b2512c49 | Test for Truthiness | 2 | 301596 |
Description
As a reminder, this project is being built upon the following starter project on Repl.it, or cloned from GitHub.
isTrue()
will test for the boolean value true
and isNotTrue()
will pass when given anything but the boolean value of true
.
assert.isTrue(true, 'this will pass with the boolean value true');
assert.isTrue('true', 'this will NOT pass with the string value 'true');
assert.isTrue(1, 'this will NOT pass with the number value 1');
isFalse()
and isNotFalse()
also exist, and behave similarly to their true counterparts except they look for the boolean value of false
.
Instructions
Within tests/1_unit-tests.js
under the test labelled #4
in the Basic Assertions
suite, change each assert
to either assert.isTrue
or assert.isNotTrue
to make the test pass (should evaluate to true
). Do not alter the arguments passed to the asserts.
Tests
tests:
- text: All tests should pass.
testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=unit&n=3').then(data => {assert.equal(data.state,'passed'); }, xhr => { throw new Error(xhr.responseText); })
- text: You should choose the correct method for the first assertion - `isTrue` vs. `isNotTrue`.
testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=unit&n=3').then(data => { assert.equal(data.assertions[0].method, 'isTrue', 'True is true'); }, xhr => { throw new Error(xhr.responseText); })
- text: You should choose the correct method for the second assertion - `isTrue` vs. `isNotTrue`.
testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=unit&n=3').then(data => { assert.equal(data.assertions[1].method, 'isTrue', 'Double negation of a truthy value is true'); }, xhr => { throw new Error(xhr.responseText); })
- text: You should choose the correct method for the third assertion - `isTrue` vs. `isNotTrue`.
testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=unit&n=3').then(data => { assert.equal(data.assertions[2].method, 'isNotTrue', 'A truthy object is not true - neither is a false one'); }, xhr => { throw new Error(xhr.responseText); })
Challenge Seed
Solution
/**
Backend challenges don't need solutions,
because they would need to be tested against a full working project.
Please check our contributing guidelines to learn more.
*/