mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-04 15:39:42 +08:00

* chore: Switch to Node 20 + Vitest * chore: migrate to vitest mock functions * chore: code style (switch to prettier) * test: re-enable long-running test Seems the switch to Node 20 and Vitest has vastly improved the code's and / or the test's runtime! see #1193 * chore: code style * chore: fix failing tests * Updated Documentation in README.md * Update contribution guidelines to state usage of Prettier * fix: set prettier printWidth back to 80 * chore: apply updated code style automatically * fix: set prettier line endings to lf again * chore: apply updated code style automatically --------- Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Co-authored-by: Lars Müller <34514239+appgurueu@users.noreply.github.com>
25 lines
899 B
JavaScript
25 lines
899 B
JavaScript
import { extendedEuclideanGCD } from '../ExtendedEuclideanGCD'
|
|
|
|
describe('extendedEuclideanGCD', () => {
|
|
it('should return valid values in order for positive arguments', () => {
|
|
expect(extendedEuclideanGCD(240, 46)).toMatchObject([2, -9, 47])
|
|
expect(extendedEuclideanGCD(46, 240)).toMatchObject([2, 47, -9])
|
|
})
|
|
it('should give error on non-positive arguments', () => {
|
|
expect(() => extendedEuclideanGCD(0, 240)).toThrowError(
|
|
new TypeError('Must be positive numbers')
|
|
)
|
|
expect(() => extendedEuclideanGCD(46, -240)).toThrowError(
|
|
new TypeError('Must be positive numbers')
|
|
)
|
|
})
|
|
it('should give error on non-numeric arguments', () => {
|
|
expect(() => extendedEuclideanGCD('240', 46)).toThrowError(
|
|
new TypeError('Not a Number')
|
|
)
|
|
expect(() => extendedEuclideanGCD([240, 46])).toThrowError(
|
|
new TypeError('Not a Number')
|
|
)
|
|
})
|
|
})
|