mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-04 07:29:47 +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>
23 lines
848 B
JavaScript
23 lines
848 B
JavaScript
import { integralEvaluation } from '../MidpointIntegration'
|
|
|
|
test('Should return the integral of f(x) = sqrt(x) in [1, 3] to be equal 2.797434', () => {
|
|
const result = integralEvaluation(10000, 1, 3, (x) => {
|
|
return Math.sqrt(x)
|
|
})
|
|
expect(Number(result.toPrecision(6))).toBe(2.79743)
|
|
})
|
|
|
|
test('Should return the integral of f(x) = sqrt(x) + x^2 in [1, 3] to be equal 11.46410161', () => {
|
|
const result = integralEvaluation(10000, 1, 3, (x) => {
|
|
return Math.sqrt(x) + Math.pow(x, 2)
|
|
})
|
|
expect(Number(result.toPrecision(10))).toBe(11.46410161)
|
|
})
|
|
|
|
test('Should return the integral of f(x) = log(x) + Pi*x^3 in [5, 12] to be equal 15809.9141543', () => {
|
|
const result = integralEvaluation(20000, 5, 12, (x) => {
|
|
return Math.log(x) + Math.PI * Math.pow(x, 3)
|
|
})
|
|
expect(Number(result.toPrecision(10))).toBe(15809.91415)
|
|
})
|