mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-18 01:05:42 +08:00

* feat: remove duplicated `gcd`-like functions * Updated Documentation in README.md --------- Co-authored-by: vil02 <vil02@users.noreply.github.com>
26 lines
737 B
JavaScript
26 lines
737 B
JavaScript
import { GetEuclidGCD, GetEuclidGCDRecursive } from '../GetEuclidGCD'
|
|
|
|
describe.each([GetEuclidGCD, GetEuclidGCDRecursive])(
|
|
'%# GetEuclidGCD',
|
|
(gcdFunction) => {
|
|
it.each([
|
|
[5, 20, 5],
|
|
[109, 902, 1],
|
|
[290, 780, 10],
|
|
[104, 156, 52],
|
|
[0, 100, 100],
|
|
[-5, 50, 5],
|
|
[0, 0, 0],
|
|
[1, 1234567, 1]
|
|
])('returns correct result for %i and %j', (inputA, inputB, expected) => {
|
|
expect(gcdFunction(inputA, inputB)).toBe(expected)
|
|
expect(gcdFunction(inputB, inputA)).toBe(expected)
|
|
})
|
|
|
|
it('should throw when any of the inputs is not a number', () => {
|
|
expect(() => gcdFunction('1', 2)).toThrowError()
|
|
expect(() => gcdFunction(1, '2')).toThrowError()
|
|
})
|
|
}
|
|
)
|