0.1.3 • Published 5 years ago
in-server-test v0.1.3
in-server-test
- In server run test
Install And Run
npm:
$ npm install --save in-server-testRun:
in-server-test run at process.env.e2e is true:
e2e=1 yarn startor in index.js, set process.env.e2e:
process.env.e2e = 1;inServerTest
1. Run Test Sign:
In src/controllers/sign.js, add:
import inServerTest from "in-server-test";
// first run index:1
inServerTest(1, "Test Sign", async (eq) => {
const signData = await eq(
fetch("http://localhost:3000/sign/?username=abc&password=123"),
{
code: 200,
message: "sign done",
}
);
// InServerTest.cache is {};
InServerTest.cache.signData = signData;
});2. Run Test Login:
In src/controllers/logn.js, add:
// seconed run index:2
inServerTest(2, "Test login", (eq) => {
eq(
fetch("http://localhost:3000/login/?username=abc&password=123"),
{ code: 200, message: "logined" },
"Test with password"
);
eq(
fetch(
"http://localhost:3000/login/?username=abc&token=" +
InServerTest.cache.signData.token
),
{ code: 200, message: "logined" },
"Test with token"
);
});eq
type eq = (a: any, b: any, message?: string) => Promise<a>;eq use try/catch: Promise.resolve(a) check deepEqual b:
inServerTest(2, "Test login", (eq) => {
const testA = () => {
throw "dog";
};
eq(a, "dog"); // right
});