UNPKG

step-sequence-generator

Version:

A step sequence generator for figure skating programs

35 lines (34 loc) 1.88 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const vitest_1 = require("vitest"); const MovementLibrary_1 = require("../../movement/MovementLibrary"); const movement_enums_1 = require("../../../shared/enums/movement-enums"); const DifficultTurnsFilterStrategy_1 = require("./DifficultTurnsFilterStrategy"); const mockMovements = [ { isDifficult: true, type: movement_enums_1.MovementCharacter.TURN, name: 'difficultTurn1' }, { isDifficult: true, type: movement_enums_1.MovementCharacter.TURN, name: 'difficultTurn2' }, { isDifficult: true, type: movement_enums_1.MovementCharacter.STEP, name: 'difficultTurn2' }, { isDifficult: false, type: movement_enums_1.MovementCharacter.STEP, name: 'difficultTurn2' }, ]; const mockLibrary = new MovementLibrary_1.MovementLibrary(mockMovements); (0, vitest_1.describe)('DifficultTurnsFilterStrategy', () => { let strategy; (0, vitest_1.beforeEach)(() => { strategy = new DifficultTurnsFilterStrategy_1.DifficultTurnsFilterStrategy(); }); (0, vitest_1.describe)('implementation', () => { (0, vitest_1.it)('должен корректно создаваться', () => { (0, vitest_1.expect)(strategy).toBeDefined(); }); }); (0, vitest_1.describe)('filter', () => { (0, vitest_1.it)('должен отфильтровать только сложные повороты', () => { const result = strategy.filter(mockLibrary); const expected = new MovementLibrary_1.MovementLibrary([ { isDifficult: true, type: movement_enums_1.MovementCharacter.TURN, name: 'difficultTurn1' }, { isDifficult: true, type: movement_enums_1.MovementCharacter.TURN, name: 'difficultTurn2' }, ]); (0, vitest_1.expect)(result).toStrictEqual(expected); }); }); });