Skip to content

Commit b7051f7

Browse files
Mockserver
1 parent ef0b805 commit b7051f7

File tree

4 files changed

+37
-23
lines changed

4 files changed

+37
-23
lines changed

docs/modules/cockroachdb.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@ These examples use the following libraries:
1313
- [pg](https://www.npmjs.com/package/pg)
1414

1515
npm install pg
16-
17-
- [@types/pg](https://www.npmjs.com/package/@types/pg)
18-
1916
npm install @types/pg
2017

2118
Choose an image from the [container registry](https://hub.docker.com/r/cockroachdb/cockroach) and substitute `IMAGE`.

docs/modules/mockserver.md

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
# Mockserver Module
2-
3-
[MockServer](https://www.mock-server.com/#what-is-mockserver) allows you to mock any server or service via HTTP or HTTPS, such as a REST or RPC service.
1+
# Mockserver
42

53
## Install
64

@@ -10,12 +8,32 @@ npm install @testcontainers/mockserver --save-dev
108

119
## Examples
1210

11+
These examples use the following libraries:
12+
13+
- [mockserver-client](https://www.npmjs.com/package/mockserver-client)
14+
15+
npm install mockserver-client
16+
17+
- [superagent](https://www.npmjs.com/package/superagent)
18+
19+
npm install superagent
20+
npm install @types/superagent
21+
22+
Choose an image from the [container registry](https://hub.docker.com/r/mockserver/mockserver) and substitute `IMAGE`.
23+
24+
## Examples
25+
26+
### Mock HTTP request
27+
1328
<!--codeinclude-->
14-
[Start container:](../../packages/modules/mockserver/src/mockserver-container.test.ts) inside_block:startContainer
29+
[](../../packages/modules/mockserver/src/mockserver-container.test.ts) inside_block:httpMockServer
1530
<!--/codeinclude-->
1631

17-
MockServer includes built-in TLS support. To obtain an HTTPS URL, use the `getSecureUrl` method. Keep in mind that MockServer uses a self-signed certificate.
32+
### Mock HTTPS request
33+
34+
!!! note
35+
MockServer uses a self-signed certificate for HTTPS connections.
1836

1937
<!--codeinclude-->
20-
[Using TLS:](../../packages/modules/mockserver/src/mockserver-container.test.ts) inside_block:httpsRequests
21-
<!--/codeinclude-->
38+
[](../../packages/modules/mockserver/src/mockserver-container.test.ts) inside_block:mockServerHttps
39+
<!--/codeinclude-->

packages/modules/mockserver/package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,6 @@
33
"version": "11.4.0",
44
"description": "Mockserver module for Testcontainers",
55
"main": "build/index.js",
6-
"devDependencies": {
7-
"@types/superagent": "^8.1.9",
8-
"mockserver-client": "^5.15.0",
9-
"superagent": "^10.2.2"
10-
},
116
"scripts": {
127
"prepack": "shx cp ../../../README.md . && shx cp ../../../LICENSE .",
138
"build": "tsc --project tsconfig.build.json"
@@ -35,5 +30,10 @@
3530
},
3631
"dependencies": {
3732
"testcontainers": "^11.4.0"
33+
},
34+
"devDependencies": {
35+
"@types/superagent": "^8.1.9",
36+
"mockserver-client": "^5.15.0",
37+
"superagent": "^10.2.2"
3838
}
3939
}

packages/modules/mockserver/src/mockserver-container.test.ts

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,11 @@ import { MockserverContainer } from "./mockserver-container";
66
const IMAGE = getImage(__dirname);
77

88
describe("MockserverContainer", { timeout: 240_000 }, () => {
9-
// startContainer {
109
it("should start and accept mocks", async () => {
10+
// httpMockServer {
1111
await using container = await new MockserverContainer(IMAGE).start();
12-
const client = mockServerClient(container.getHost(), container.getMockserverPort());
13-
const url = container.getUrl();
1412

13+
const client = mockServerClient(container.getHost(), container.getMockserverPort());
1514
await client.mockAnyResponse({
1615
httpRequest: {
1716
method: "GET",
@@ -25,24 +24,24 @@ describe("MockserverContainer", { timeout: 240_000 }, () => {
2524
},
2625
});
2726

28-
const response = await superagent.get(`${url}/foo`);
27+
const response = await superagent.get(`${container.getUrl()}/foo`);
2928

3029
expect(response.statusCode).toBe(200);
3130
expect(response.text).toBe("bar");
31+
// }
3232
});
33-
// }
3433

3534
it("should return an https url", async () => {
3635
await using container = await new MockserverContainer(IMAGE).start();
3736
const secureUrl = container.getSecureUrl();
3837
expect(secureUrl.startsWith("https://")).to.equal(true, `${secureUrl} does not start with https://`);
3938
});
4039

41-
// httpsRequests {
4240
it("should respond to https requests", async () => {
41+
// mockServerHttps {
4342
await using container = await new MockserverContainer(IMAGE).start();
44-
const client = mockServerClient(container.getHost(), container.getMockserverPort());
4543

44+
const client = mockServerClient(container.getHost(), container.getMockserverPort());
4645
await client.mockAnyResponse({
4746
httpRequest: {
4847
method: "GET",
@@ -61,6 +60,6 @@ describe("MockserverContainer", { timeout: 240_000 }, () => {
6160

6261
expect(response.statusCode).toBe(200);
6362
expect(response.text).toBe("bar");
63+
// }
6464
});
65-
// }
6665
});

0 commit comments

Comments
 (0)