Skip to content

Commit 09fe2db

Browse files
author
Tomek Rękawek
committed
Updated the docker-junit-rule.
1 parent 6d17976 commit 09fe2db

File tree

2 files changed

+12
-13
lines changed

2 files changed

+12
-13
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@
119119
<dependency>
120120
<groupId>com.arakelian</groupId>
121121
<artifactId>docker-junit-rule</artifactId>
122-
<version>2.1.4</version>
122+
<version>4.1.0</version>
123123
<scope>test</scope>
124124
</dependency>
125125
<dependency>

src/test/java/eu/rekawek/toxiproxy/ToxiproxyRule.java

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,45 +2,44 @@
22

33
import com.arakelian.docker.junit.DockerRule;
44
import com.arakelian.docker.junit.model.ImmutableDockerConfig;
5-
import com.spotify.docker.client.DefaultDockerClient;
65
import org.junit.Assume;
76
import org.junit.rules.TestRule;
87
import org.junit.runner.Description;
98
import org.junit.runners.model.Statement;
9+
import repackaged.com.arakelian.docker.junit.com.github.dockerjava.api.model.ExposedPort;
10+
import repackaged.com.arakelian.docker.junit.com.github.dockerjava.api.model.PortBinding;
11+
import repackaged.com.arakelian.docker.junit.com.github.dockerjava.core.DockerClientImpl;
12+
import repackaged.com.arakelian.docker.junit.com.github.dockerjava.okhttp.OkHttpDockerCmdExecFactory;
1013

1114
public class ToxiproxyRule implements TestRule {
1215

1316
private final DockerRule wrappedRule;
1417

1518
public ToxiproxyRule() {
1619
wrappedRule = new DockerRule(ImmutableDockerConfig.builder()
17-
.image("shopify/toxiproxy:2.1.3")
18-
.name("text-toxiproxy")
19-
.ports("8474")
20+
.image("shopify/toxiproxy:2.1.4")
2021
.addStartedListener(container -> {
21-
container.waitForPort("8474/tcp");
22+
container.waitForPort(ExposedPort.tcp(8474));
23+
})
24+
.addHostConfigConfigurer(hostConfig -> {
25+
hostConfig.withPortBindings(PortBinding.parse("8474"));
2226
})
23-
.alwaysRemoveContainer(true)
2427
.build());
25-
2628
}
2729

2830
public ToxiproxyClient getToxiproxyClient() {
29-
int mappedPort = wrappedRule.getContainer().getPortBinding("8474/tcp").getPort();
31+
int mappedPort = wrappedRule.getContainer().getSimpleBinding(ExposedPort.tcp(8474)).getPort();
3032
ToxiproxyClient tp = new ToxiproxyClient("localhost", mappedPort);
3133
return tp;
3234
}
3335

3436
@Override
3537
public Statement apply(Statement statement, Description description) {
3638
try {
37-
DefaultDockerClient client = DefaultDockerClient.fromEnv().connectTimeoutMillis(5000L).readTimeoutMillis(20000L).build();
38-
client.ping();
39-
client.close();
39+
DockerClientImpl.getInstance().withDockerCmdExecFactory(new OkHttpDockerCmdExecFactory()).pingCmd().exec();
4040
} catch (Exception e) {
4141
Assume.assumeNoException(e);
4242
}
43-
4443
return wrappedRule.apply(statement, description);
4544
}
4645
}

0 commit comments

Comments
 (0)