jevstrudel.git / packages / edo / test / ratios.test.mjs
1/*
2ratios.test.mjs - tests of ratios.mjs
3Copyright (C) 2025 Rob McKinnon and Strudel contributors - see <https://codeberg.org/uzu/strudel/src/branch/main/packages/edo/test/ratios.test.mjs>
4This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program.  If not, see <https://www.gnu.org/licenses/>.
5*/
6import ratiointervals from '../ratios.mjs';
7import { describe, it, expect } from 'vitest';
8
9describe('ratiointervals', () => {
10  it('updates edivisions', () => {
11    let ratio = 9 / 7;
12    expect(ratiointervals.key(ratio)).toEqual('S3');
13    expect(ratiointervals.label(ratio)).toEqual('M3');
14    expect(ratiointervals.fjs(ratio)).toEqual('M3_7');
15    expect(ratiointervals.nom(ratio)).toEqual(9);
16    expect(ratiointervals.denom(ratio)).toEqual(7);
17  });
18});