1 | ;
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const request = require("request");
|
4 | const request_1 = require("./request");
|
5 | class TestSession {
|
6 | constructor(port) {
|
7 | this.port = port;
|
8 | this.jar = request.jar();
|
9 | }
|
10 | async query(query, error = '', result) {
|
11 | const res = await this.request('post', '/api/graphql', { query });
|
12 | const errorMsg = res.data.errors && res.data.errors[0];
|
13 | /* istanbul ignore next */
|
14 | if (error) {
|
15 | if (!errorMsg)
|
16 | throw new Error(`Should be error: "${error}", got nothing, query: ${query}`);
|
17 | if (error !== errorMsg)
|
18 | throw new Error(`Should be error: "${error}", got: ${JSON.stringify(errorMsg)}, query: ${query}`);
|
19 | }
|
20 | else {
|
21 | /* istanbul ignore next */
|
22 | if (errorMsg)
|
23 | throw new Error(`Unexpected error: ${JSON.stringify(errorMsg)}, query: ${query}`);
|
24 | }
|
25 | /* istanbul ignore next */
|
26 | if (result && JSON.stringify(result) !== JSON.stringify(res.data)) {
|
27 | const got = JSON.stringify(res.data);
|
28 | const expect = JSON.stringify(result);
|
29 | throw new Error(`Result is not the same: \n${expect}\ngot:\n${got}\nquery: ${query}`);
|
30 | }
|
31 | return res.data.data;
|
32 | }
|
33 | request(method, url, json) {
|
34 | return request_1.requestJSON(`http://localhost:${this.port}${url}`, { method, jar: this.jar, json });
|
35 | }
|
36 | }
|
37 | exports.TestSession = TestSession;
|
38 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdFV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Rlc3RVdGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG1DQUFvQztBQUNwQyx1Q0FBd0M7QUFFeEMsTUFBYSxXQUFXO0lBRXZCLFlBQW1CLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO1FBRHZCLFFBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDTSxDQUFDO0lBQ25DLEtBQUssQ0FBQyxLQUFLLENBQUksS0FBYSxFQUFFLEtBQUssR0FBRyxFQUFFLEVBQUUsTUFBVztRQUNwRCxNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQTRCLE1BQU0sRUFBRSxjQUFjLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzdGLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELDBCQUEwQjtRQUMxQixJQUFJLEtBQUssRUFBRTtZQUNWLElBQUksQ0FBQyxRQUFRO2dCQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLEtBQUssMEJBQTBCLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDNUYsSUFBSSxLQUFLLEtBQUssUUFBUTtnQkFDckIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsS0FBSyxXQUFXLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFlBQVksS0FBSyxFQUFFLENBQUMsQ0FBQztTQUNuRzthQUFNO1lBQ04sMEJBQTBCO1lBQzFCLElBQUksUUFBUTtnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDLENBQUM7U0FDaEc7UUFDRCwwQkFBMEI7UUFDMUIsSUFBSSxNQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNsRSxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNyQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLE1BQU0sV0FBVyxHQUFHLFlBQVksS0FBSyxFQUFFLENBQUMsQ0FBQztTQUN0RjtRQUNELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDdEIsQ0FBQztJQUNELE9BQU8sQ0FBSSxNQUFjLEVBQUUsR0FBVyxFQUFFLElBQVM7UUFDaEQsT0FBTyxxQkFBVyxDQUFJLG9CQUFvQixJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0YsQ0FBQztDQUNEO0FBMUJELGtDQTBCQyJ9 |
\ | No newline at end of file |