Skip to content

Commit bcb6801

Browse files
author
Hridyanshu7
committed
test: added for Linear Search Algorithm
1 parent ff314a2 commit bcb6801

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed

Diff for: Search/LinearSearch.js

+2
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
* value within a list. It sequentially checks each element of the list
44
* for the target value until a match is found or until all the elements
55
* have been searched.
6+
*
7+
* [Reference](https://en.wikipedia.org/wiki/Linear_search)
68
*/
79
function SearchArray(searchNum, ar, output = (v) => console.log(v)) {
810
const position = Search(ar, searchNum)

Diff for: Search/test/LinearSearch.test.js

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import { Search as linearSearch } from '../LinearSearch'
2+
3+
const tests = [
4+
{
5+
test: {
6+
arr: [1, 2, 300, 401, 450, 504, 800, 821, 855, 900, 1002],
7+
target: 900
8+
},
9+
expectedValue: 9
10+
},
11+
{
12+
test: {
13+
arr: [1, 104, 110, 4, 44, 55, 56, 78],
14+
target: 104
15+
},
16+
expectedValue: 1
17+
},
18+
{
19+
test: {
20+
arr: [-4, 5, 50, 77, 821, 85, 99, 100],
21+
target: 192
22+
},
23+
expectedValue: -1
24+
}
25+
]
26+
27+
describe('Linear Search', () => {
28+
it.each(tests)(
29+
'linearSearch($test.arr, $test.target) => $expectedValue',
30+
({ test, expectedValue }) => {
31+
const { arr, target } = test
32+
expect(linearSearch(arr, target)).toBe(expectedValue)
33+
}
34+
)
35+
})

0 commit comments

Comments
 (0)