@rpgjs/testing 3.3.0 → 4.0.0-beta.3

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.
package/lib/index.d.ts CHANGED
@@ -2,13 +2,13 @@ import { ModuleType } from '@rpgjs/common';
2
2
  import { RpgServerEngine, RpgPlayer } from '@rpgjs/server';
3
3
  import { RpgClientEngine } from '@rpgjs/client';
4
4
  import { ObjectFixtureList, Position } from '@rpgjs/types';
5
- declare type ClientTesting = {
5
+ type ClientTesting = {
6
6
  client: RpgClientEngine;
7
7
  socket: any;
8
8
  playerId: string;
9
9
  player: RpgPlayer;
10
10
  };
11
- declare type PositionMap = string | Position;
11
+ type PositionMap = string | Position;
12
12
  interface Testing {
13
13
  /**
14
14
  * Allows you to create a client and get fixtures to manipulate it during tests
@@ -98,4 +98,5 @@ export declare function clear(): void;
98
98
  * @memberof Testing
99
99
  */
100
100
  export declare function nextTick(client: RpgClientEngine, timestamp?: number): Promise<ObjectFixtureList>;
101
+ export declare function waitUntil(promise: Promise<any>): Promise<any>;
101
102
  export {};
package/lib/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.nextTick = exports.clear = exports.testing = void 0;
3
+ exports.waitUntil = exports.nextTick = exports.clear = exports.testing = void 0;
4
4
  const common_1 = require("@rpgjs/common");
5
5
  const server_1 = require("@rpgjs/server");
6
6
  const client_1 = require("@rpgjs/client");
@@ -13,7 +13,7 @@ function changeMap(client, server, mapId, position) {
13
13
  common_1.RpgPlugin.off(common_1.HookClient.BeforeSceneLoading);
14
14
  common_1.RpgPlugin.off(common_1.HookClient.AfterSceneLoading);
15
15
  common_1.RpgPlugin.on(common_1.HookClient.BeforeSceneLoading, () => {
16
- PIXI.utils.clearTextureCache();
16
+ client.PIXI.utils.clearTextureCache();
17
17
  });
18
18
  common_1.RpgPlugin.on(common_1.HookClient.AfterSceneLoading, () => {
19
19
  client.nextFrame(0); // render scene
@@ -35,12 +35,20 @@ function changeMap(client, server, mapId, position) {
35
35
  */
36
36
  async function testing(modules, optionsServer = {}, optionsClient = {}) {
37
37
  common_1.RpgPlugin.clear();
38
- const engine = await (0, server_1.entryPoint)(modules, Object.assign({ io: serverIo, standalone: true }, optionsServer));
38
+ const engine = await (0, server_1.entryPoint)(modules, {
39
+ io: serverIo,
40
+ standalone: true,
41
+ ...optionsServer
42
+ });
39
43
  engine.start(null, false);
40
44
  server = engine;
41
45
  clients = [];
42
46
  const createClient = async function createClient() {
43
- const client = (0, client_1.entryPoint)(modules, Object.assign({ io: new ClientIo(), standalone: true }, optionsClient));
47
+ const client = (0, client_1.entryPoint)(modules, {
48
+ io: new ClientIo(),
49
+ standalone: true,
50
+ ...optionsClient
51
+ });
44
52
  await client.start({
45
53
  renderLoop: false
46
54
  });
@@ -94,12 +102,6 @@ function clear() {
94
102
  server_1.RpgMap.buffer.clear();
95
103
  common_1.RpgPlugin.clear();
96
104
  serverIo.clear();
97
- for (let textureUrl in PIXI.utils.BaseTextureCache) {
98
- delete PIXI.utils.BaseTextureCache[textureUrl];
99
- }
100
- for (let textureUrl in PIXI.utils.TextureCache) {
101
- delete PIXI.utils.TextureCache[textureUrl];
102
- }
103
105
  window.document.body.innerHTML = `<div id="rpg"></div>`;
104
106
  }
105
107
  exports.clear = clear;
@@ -131,4 +133,25 @@ function nextTick(client, timestamp = 0) {
131
133
  });
132
134
  }
133
135
  exports.nextTick = nextTick;
136
+ function waitUntil(promise) {
137
+ let tick = 0;
138
+ let finish = false;
139
+ return new Promise((resolve, reject) => {
140
+ promise.then(() => {
141
+ finish = true;
142
+ resolve();
143
+ }).catch(reject);
144
+ const timeout = () => {
145
+ setTimeout(() => {
146
+ if (!finish) {
147
+ tick++;
148
+ server.nextTick(tick);
149
+ timeout();
150
+ }
151
+ }, 10);
152
+ };
153
+ timeout();
154
+ });
155
+ }
156
+ exports.waitUntil = waitUntil;
134
157
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,0CAAqF;AACrF,0CAAwF;AACxF,0CAA+E;AAG/E,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,eAAM,CAAA;AA0DrC,IAAI,MAAuB,CAAA;AAC3B,IAAI,OAA0B,CAAA;AAE9B,SAAS,SAAS,CAAC,MAAuB,EAAE,MAAuB,EAAE,KAAa,EAAE,QAAsB;IACtG,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAY,EAAE,EAAE;QACtC,IAAI,MAAM,GAAG,iBAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAChD,kBAAS,CAAC,GAAG,CAAC,mBAAU,CAAC,kBAAkB,CAAC,CAAA;QAC5C,kBAAS,CAAC,GAAG,CAAC,mBAAU,CAAC,iBAAiB,CAAC,CAAA;QAC3C,kBAAS,CAAC,EAAE,CAAC,mBAAU,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAC9C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAA;QACxC,CAAC,CAAC,CAAA;QACF,kBAAS,CAAC,EAAE,CAAC,mBAAU,CAAC,iBAAiB,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA,CAAC,eAAe;YACnC,OAAO,EAAE,CAAA;QACb,CAAC,CAAC,CAAA;QACF,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC3C,CAAC,CAAC,CAAA;AACN,CAAC;AAED;;;;;;;;;;GAUG;AACI,KAAK,UAAU,OAAO,CAAC,OAAqB,EAAE,gBAAqB,EAAE,EAAE,gBAAqB,EAAE;IACjG,kBAAS,CAAC,KAAK,EAAE,CAAA;IACjB,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAU,EAAC,OAAO,EAAE;QACrC,EAAE,EAAE,QAAQ;QACZ,UAAU,EAAE,IAAI;QAChB,GAAG,aAAa;KACnB,CAAC,CAAA;IACF,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IACzB,MAAM,GAAG,MAAM,CAAA;IACf,OAAO,GAAG,EAAE,CAAA;IAEZ,MAAM,YAAY,GAAG,KAAK,UAAU,YAAY;QAC5C,MAAM,MAAM,GAAG,IAAA,mBAAgB,EAAC,OAAO,EAAE;YACrC,EAAE,EAAE,IAAI,QAAQ,EAAE;YAClB,UAAU,EAAE,IAAI;YAChB,GAAG,aAAa;SACnB,CAAC,CAAA;QACF,MAAM,MAAM,CAAC,KAAK,CAAC;YACf,UAAU,EAAE,KAAK;SACpB,CAAC,CAAA;QACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACpB,MAAM,CAAC,QAAQ,CAAC,cAAc,GAAG,CAAC,CAAA;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAA;QAC9C,OAAO;YACH,MAAM;YACN,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ;YACR,MAAM,EAAE,iBAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC;SACvC,CAAA;IACL,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,UAAU,MAAuB,EAAE,KAAa,EAAE,QAAsB;QACvF,OAAO,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;IACrD,CAAC,CAAA;IAED,OAAO;QACH,YAAY;QACZ,KAAK,CAAC,mBAAmB,CAAC,WAA4B,EAAE,KAAa,EAAE,QAAsB;YACzF,MAAM,aAAa,GAAG,MAAM,YAAY,EAAE,CAAA;YAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAA;YACnC,MAAM,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;YACzC,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAA;YAC3B,OAAO,aAAa,CAAA;QACxB,CAAC;QACD,MAAM,EAAE,MAAM;QACd,SAAS,EAAE,UAAU;KACxB,CAAA;AACL,CAAC;AA/CD,0BA+CC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,KAAK;IACjB,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;IACpB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;IACzC,eAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;IACrB,kBAAS,CAAC,KAAK,EAAE,CAAA;IACjB,QAAQ,CAAC,KAAK,EAAE,CAAA;IAChB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,sBAAsB,CAAA;AAC3D,CAAC;AAPD,sBAOC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,QAAQ,CAAC,MAAuB,EAAE,SAAS,GAAG,CAAC;IAC3D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IAC1B,MAAM,CAAC,IAAI,EAAE,CAAA;IACb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAY,EAAE,EAAE;QAChC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YACvC,MAAM,MAAM,CAAC,YAAY,EAAE,CAAA;YAC3B,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YAC3B,MAAM,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,CAAA;YACpC,OAAO,CAAC,OAAO,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC;AAXD,4BAWC;AAED,SAAgB,SAAS,CAAC,OAAqB;IAC3C,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAY,EAAE,MAAW,EAAE,EAAE;QAC7C,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;YACd,MAAM,GAAG,IAAI,CAAA;YACb,OAAO,EAAE,CAAA;QACb,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAChB,MAAM,OAAO,GAAG,GAAG,EAAE;YACjB,UAAU,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,MAAM,EAAE;oBACT,IAAI,EAAE,CAAA;oBACN,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;oBACrB,OAAO,EAAE,CAAA;iBACZ;YACL,CAAC,EAAE,EAAE,CAAC,CAAA;QACV,CAAC,CAAA;QACD,OAAO,EAAE,CAAA;IACb,CAAC,CAAC,CAAA;AACN,CAAC;AAnBD,8BAmBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rpgjs/testing",
3
- "version": "3.3.0",
3
+ "version": "4.0.0-beta.3",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "publishConfig": {
@@ -17,13 +17,14 @@
17
17
  "author": "Samuel Ronce",
18
18
  "license": "MIT",
19
19
  "dependencies": {
20
- "@rpgjs/client": "^3.3.0",
21
- "@rpgjs/common": "^3.3.0",
22
- "@rpgjs/server": "^3.3.0",
23
- "@rpgjs/types": "^3.3.0"
20
+ "@rpgjs/client": "^4.0.0-beta.3",
21
+ "@rpgjs/common": "^4.0.0-beta.3",
22
+ "@rpgjs/server": "^4.0.0-beta.3",
23
+ "@rpgjs/types": "^4.0.0-beta.3"
24
24
  },
25
- "gitHead": "076ac72a11bd90c004a3fe0659e9e2fa886db401",
25
+ "gitHead": "952bdc2cecd04ad8dd9341ca0d51bf64efcd2bab",
26
26
  "devDependencies": {
27
- "typescript": "^4.7.4"
27
+ "@types/css-font-loading-module": "^0.0.8",
28
+ "typescript": "^5.0.2"
28
29
  }
29
30
  }