UNPKG

slp-enforcer

Version:

Finds violations of the Melee Controller Ruleset by inspecting SLP files

47 lines (46 loc) 2.24 kB
"use strict"; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const globals_1 = require("@jest/globals"); const index_1 = require("../index"); const fs = __importStar(require("fs")); const path = __importStar(require("path")); globals_1.test('Should pass check for disallowed C-Stick values', () => { let coords = []; coords.push({ x: 0, y: 0 }); coords.push({ x: 1, y: 1 }); const result = index_1.getCStickViolations(coords); globals_1.expect(result.length).toEqual(0); }); globals_1.test('Should trigger check for disallowed C-Stick values', () => { let coords = []; coords.push({ x: 0.8, y: 0 }); const result = index_1.getCStickViolations(coords); globals_1.expect(result.length).toEqual(1); }); globals_1.test('Should trigger check for disallowed C-Stick values', () => { let coords = []; coords.push({ x: 0.6625, y: 0 }); const result = index_1.getCStickViolations(coords); globals_1.expect(result.length).toEqual(1); }); globals_1.test('Test full game with disallowed C-stick value', () => { let data = fs.readFileSync(path.join(__dirname, '../../test_data/banned_c_stick_analog_player_1.slp'), null); let game = new index_1.SlippiGame(index_1.toArrayBuffer(data)); globals_1.expect(game).toBeDefined(); let gameCoords = index_1.getCoordListFromGame(game, 0, false); globals_1.expect(index_1.hasDisallowedCStickCoords(game, 0, gameCoords).result).toEqual(true); }); globals_1.test('Test full game with analog controller, should pass', () => { let data = fs.readFileSync(path.join(__dirname, '../../test_data/legal/analog/traveltime/Game_8C56C529AEAA_20231022T181554.slp'), null); let game = new index_1.SlippiGame(index_1.toArrayBuffer(data)); globals_1.expect(game).toBeDefined(); let gameCoords = index_1.getCoordListFromGame(game, 3, false); globals_1.expect(index_1.hasDisallowedCStickCoords(game, 3, gameCoords).result).toEqual(false); });