UNPKG

bc-minecraft-bedrock-types

Version:

The typescript library that provides default types for minecraft bedrock

54 lines 1.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const json_1 = require("../json"); const _1 = require("."); describe('Selector - Parse', () => { const data = [ { selector: '@a[tag=Sometag,scores={foo=1..}]', offset: 0, type: '@a', contains: ['tag', 'scores'], }, { selector: '@a[tag=Sometag,scores={foo=1..}]', offset: 0, type: '@a', contains: ['tag', 'scores'], }, { selector: '@a[x=~0.5,y=50,z=~50,r=50,rm=3,tag=something]', offset: 0, type: '@a', contains: ['x', 'y', 'z', 'r', 'rm', 'tag'], }, { selector: '@e[family=]', offset: 5, type: '@e', contains: ['family'], }, { selector: '@a[x =~0.5, y=50, z =~50,r =50, rm =3,tag =something,tag =!foo]', offset: 5, type: '@a', contains: ['x', 'y', 'z', 'r', 'rm', 'tag'], }, ]; data.forEach((test) => { it(`Should parse ${test.selector}`, () => { const { selector, offset } = test; const sel = _1.Selector.parse(selector, offset); expect(sel).toBeDefined(); if (sel === undefined) return; expect(sel.selectorType).toEqual(test.type); expect(sel.type).toEqual(json_1.CompactJson.Type.Array); test.contains.forEach((attr) => contains(sel, attr)); }); }); }); function contains(sel, attr) { expect(sel.contains(attr)).toBeTruthy(); } //# sourceMappingURL=parse.test.js.map