forked from kiranparajuli589/Moving-Todo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcucumber.conf.js
49 lines (43 loc) · 1004 Bytes
/
cucumber.conf.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
const {
setDefaultTimeout,
After,
Before,
BeforeAll,
AfterAll,
} = require("cucumber");
const {
createSession,
closeSession,
startWebDriver,
stopWebDriver,
} = require("nightwatch-api");
const axios = require("axios").default;
setDefaultTimeout(60000);
const availableBrowsers = ["chrome", "firefox", "ie"];
const browser = process.env.BROWSER || "chrome";
if (!availableBrowsers.includes(browser)) {
throw new Error(
"\nInvalid browser selected.\n" +
"Available browsers: " +
availableBrowsers.join(", ") +
"\n"
);
}
BeforeAll(async () => {
await startWebDriver({ env: browser });
});
Before(async () => {
await createSession({ env: browser });
});
After(async () => {
await closeSession();
const res = await axios.delete("http://localhost:8000/clean-todo");
if (res.status === 200) {
console.log("database: cleared");
} else {
throw new Error("Failed while db cleanup.");
}
});
AfterAll(async () => {
await stopWebDriver();
});