mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-08 00:43:54 +00:00
2fa397548a
* feat/navigate upgrade react router * feat/navigate migrate to react router 6 * feat/navigate style modal * feat/navigate create endpoints for app settings * feat/navigate protect editor with pin * feat/navigate apply dynamic routing draft * feat/navigate upgrade relevant packages * feat/navigate restructure directory and add tests * feat/navigate test aliases validation * feat/navigate validate aliases before sending * feat/navigate create data endpoint * feat/navigate config: prettier * feat/navigate invalidate empty strings * feat/navigate create endpoints * feat/navigate parse on import * feat/navigate navigate to alias * feat/navigate user help and sample data * feat/navigate refact aliases modal * feat/navigate refact settings style * feat/navigate update sample db * feat/navigate link is relative to hostname * feat/navigate navigate to first match * feat/navigate update readme and version bump * feat/navigate config: create shared module * feat/navigate config: cheat module install * feat/navigate fix tests * feat/navigate run tests in pull request * Update ontime_cy.yml
21 lines
728 B
JavaScript
21 lines
728 B
JavaScript
import { clamp } from '../math';
|
|
|
|
test('Clamps a set of numbers correctly', () => {
|
|
const testCases = [
|
|
{ num: 10, min: 0, max: 20, result: 10 },
|
|
{ num: 0, min: 0, max: 20, result: 0 },
|
|
{ num: 20, min: 0, max: 20, result: 20 },
|
|
{ num: 20, min: 0, max: 20, result: 20 },
|
|
{ num: -20, min: 0, max: 20, result: 0 },
|
|
{ num: -0, min: 0, max: 20, result: 0 },
|
|
{ num: -50, min: -30, max: -20, result: -30 },
|
|
{ num: -50, min: 0, max: 0, result: 0 },
|
|
{ num: 50.5, min: 0, max: 100, result: 50.5 },
|
|
{ num: 50, min: 0, max: 20.32, result: 20.32 },
|
|
{ num: 10, min: 20.32, max: 40, result: 20.32 }
|
|
];
|
|
|
|
testCases.forEach((t) => (
|
|
expect(clamp(t.num, t.min, t.max)).toBe(t.result)
|
|
));
|
|
}); |