quake2ts 0.0.584 → 0.0.585

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,31 @@
1
+ export declare const renderFrame: import("vitest").Mock<any[], {
2
+ drawCalls: number;
3
+ vertexCount: number;
4
+ batches: number;
5
+ facesDrawn: number;
6
+ skyDrawn: boolean;
7
+ viewModelDrawn: boolean;
8
+ fps: number;
9
+ shaderSwitches: number;
10
+ visibleSurfaces: number;
11
+ culledSurfaces: number;
12
+ visibleEntities: number;
13
+ culledEntities: number;
14
+ }>;
15
+ export declare const createFrameRenderer: import("vitest").Mock<[], {
16
+ renderFrame: import("vitest").Mock<any[], {
17
+ drawCalls: number;
18
+ vertexCount: number;
19
+ batches: number;
20
+ facesDrawn: number;
21
+ skyDrawn: boolean;
22
+ viewModelDrawn: boolean;
23
+ fps: number;
24
+ shaderSwitches: number;
25
+ visibleSurfaces: number;
26
+ culledSurfaces: number;
27
+ visibleEntities: number;
28
+ culledEntities: number;
29
+ }>;
30
+ }>;
31
+ //# sourceMappingURL=frame.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../../../src/render/__mocks__/frame.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW;;;;;;;;;;;;;EAgBtB,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAE7B,CAAC"}
@@ -43,6 +43,7 @@ __export(index_exports, {
43
43
  createBandwidthTestScenario: () => createBandwidthTestScenario,
44
44
  createBinaryStreamMock: () => createBinaryStreamMock,
45
45
  createBinaryWriterMock: () => createBinaryWriterMock,
46
+ createBounds: () => createBounds,
46
47
  createCombatTestContext: () => createCombatTestContext,
47
48
  createControlledTimer: () => createControlledTimer,
48
49
  createCustomNetworkCondition: () => createCustomNetworkCondition,
@@ -53,6 +54,8 @@ __export(index_exports, {
53
54
  createGameStateSnapshotFactory: () => createGameStateSnapshotFactory,
54
55
  createInputInjector: () => createInputInjector,
55
56
  createItemEntityFactory: () => createItemEntityFactory,
57
+ createMessageReaderMock: () => createMessageReaderMock,
58
+ createMessageWriterMock: () => createMessageWriterMock,
56
59
  createMockAI: () => createMockAI,
57
60
  createMockAmmoItem: () => createMockAmmoItem,
58
61
  createMockArmorItem: () => createMockArmorItem,
@@ -110,6 +113,7 @@ __export(index_exports, {
110
113
  createMonsterEntityFactory: () => createMonsterEntityFactory,
111
114
  createMultiplayerTestScenario: () => createMultiplayerTestScenario,
112
115
  createNetChanMock: () => createNetChanMock,
116
+ createPacketMock: () => createPacketMock,
113
117
  createPhysicsTestContext: () => createPhysicsTestContext,
114
118
  createPlayerEntityFactory: () => createPlayerEntityFactory,
115
119
  createPlayerStateFactory: () => createPlayerStateFactory,
@@ -118,12 +122,16 @@ __export(index_exports, {
118
122
  createServerSnapshot: () => createServerSnapshot,
119
123
  createSpawnTestContext: () => createSpawnTestContext,
120
124
  createStorageTestScenario: () => createStorageTestScenario,
125
+ createSurfaceMock: () => createSurfaceMock,
121
126
  createTestContext: () => createTestContext,
127
+ createTraceMock: () => createTraceMock,
128
+ createTransform: () => createTransform,
122
129
  createTriggerEntityFactory: () => createTriggerEntityFactory,
130
+ createVector3: () => createVector3,
123
131
  createViewTestScenario: () => createViewTestScenario,
124
132
  createVisualTestScenario: () => createVisualTestScenario,
125
- intersects: () => import_shared3.intersects,
126
- ladderTrace: () => import_shared3.ladderTrace,
133
+ intersects: () => import_shared2.intersects,
134
+ ladderTrace: () => import_shared2.ladderTrace,
127
135
  makeAxisBrush: () => makeAxisBrush,
128
136
  makeBrushFromMinsMaxs: () => makeBrushFromMinsMaxs,
129
137
  makeBspModel: () => makeBspModel,
@@ -133,6 +141,7 @@ __export(index_exports, {
133
141
  makePlane: () => makePlane,
134
142
  measureSnapshotSize: () => measureSnapshotSize,
135
143
  mockMonsterAttacks: () => mockMonsterAttacks,
144
+ randomVector3: () => randomVector3,
136
145
  serializeUserInfo: () => serializeUserInfo,
137
146
  setupBrowserEnvironment: () => setupBrowserEnvironment,
138
147
  setupMockAudioContext: () => setupMockAudioContext,
@@ -150,7 +159,7 @@ __export(index_exports, {
150
159
  simulateServerRegistration: () => simulateServerRegistration,
151
160
  simulateServerTick: () => simulateServerTick,
152
161
  simulateSnapshotDelivery: () => simulateSnapshotDelivery,
153
- stairTrace: () => import_shared3.stairTrace,
162
+ stairTrace: () => import_shared2.stairTrace,
154
163
  teardownBrowserEnvironment: () => teardownBrowserEnvironment,
155
164
  teardownMockAudioContext: () => teardownMockAudioContext,
156
165
  teardownNodeEnvironment: () => teardownNodeEnvironment,
@@ -178,7 +187,9 @@ var createBinaryWriterMock = () => ({
178
187
  writeInt32: import_vitest.vi.fn(),
179
188
  writeUint32: import_vitest.vi.fn(),
180
189
  writeFloat: import_vitest.vi.fn(),
181
- getData: import_vitest.vi.fn(() => new Uint8Array(0))
190
+ getData: import_vitest.vi.fn(() => new Uint8Array(0)),
191
+ writePos: import_vitest.vi.fn(),
192
+ writeDir: import_vitest.vi.fn()
182
193
  });
183
194
  var createNetChanMock = () => ({
184
195
  qport: 1234,
@@ -240,6 +251,37 @@ var createBinaryStreamMock = () => ({
240
251
  readPos: import_vitest.vi.fn(),
241
252
  readDir: import_vitest.vi.fn()
242
253
  });
254
+ var createMessageWriterMock = (overrides) => {
255
+ const mock = createBinaryWriterMock();
256
+ const writer = {
257
+ ...mock,
258
+ writeInt: mock.writeInt32,
259
+ // Alias writeInt to writeInt32
260
+ writeVector: mock.writePos,
261
+ // Alias writeVector to writePos
262
+ ...overrides
263
+ };
264
+ return writer;
265
+ };
266
+ var createMessageReaderMock = (data) => {
267
+ const mock = createBinaryStreamMock();
268
+ const reader = {
269
+ ...mock,
270
+ readInt: mock.readLong,
271
+ // Alias readInt to readLong (int32)
272
+ readVector: mock.readPos
273
+ // Alias readVector to readPos
274
+ };
275
+ return reader;
276
+ };
277
+ var createPacketMock = (overrides) => ({
278
+ type: "data",
279
+ sequence: 0,
280
+ ack: 0,
281
+ qport: 0,
282
+ data: new Uint8Array(0),
283
+ ...overrides
284
+ });
243
285
 
244
286
  // src/shared/bsp.ts
245
287
  var import_shared = require("@quake2ts/shared");
@@ -308,6 +350,28 @@ function makeBrushFromMinsMaxs(mins, maxs, contents = import_shared.CONTENTS_SOL
308
350
  };
309
351
  }
310
352
 
353
+ // src/shared/math.ts
354
+ var createVector3 = (x = 0, y = 0, z = 0) => ({
355
+ x,
356
+ y,
357
+ z
358
+ });
359
+ var createBounds = (mins = createVector3(0, 0, 0), maxs = createVector3(1, 1, 1)) => ({
360
+ mins,
361
+ maxs
362
+ });
363
+ var createTransform = (overrides) => ({
364
+ position: createVector3(),
365
+ rotation: createVector3(),
366
+ scale: createVector3(1, 1, 1),
367
+ ...overrides
368
+ });
369
+ var randomVector3 = (min2 = -100, max2 = 100) => ({
370
+ x: Math.random() * (max2 - min2) + min2,
371
+ y: Math.random() * (max2 - min2) + min2,
372
+ z: Math.random() * (max2 - min2) + min2
373
+ });
374
+
311
375
  // src/game/factories.ts
312
376
  var import_game = require("@quake2ts/game");
313
377
  var createPlayerStateFactory = (overrides) => ({
@@ -463,8 +527,29 @@ function createTriggerEntityFactory(classname, overrides = {}) {
463
527
  // src/game/helpers.ts
464
528
  var import_vitest2 = require("vitest");
465
529
  var import_game2 = require("@quake2ts/game");
466
- var import_shared2 = require("@quake2ts/shared");
467
530
  var import_shared3 = require("@quake2ts/shared");
531
+
532
+ // src/shared/collision.ts
533
+ var import_shared2 = require("@quake2ts/shared");
534
+ var createTraceMock = (overrides) => ({
535
+ fraction: 1,
536
+ endpos: { x: 0, y: 0, z: 0 },
537
+ plane: { normal: { x: 0, y: 0, z: 0 }, dist: 0, type: 0, signbits: 0 },
538
+ surface: { flags: 0 },
539
+ contents: 0,
540
+ ent: null,
541
+ allsolid: false,
542
+ startsolid: false,
543
+ ...overrides
544
+ });
545
+ var createSurfaceMock = (overrides) => ({
546
+ flags: 0,
547
+ name: "default",
548
+ value: 0,
549
+ ...overrides
550
+ });
551
+
552
+ // src/game/helpers.ts
468
553
  var createMockEngine = () => ({
469
554
  sound: import_vitest2.vi.fn(),
470
555
  soundIndex: import_vitest2.vi.fn((sound) => 0),
@@ -475,7 +560,7 @@ var createMockGame = (seed = 12345) => {
475
560
  const spawnRegistry = new import_game2.SpawnRegistry();
476
561
  const hooks = new import_game2.ScriptHookRegistry();
477
562
  const game = {
478
- random: (0, import_shared2.createRandomGenerator)({ seed }),
563
+ random: (0, import_shared3.createRandomGenerator)({ seed }),
479
564
  registerEntitySpawn: import_vitest2.vi.fn((classname, spawnFunc) => {
480
565
  spawnRegistry.register(classname, (entity) => spawnFunc(entity));
481
566
  }),
@@ -501,16 +586,12 @@ function createTestContext(options) {
501
586
  const engine = createMockEngine();
502
587
  const seed = options?.seed ?? 12345;
503
588
  const { game, spawnRegistry } = createMockGame(seed);
504
- const traceFn = import_vitest2.vi.fn((start, end, mins, maxs) => ({
505
- fraction: 1,
506
- ent: null,
507
- allsolid: false,
508
- startsolid: false,
509
- endpos: end,
510
- plane: { normal: { x: 0, y: 0, z: 1 }, dist: 0 },
511
- surfaceFlags: 0,
512
- contents: 0
513
- }));
589
+ const traceFn = import_vitest2.vi.fn(
590
+ (start, end, mins, maxs) => createTraceMock({
591
+ endpos: end,
592
+ plane: { normal: { x: 0, y: 0, z: 1 }, dist: 0, type: 0, signbits: 0 }
593
+ })
594
+ );
514
595
  const entityList = options?.initialEntities ? [...options.initialEntities] : [];
515
596
  const hooks = game.hooks;
516
597
  const entities = {
@@ -557,7 +638,7 @@ function createTestContext(options) {
557
638
  findByTargetName: import_vitest2.vi.fn(() => []),
558
639
  pickTarget: import_vitest2.vi.fn(() => null),
559
640
  killBox: import_vitest2.vi.fn(),
560
- rng: (0, import_shared2.createRandomGenerator)({ seed }),
641
+ rng: (0, import_shared3.createRandomGenerator)({ seed }),
561
642
  imports: {
562
643
  configstring: import_vitest2.vi.fn(),
563
644
  trace: traceFn,
@@ -3099,6 +3180,7 @@ function createVisualTestScenario(sceneName) {
3099
3180
  createBandwidthTestScenario,
3100
3181
  createBinaryStreamMock,
3101
3182
  createBinaryWriterMock,
3183
+ createBounds,
3102
3184
  createCombatTestContext,
3103
3185
  createControlledTimer,
3104
3186
  createCustomNetworkCondition,
@@ -3109,6 +3191,8 @@ function createVisualTestScenario(sceneName) {
3109
3191
  createGameStateSnapshotFactory,
3110
3192
  createInputInjector,
3111
3193
  createItemEntityFactory,
3194
+ createMessageReaderMock,
3195
+ createMessageWriterMock,
3112
3196
  createMockAI,
3113
3197
  createMockAmmoItem,
3114
3198
  createMockArmorItem,
@@ -3166,6 +3250,7 @@ function createVisualTestScenario(sceneName) {
3166
3250
  createMonsterEntityFactory,
3167
3251
  createMultiplayerTestScenario,
3168
3252
  createNetChanMock,
3253
+ createPacketMock,
3169
3254
  createPhysicsTestContext,
3170
3255
  createPlayerEntityFactory,
3171
3256
  createPlayerStateFactory,
@@ -3174,8 +3259,12 @@ function createVisualTestScenario(sceneName) {
3174
3259
  createServerSnapshot,
3175
3260
  createSpawnTestContext,
3176
3261
  createStorageTestScenario,
3262
+ createSurfaceMock,
3177
3263
  createTestContext,
3264
+ createTraceMock,
3265
+ createTransform,
3178
3266
  createTriggerEntityFactory,
3267
+ createVector3,
3179
3268
  createViewTestScenario,
3180
3269
  createVisualTestScenario,
3181
3270
  intersects,
@@ -3189,6 +3278,7 @@ function createVisualTestScenario(sceneName) {
3189
3278
  makePlane,
3190
3279
  measureSnapshotSize,
3191
3280
  mockMonsterAttacks,
3281
+ randomVector3,
3192
3282
  serializeUserInfo,
3193
3283
  setupBrowserEnvironment,
3194
3284
  setupMockAudioContext,