feat(bgm): add surface mounting and setup surfaces
This commit is contained in:
@@ -26,10 +26,12 @@ describe('collectPackages', () => {
|
||||
expect(wood.face).toBe('./assets/tokens.png');
|
||||
expect(wood.faceCrop).toEqual([1, 0, 5, 2]);
|
||||
|
||||
// One surface with a $variants-expanded candidates list.
|
||||
expect([...harbor.surfaces.keys()]).toEqual(['board#harbor']);
|
||||
// Two surfaces: the table board and its child player board.
|
||||
expect([...harbor.surfaces.keys()].sort()).toEqual(['board#harbor', 'board#player']);
|
||||
const board = harbor.surfaces.get('board#harbor')!;
|
||||
expect(board.size).toEqual([300, 200]);
|
||||
expect(board.mount).toEqual({ kind: 'table', x: 0, y: 0, rotation: 0 });
|
||||
expect(board.children).toEqual(['board#player']);
|
||||
expect(board.layout).toHaveLength(2);
|
||||
const dock = board.layout[0]!;
|
||||
expect(dock.route).toBe('/dock/:seat');
|
||||
@@ -41,9 +43,14 @@ describe('collectPackages', () => {
|
||||
expect(deck.route).toBe('/deck');
|
||||
expect(deck).toMatchObject({ x: -100, y: 0, rotation: 0 });
|
||||
|
||||
// One setup.
|
||||
const player = harbor.surfaces.get('board#player')!;
|
||||
expect(player.mount).toEqual({ kind: 'child', x: 100, y: 50, rotation: 0 });
|
||||
expect(player.layout).toHaveLength(1);
|
||||
|
||||
// One setup, declaring the enabled surfaces.
|
||||
expect([...harbor.setups.keys()]).toEqual(['game#main']);
|
||||
const setup = harbor.setups.get('game#main')!;
|
||||
expect(setup.surfaces).toEqual(['board#harbor', 'board#player']);
|
||||
expect(setup.setup).toEqual({
|
||||
'/dock/0': 'harbor:token#wood',
|
||||
'/deck': 'harbor:token#grain',
|
||||
|
||||
Reference in New Issue
Block a user