UNPKG

step-sequence-generator

Version:

A step sequence generator for figure skating programs

96 lines (95 loc) 4.35 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const vitest_1 = require("vitest"); const CompassArc_1 = require("./CompassArc"); const movement_enums_1 = require("../../shared/enums/movement-enums"); (0, vitest_1.describe)('CompassArc', () => { let compass; (0, vitest_1.beforeEach)(() => { compass = new CompassArc_1.CompassArc(); }); (0, vitest_1.describe)('implementation', () => { (0, vitest_1.it)('должен корректно создаваться', () => { (0, vitest_1.expect)(compass).toBeDefined(); }); }); (0, vitest_1.describe)('calcArcVectorIndexUntyped', () => { (0, vitest_1.describe)('должен вернуть 1', () => { const mockDataList = [ { leg: movement_enums_1.Leg.RIGHT, edge: movement_enums_1.Edge.OUTER, transitionDirection: movement_enums_1.TransitionDirection.FORWARD, }, { leg: movement_enums_1.Leg.LEFT, edge: movement_enums_1.Edge.INNER, transitionDirection: movement_enums_1.TransitionDirection.FORWARD, }, { leg: movement_enums_1.Leg.RIGHT, edge: movement_enums_1.Edge.INNER, transitionDirection: movement_enums_1.TransitionDirection.BACKWARD, }, { leg: movement_enums_1.Leg.LEFT, edge: movement_enums_1.Edge.OUTER, transitionDirection: movement_enums_1.TransitionDirection.BACKWARD, }, ]; vitest_1.it.each(mockDataList)('при %s должен вернуть 1', (mockData) => { // eslint-disable-next-line const compassAny = compass; const expected = 1; const result = compassAny['calcStepPoints'](mockData); (0, vitest_1.expect)(result).toEqual(expected); }); }); (0, vitest_1.describe)('должен вернуть -1', () => { const mockDataList = [ { leg: movement_enums_1.Leg.RIGHT, edge: movement_enums_1.Edge.INNER, transitionDirection: movement_enums_1.TransitionDirection.FORWARD, }, { leg: movement_enums_1.Leg.LEFT, edge: movement_enums_1.Edge.OUTER, transitionDirection: movement_enums_1.TransitionDirection.FORWARD, }, { leg: movement_enums_1.Leg.RIGHT, edge: movement_enums_1.Edge.OUTER, transitionDirection: movement_enums_1.TransitionDirection.BACKWARD, }, { leg: movement_enums_1.Leg.LEFT, edge: movement_enums_1.Edge.INNER, transitionDirection: movement_enums_1.TransitionDirection.BACKWARD, }, ]; vitest_1.it.each(mockDataList)('при %s должен вернуть -1', (mockData) => { // eslint-disable-next-line const compassAny = compass; const expected = -1; const result = compassAny['calcStepPoints'](mockData); (0, vitest_1.expect)(result).toEqual(expected); }); }); }); (0, vitest_1.describe)('typifyToArcVectorIndex', () => { const mockDataList = [-1, 0, 1]; vitest_1.it.each(mockDataList)(`при %s должен вернуть тоже число`, (mockData) => { // eslint-disable-next-line const compassAny = compass; const expected = mockData; const result = compassAny.typifyToArcVectorIndex(mockData); (0, vitest_1.expect)(result).toEqual(expected); }); (0, vitest_1.it)('должен выбросить ошибку', () => { const compassAny = compass; const mockData = 5; (0, vitest_1.expect)(() => compassAny.typifyToArcVectorIndex(mockData)).toThrowError('Unsupported step direction index'); }); }); });