88 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			88 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| id: 587d824b367417b2b2512c48
 | |
| title: Use Assert.isOK and Assert.isNotOK
 | |
| challengeType: 2
 | |
| forumTopicId: 301607
 | |
| dashedName: use-assert-isok-and-assert-isnotok
 | |
| ---
 | |
| 
 | |
| # --description--
 | |
| 
 | |
| As a reminder, this project is being built upon the following starter project on [Repl.it](https://repl.it/github/freeCodeCamp/boilerplate-mochachai), or cloned from [GitHub](https://github.com/freeCodeCamp/boilerplate-mochachai/).
 | |
| 
 | |
| `isOk()` will test for a truthy value, and `isNotOk()` will test for a falsy value.
 | |
| 
 | |
| To learn more about truthy and falsy values, try our [Falsy Bouncer](https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/basic-algorithm-scripting/falsy-bouncer) challenge.
 | |
| 
 | |
| # --instructions--
 | |
| 
 | |
| Within `tests/1_unit-tests.js` under the test labelled `#3` in the `Basic Assertions` suite, change each `assert` to either `assert.isOk()` or `assert.isNotOk()` to make the test pass (should evaluate to `true`). Do not alter the arguments passed to the asserts.
 | |
| 
 | |
| # --hints--
 | |
| 
 | |
| All tests should pass.
 | |
| 
 | |
| ```js
 | |
| (getUserInput) =>
 | |
|   $.get(getUserInput('url') + '/_api/get-tests?type=unit&n=2').then(
 | |
|     (data) => {
 | |
|       assert.equal(data.state, 'passed');
 | |
|     },
 | |
|     (xhr) => {
 | |
|       throw new Error(xhr.responseText);
 | |
|     }
 | |
|   );
 | |
| ```
 | |
| 
 | |
| You should choose the correct method for the first assertion - `isOk` vs. `isNotOk`.
 | |
| 
 | |
| ```js
 | |
| (getUserInput) =>
 | |
|   $.get(getUserInput('url') + '/_api/get-tests?type=unit&n=2').then(
 | |
|     (data) => {
 | |
|       assert.equal(data.assertions[0].method, 'isNotOk', 'Null is falsy');
 | |
|     },
 | |
|     (xhr) => {
 | |
|       throw new Error(xhr.responseText);
 | |
|     }
 | |
|   );
 | |
| ```
 | |
| 
 | |
| You should choose the correct method for the second assertion - `isOk` vs. `isNotOk`.
 | |
| 
 | |
| ```js
 | |
| (getUserInput) =>
 | |
|   $.get(getUserInput('url') + '/_api/get-tests?type=unit&n=2').then(
 | |
|     (data) => {
 | |
|       assert.equal(data.assertions[1].method, 'isOk', 'A string is truthy');
 | |
|     },
 | |
|     (xhr) => {
 | |
|       throw new Error(xhr.responseText);
 | |
|     }
 | |
|   );
 | |
| ```
 | |
| 
 | |
| You should choose the correct method for the third assertion - `isOk` vs. `isNotOk`.
 | |
| 
 | |
| ```js
 | |
| (getUserInput) =>
 | |
|   $.get(getUserInput('url') + '/_api/get-tests?type=unit&n=2').then(
 | |
|     (data) => {
 | |
|       assert.equal(data.assertions[2].method, 'isOk', 'true is truthy');
 | |
|     },
 | |
|     (xhr) => {
 | |
|       throw new Error(xhr.responseText);
 | |
|     }
 | |
|   );
 | |
| ```
 | |
| 
 | |
| # --solutions--
 | |
| 
 | |
| ```js
 | |
| /**
 | |
|   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.
 | |
| */
 | |
| ```
 |