Skip to content

Commit b87f33a

Browse files
committed
fixed DB handling
1 parent faf7085 commit b87f33a

3 files changed

Lines changed: 29 additions & 61 deletions

File tree

js_npm/rest/disease-sh-api/em/app-driver.js

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,10 @@
11
const dbHandler = require("./db-handler");
2-
3-
const http = require("http");
4-
const {AddressInfo} = require("net");
5-
62
const em = require("evomaster-client-js");
73

84

95
class AppController extends em.SutController {
106

117

12-
setupForGeneratedTest(){
13-
14-
return new Promise((resolve)=>{
15-
this.testcontainer = dbHandler.startDb();
16-
resolve(this.testcontainer);
17-
});
18-
}
19-
208
getInfoForAuthentication(){
219
return [];
2210
}
@@ -44,10 +32,15 @@ class AppController extends em.SutController {
4432
}
4533

4634
startSut(){
47-
const app = require("../src/server");
48-
return new Promise( (resolve) => {
35+
return new Promise( async (resolve) => {
36+
37+
await dbHandler.startDb();
38+
39+
const app = require("../src/server");
40+
4941
this.port = require('../src/config/index').port;
50-
this.server = app.listen(this.port, "localhost", () => {
42+
this.server = app.listen(0, "localhost", () => {
43+
this.port = this.server.address().port;
5144
resolve("http://localhost:" + this.port);
5245
});
5346
});

js_npm/rest/disease-sh-api/em/db-handler.js

Lines changed: 21 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,36 @@
1-
const { DockerComposeEnvironment , Wait } = require("testcontainers");
1+
const {DockerComposeEnvironment, Wait} = require("testcontainers");
22

3-
let dbPort = 27017;
4-
let exposedDbPort = 0;
5-
let dbURL = ""
63
let test_container = null;
74

8-
module.exports ={
9-
startDb: async () =>{
10-
if(process.env.DOCKER_DBC && process.env.DOCKER_DBC === '0'){
11-
console.log("use local redis on port:" + process.env.REDIS_PORT)
12-
}else{
13-
console.log("start docker db")
14-
dbPort = process.env.DB_PORT || 50000;
15-
16-
// solve ioredis connection problem https://github.com/luin/ioredis/issues/763
17-
const environment = await new DockerComposeEnvironment(__dirname, "test-redis-db.yml")
18-
.withWaitStrategy("redis_1", Wait.forLogMessage("Ready to accept connections"))
19-
.up();
20-
test_container = await environment.getContainer("redis_1");
21-
exposedDbPort = test_container.getMappedPort(dbPort);
22-
process.env.REDIS_PORT = exposedDbPort;
23-
24-
console.log("connecting redis-server with " + exposedDbPort+ " " + test_container.getHost());
25-
}
26-
return test_container;
27-
},
5+
module.exports = {
6+
startDb: async () => {
287

29-
checkdb: async () =>{
8+
console.log("starting docker db")
9+
const dbPort = 50000;
3010

11+
// solve ioredis connection problem https://github.com/luin/ioredis/issues/763
12+
const environment = await new DockerComposeEnvironment(__dirname, "test-redis-db.yml")
13+
.withWaitStrategy("redis_1", Wait.forLogMessage("Ready to accept connections"))
14+
.up();
15+
test_container = await environment.getContainer("redis_1");
16+
const exposedDbPort = test_container.getMappedPort(dbPort);
17+
process.env.REDIS_PORT = exposedDbPort;
18+
19+
console.log("connecting redis-server with " + exposedDbPort + " " + test_container.getHost());
20+
21+
return test_container;
3122
},
3223

33-
getDbPort: () =>{
34-
return exposedDbPort
24+
checkdb: async () => {
3525
},
3626

37-
cleanDb: async () =>{
3827

28+
cleanDb: async () => {
29+
//read-only DB
3930
},
4031

41-
stopDb : () =>{
42-
if (test_container){
32+
stopDb: () => {
33+
if (test_container) {
4334
test_container.stop();
4435
test_container = null;
4536
}

js_npm/rest/disease-sh-api/src/serverWithCov.js

Lines changed: 0 additions & 16 deletions
This file was deleted.

0 commit comments

Comments
 (0)