Skip to content

Commit 87c507d

Browse files
committed
chore(test): improve tests
Use koa instead of `nuxt.listen` Update `jest` devDependency to `^23.5.0`
1 parent cc66eb4 commit 87c507d

File tree

7 files changed

+128
-118
lines changed

7 files changed

+128
-118
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
"eslint-plugin-jest": "^21.1.0",
4848
"git-exec-and-restage": "^1.0.1",
4949
"husky": "^0.14.3",
50-
"jest": "^23.4.2",
50+
"jest": "^23.5.0",
5151
"koa": "^2.3.0",
5252
"koa-static": "^5.0.0",
5353
"lint-staged": "^7.0.1",

test/config.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { get, commonBefore, commonAfter } from "./nuxt";
55

66
describe("config", async () => {
77
beforeAll(async () => {
8-
await commonBefore()();
8+
await commonBefore();
99
});
1010

1111
afterAll(async () => {

test/dev.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { get, commonBefore, commonAfter } from "./nuxt";
22

33
describe("module dev mode", async () => {
44
beforeAll(async () => {
5-
await commonBefore({ dev: true })();
5+
await commonBefore({ dev: true });
66
});
77

88
afterAll(async () => {

test/generate.test.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
import { get, generate, generateAfter } from "./nuxt";
1+
import { get, generate, commonAfter } from "./nuxt";
22

33
describe("module generate mode", async () => {
44
beforeAll(async () => {
5-
await generate()();
5+
await generate();
66
});
77

88
afterAll(async () => {
9-
await generateAfter();
9+
await commonAfter();
1010
});
1111

1212
test("admin", async () => {

test/module.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { get, commonBefore, commonAfter } from "./nuxt";
22

33
describe("module", async () => {
44
beforeAll(async () => {
5-
await commonBefore()();
5+
await commonBefore();
66
});
77

88
afterAll(async () => {

test/nuxt.js

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -16,35 +16,36 @@ let nuxt;
1616
let generator;
1717
let server;
1818

19-
const serve = () => {
19+
const serve = (isStatic = false) => {
2020
const app = new Koa();
2121

22-
app.use(serveStatic(generator.distPath));
22+
app.use(
23+
!isStatic
24+
? ctx => {
25+
ctx.status = 200;
26+
ctx.respond = false;
27+
ctx.req.ctx = ctx;
28+
nuxt.render(ctx.req, ctx.res);
29+
}
30+
: serveStatic(generator.distPath)
31+
);
2332
server = app.listen(process.env.PORT);
2433
};
2534

26-
const stopServe = () => {
27-
server.close();
28-
};
29-
30-
const commonBefore = (config = {}) => async () => {
35+
const commonBefore = async (config = {}) => {
3136
const mergedConfig = {
3237
...baseConfig,
3338
...config
3439
};
3540

3641
// Build a fresh nuxt
3742
nuxt = new Nuxt(mergedConfig);
38-
await new Builder(nuxt).build();
39-
await nuxt.listen(process.env.PORT);
40-
};
41-
42-
const commonAfter = async () => {
43-
// Close all opened resources
44-
await nuxt.close();
43+
const builder = new Builder(nuxt);
44+
await builder.build();
45+
serve();
4546
};
4647

47-
const generate = (config = {}) => async () => {
48+
const generate = async (config = {}) => {
4849
const mergedConfig = {
4950
...baseConfig,
5051
...config
@@ -55,12 +56,13 @@ const generate = (config = {}) => async () => {
5556
const builder = new Builder(nuxt);
5657
generator = new Generator(nuxt, builder);
5758
await generator.generate();
58-
serve();
59+
serve(true);
5960
};
6061

61-
const generateAfter = async () => {
62-
await commonAfter();
63-
stopServe();
62+
const commonAfter = async () => {
63+
// Close all opened resources
64+
server.close();
65+
await nuxt.close();
6466
};
6567

66-
export { get, commonBefore, commonAfter, generate, generateAfter };
68+
export { get, commonBefore, commonAfter, generate };

0 commit comments

Comments
 (0)