2018-10-04 13:37:37 +00:00
---
id: 587d824c367417b2b2512c4f
title: Test if a Value Falls within a Specific Range
challengeType: 2
2019-08-05 16:17:33 +00:00
forumTopicId: 301598
2021-01-13 02:31:00 +00:00
dashedName: test-if-a-value-falls-within-a-specific-range
2018-10-04 13:37:37 +00:00
---
2020-11-27 18:02:05 +00:00
# --description--
2020-11-26 18:05:42 +00:00
2020-11-27 18:02:05 +00:00
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/ ).
2019-03-27 11:31:58 +00:00
2020-11-26 18:05:42 +00:00
```javascript
.approximately(actual, expected, delta, [message])
```
Asserts that the `actual` is equal to `expected` , to within a +/- `delta` range.
2020-11-27 18:02:05 +00:00
# --instructions--
2020-11-26 18:05:42 +00:00
Within `tests/1_unit-tests.js` under the test labelled `#10` in the `Comparisons` suite, change each `assert` to `assert.approximately` to make the test pass (should evaluate to `true` ).
2019-03-27 11:31:58 +00:00
Choose the minimum range (3rd parameter) to make the test always pass. It should be less than 1.
2020-11-26 18:05:42 +00:00
2020-11-27 18:02:05 +00:00
# --hints--
2018-10-04 13:37:37 +00:00
2020-11-27 18:02:05 +00:00
All tests should pass.
2020-11-26 18:05:42 +00:00
2020-11-27 18:02:05 +00:00
```js
(getUserInput) =>
$.get(getUserInput('url') + '/_api/get-tests?type=unit& n=9').then(
(data) => {
assert.equal(data.state, 'passed');
},
(xhr) => {
throw new Error(xhr.responseText);
}
);
2018-10-04 13:37:37 +00:00
```
2020-11-27 18:02:05 +00:00
You should choose the correct range for the first assertion - `approximately(actual, expected, range)` .
2018-10-04 13:37:37 +00:00
2020-11-27 18:02:05 +00:00
```js
(getUserInput) =>
$.get(getUserInput('url') + '/_api/get-tests?type=unit& n=9').then(
(data) => {
assert.equal(data.assertions[0].method, 'approximately');
assert.equal(
data.assertions[0].args[2],
0.5,
"weirdNumbers(0.5) is in the range (0.5, 1.5]. It's within 1 +/- 0.5"
);
},
(xhr) => {
throw new Error(xhr.responseText);
}
);
```
2020-11-26 18:05:42 +00:00
2020-11-27 18:02:05 +00:00
You should choose the correct range for the second assertion - `approximately(actual, expected, range)` .
2018-10-04 13:37:37 +00:00
2020-11-27 18:02:05 +00:00
```js
(getUserInput) =>
$.get(getUserInput('url') + '/_api/get-tests?type=unit& n=9').then(
(data) => {
assert.equal(data.assertions[1].method, 'approximately');
assert.equal(
data.assertions[1].args[2],
0.8,
"weirdNumbers(0.2) is in the range (0.2, 1.2]. It's within 1 +/- 0.8"
);
},
(xhr) => {
throw new Error(xhr.responseText);
}
);
```
2018-10-04 13:37:37 +00:00
2020-11-27 18:02:05 +00:00
# --solutions--
2018-10-04 13:37:37 +00:00
```js
2019-10-14 15:30:42 +00:00
/**
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.
*/
2018-10-04 13:37:37 +00:00
```