@rpgjs/testing 4.0.0-rc.12 → 4.0.0-rc.13
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/CHANGELOG.md +8 -0
- package/lib/index.d.ts +44 -2
- package/lib/index.js +33 -2
- package/lib/index.js.map +1 -1
- package/package.json +6 -6
- package/src/index.ts +44 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# 4.0.0-rc.13 (2023-09-09)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @rpgjs/testing
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
# 4.0.0-rc.12 (2023-09-08)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @rpgjs/testing
|
package/lib/index.d.ts
CHANGED
|
@@ -13,6 +13,17 @@ interface Testing {
|
|
|
13
13
|
/**
|
|
14
14
|
* Allows you to create a client and get fixtures to manipulate it during tests
|
|
15
15
|
*
|
|
16
|
+
* Returns:
|
|
17
|
+
*
|
|
18
|
+
* ```ts
|
|
19
|
+
* {
|
|
20
|
+
* client: RpgClientEngine,
|
|
21
|
+
* socket: any,
|
|
22
|
+
* playerId: string
|
|
23
|
+
* player: RpgPlayer
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
16
27
|
* @title Create Client
|
|
17
28
|
* @method createClient()
|
|
18
29
|
* @returns {Promise<ClientTesting>}
|
|
@@ -60,7 +71,23 @@ interface Testing {
|
|
|
60
71
|
* @param {ModuleType[]} modules
|
|
61
72
|
* @param {object} [optionsServer]
|
|
62
73
|
* @param {object} [optionsClient]
|
|
63
|
-
* @returns {Promise<
|
|
74
|
+
* @returns {Promise<FixtureTesting>}
|
|
75
|
+
* @example
|
|
76
|
+
*
|
|
77
|
+
* ```ts
|
|
78
|
+
* import { testing } from '@rpgjs/testing';
|
|
79
|
+
* import { beforeEach } from 'vitest';
|
|
80
|
+
*
|
|
81
|
+
* beforeEach(async () => {
|
|
82
|
+
* const fixture = await testing([
|
|
83
|
+
* {
|
|
84
|
+
* server: RpgServerModule
|
|
85
|
+
* },
|
|
86
|
+
* ]);
|
|
87
|
+
* const clientFixture = await fixture.createClient();
|
|
88
|
+
* currentPlayer = clientFixture.player;
|
|
89
|
+
* });
|
|
90
|
+
*
|
|
64
91
|
* @memberof Testing
|
|
65
92
|
*/
|
|
66
93
|
export declare function testing(modules: ModuleType[], optionsServer?: any, optionsClient?: any): Promise<Testing>;
|
|
@@ -69,8 +96,8 @@ export declare function testing(modules: ModuleType[], optionsServer?: any, opti
|
|
|
69
96
|
*
|
|
70
97
|
* ```ts
|
|
71
98
|
* import { clear } from '@rpgjs/testing'
|
|
99
|
+
* import { afterEach } from 'vitest'
|
|
72
100
|
*
|
|
73
|
-
* // with jest
|
|
74
101
|
* afterEach(() => {
|
|
75
102
|
* clear()
|
|
76
103
|
* })
|
|
@@ -98,5 +125,20 @@ export declare function clear(): void;
|
|
|
98
125
|
* @memberof Testing
|
|
99
126
|
*/
|
|
100
127
|
export declare function nextTick(client: RpgClientEngine, timestamp?: number): Promise<ObjectFixtureList>;
|
|
128
|
+
/**
|
|
129
|
+
* @title Wait a moment
|
|
130
|
+
* @method waitUntil(promise)
|
|
131
|
+
* @param {Promise<any>} promise
|
|
132
|
+
* @returns {Promise<any>}
|
|
133
|
+
* @since 4.0.0
|
|
134
|
+
* @memberof Testing
|
|
135
|
+
* @example
|
|
136
|
+
*
|
|
137
|
+
* ```ts
|
|
138
|
+
* await waitUntil(
|
|
139
|
+
* player.moveRoutes([Move.right()])
|
|
140
|
+
* )
|
|
141
|
+
* ```
|
|
142
|
+
*/
|
|
101
143
|
export declare function waitUntil(promise: Promise<any>): Promise<any>;
|
|
102
144
|
export {};
|
package/lib/index.js
CHANGED
|
@@ -27,7 +27,23 @@ function changeMap(client, server, mapId, position) {
|
|
|
27
27
|
* @param {ModuleType[]} modules
|
|
28
28
|
* @param {object} [optionsServer]
|
|
29
29
|
* @param {object} [optionsClient]
|
|
30
|
-
* @returns {Promise<
|
|
30
|
+
* @returns {Promise<FixtureTesting>}
|
|
31
|
+
* @example
|
|
32
|
+
*
|
|
33
|
+
* ```ts
|
|
34
|
+
* import { testing } from '@rpgjs/testing';
|
|
35
|
+
* import { beforeEach } from 'vitest';
|
|
36
|
+
*
|
|
37
|
+
* beforeEach(async () => {
|
|
38
|
+
* const fixture = await testing([
|
|
39
|
+
* {
|
|
40
|
+
* server: RpgServerModule
|
|
41
|
+
* },
|
|
42
|
+
* ]);
|
|
43
|
+
* const clientFixture = await fixture.createClient();
|
|
44
|
+
* currentPlayer = clientFixture.player;
|
|
45
|
+
* });
|
|
46
|
+
*
|
|
31
47
|
* @memberof Testing
|
|
32
48
|
*/
|
|
33
49
|
export async function testing(modules, optionsServer = {}, optionsClient = {}) {
|
|
@@ -80,8 +96,8 @@ export async function testing(modules, optionsServer = {}, optionsClient = {}) {
|
|
|
80
96
|
*
|
|
81
97
|
* ```ts
|
|
82
98
|
* import { clear } from '@rpgjs/testing'
|
|
99
|
+
* import { afterEach } from 'vitest'
|
|
83
100
|
*
|
|
84
|
-
* // with jest
|
|
85
101
|
* afterEach(() => {
|
|
86
102
|
* clear()
|
|
87
103
|
* })
|
|
@@ -127,6 +143,21 @@ export function nextTick(client, timestamp = 0) {
|
|
|
127
143
|
});
|
|
128
144
|
});
|
|
129
145
|
}
|
|
146
|
+
/**
|
|
147
|
+
* @title Wait a moment
|
|
148
|
+
* @method waitUntil(promise)
|
|
149
|
+
* @param {Promise<any>} promise
|
|
150
|
+
* @returns {Promise<any>}
|
|
151
|
+
* @since 4.0.0
|
|
152
|
+
* @memberof Testing
|
|
153
|
+
* @example
|
|
154
|
+
*
|
|
155
|
+
* ```ts
|
|
156
|
+
* await waitUntil(
|
|
157
|
+
* player.moveRoutes([Move.right()])
|
|
158
|
+
* )
|
|
159
|
+
* ```
|
|
160
|
+
*/
|
|
130
161
|
export function waitUntil(promise) {
|
|
131
162
|
let tick = 0;
|
|
132
163
|
let finish = false;
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAc,MAAM,EAAc,SAAS,EAAE,MAAM,eAAe,CAAA;AACrF,OAAO,EAAE,UAAU,EAAmB,MAAM,EAAE,QAAQ,EAAa,MAAM,eAAe,CAAA;AACxF,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAmB,MAAM,eAAe,CAAA;AAG/E,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rpgjs/testing",
|
|
3
|
-
"version": "4.0.0-rc.
|
|
3
|
+
"version": "4.0.0-rc.13",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"publishConfig": {
|
|
@@ -14,12 +14,12 @@
|
|
|
14
14
|
"author": "Samuel Ronce",
|
|
15
15
|
"license": "MIT",
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@rpgjs/client": "^4.0.0-rc.
|
|
18
|
-
"@rpgjs/common": "^4.0.0-rc.
|
|
19
|
-
"@rpgjs/server": "^4.0.0-rc.
|
|
20
|
-
"@rpgjs/types": "^4.0.0-rc.
|
|
17
|
+
"@rpgjs/client": "^4.0.0-rc.13",
|
|
18
|
+
"@rpgjs/common": "^4.0.0-rc.13",
|
|
19
|
+
"@rpgjs/server": "^4.0.0-rc.13",
|
|
20
|
+
"@rpgjs/types": "^4.0.0-rc.13"
|
|
21
21
|
},
|
|
22
|
-
"gitHead": "
|
|
22
|
+
"gitHead": "09fc1bcbcf5912c751652a28452bf5674cf251e5",
|
|
23
23
|
"devDependencies": {
|
|
24
24
|
"@types/css-font-loading-module": "^0.0.8",
|
|
25
25
|
"typescript": "^5.0.2"
|
package/src/index.ts
CHANGED
|
@@ -18,6 +18,17 @@ interface Testing {
|
|
|
18
18
|
/**
|
|
19
19
|
* Allows you to create a client and get fixtures to manipulate it during tests
|
|
20
20
|
*
|
|
21
|
+
* Returns:
|
|
22
|
+
*
|
|
23
|
+
* ```ts
|
|
24
|
+
* {
|
|
25
|
+
* client: RpgClientEngine,
|
|
26
|
+
* socket: any,
|
|
27
|
+
* playerId: string
|
|
28
|
+
* player: RpgPlayer
|
|
29
|
+
* }
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
21
32
|
* @title Create Client
|
|
22
33
|
* @method createClient()
|
|
23
34
|
* @returns {Promise<ClientTesting>}
|
|
@@ -88,7 +99,23 @@ function changeMap(client: RpgClientEngine, server: RpgServerEngine, mapId: stri
|
|
|
88
99
|
* @param {ModuleType[]} modules
|
|
89
100
|
* @param {object} [optionsServer]
|
|
90
101
|
* @param {object} [optionsClient]
|
|
91
|
-
* @returns {Promise<
|
|
102
|
+
* @returns {Promise<FixtureTesting>}
|
|
103
|
+
* @example
|
|
104
|
+
*
|
|
105
|
+
* ```ts
|
|
106
|
+
* import { testing } from '@rpgjs/testing';
|
|
107
|
+
* import { beforeEach } from 'vitest';
|
|
108
|
+
*
|
|
109
|
+
* beforeEach(async () => {
|
|
110
|
+
* const fixture = await testing([
|
|
111
|
+
* {
|
|
112
|
+
* server: RpgServerModule
|
|
113
|
+
* },
|
|
114
|
+
* ]);
|
|
115
|
+
* const clientFixture = await fixture.createClient();
|
|
116
|
+
* currentPlayer = clientFixture.player;
|
|
117
|
+
* });
|
|
118
|
+
*
|
|
92
119
|
* @memberof Testing
|
|
93
120
|
*/
|
|
94
121
|
export async function testing(modules: ModuleType[], optionsServer: any = {}, optionsClient: any = {}): Promise<Testing> {
|
|
@@ -145,8 +172,8 @@ export async function testing(modules: ModuleType[], optionsServer: any = {}, op
|
|
|
145
172
|
*
|
|
146
173
|
* ```ts
|
|
147
174
|
* import { clear } from '@rpgjs/testing'
|
|
175
|
+
* import { afterEach } from 'vitest'
|
|
148
176
|
*
|
|
149
|
-
* // with jest
|
|
150
177
|
* afterEach(() => {
|
|
151
178
|
* clear()
|
|
152
179
|
* })
|
|
@@ -194,6 +221,21 @@ export function nextTick(client: RpgClientEngine, timestamp = 0): Promise<Object
|
|
|
194
221
|
})
|
|
195
222
|
}
|
|
196
223
|
|
|
224
|
+
/**
|
|
225
|
+
* @title Wait a moment
|
|
226
|
+
* @method waitUntil(promise)
|
|
227
|
+
* @param {Promise<any>} promise
|
|
228
|
+
* @returns {Promise<any>}
|
|
229
|
+
* @since 4.0.0
|
|
230
|
+
* @memberof Testing
|
|
231
|
+
* @example
|
|
232
|
+
*
|
|
233
|
+
* ```ts
|
|
234
|
+
* await waitUntil(
|
|
235
|
+
* player.moveRoutes([Move.right()])
|
|
236
|
+
* )
|
|
237
|
+
* ```
|
|
238
|
+
*/
|
|
197
239
|
export function waitUntil(promise: Promise<any>): Promise<any> {
|
|
198
240
|
let tick = 0
|
|
199
241
|
let finish = false
|