1/* 2edoscale.test.mjs - tests of EdoScale from edoscale.mjs 3Copyright (C) 2025 Rob McKinnon and Strudel contributors - see <https://codeberg.org/uzu/strudel/src/branch/main/packages/edo/test/edoscale.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 '../edoscale.mjs'; // need to import this to add prototypes 7import { EdoScale } from '../edoscale.mjs'; 8import { describe, it, expect } from 'vitest'; 9 10describe('EdoScale', () => { 11 it('updates edivisions', () => { 12 let scale = new EdoScale(2, 1, ['L', 'L', 's', 'L', 'L', 'L', 's']); 13 expect(scale.stepSize(0)).toEqual('L'); 14 expect(scale.stepValue(0)).toEqual(2); 15 16 expect(scale.stepSize(2)).toEqual('s'); 17 expect(scale.stepValue(2)).toEqual(1); 18 19 expect(scale.edivisions).toEqual(12); 20 }); 21});