@@ -52,7 +52,7 @@ var _ = Describe("Kafka Runner", func() {
52
52
53
53
// Start a zookeeper
54
54
zookeeper = & runner.Zookeeper {
55
- Name : "zookeeper0" ,
55
+ Name : runner . UniqueName () ,
56
56
ZooMyID : 1 ,
57
57
NetworkID : network .ID ,
58
58
NetworkName : network .Name ,
@@ -61,10 +61,9 @@ var _ = Describe("Kafka Runner", func() {
61
61
Expect (err ).NotTo (HaveOccurred ())
62
62
63
63
kafka = & runner.Kafka {
64
- Name : "kafka1" ,
65
64
ErrorStream : GinkgoWriter ,
66
65
OutputStream : io .MultiWriter (outBuffer , GinkgoWriter ),
67
- ZookeeperConnect : "zookeeper0: 2181" ,
66
+ ZookeeperConnect : net . JoinHostPort ( zookeeper . Name , " 2181") ,
68
67
BrokerID : 1 ,
69
68
NetworkID : network .ID ,
70
69
NetworkName : network .Name ,
@@ -85,15 +84,18 @@ var _ = Describe("Kafka Runner", func() {
85
84
})
86
85
87
86
It ("starts and stops a docker container with the specified image" , func () {
87
+ By ("naming the container" )
88
+ kafka .Name = "kafka0"
89
+
88
90
By ("starting kafka broker" )
89
91
process = ifrit .Invoke (kafka )
90
92
Eventually (process .Ready (), runner .DefaultStartTimeout ).Should (BeClosed ())
91
93
Consistently (process .Wait ()).ShouldNot (Receive ())
92
94
93
95
By ("inspecting the container by name" )
94
- container , err := client .InspectContainer ("kafka1 " )
96
+ container , err := client .InspectContainer ("kafka0 " )
95
97
Expect (err ).NotTo (HaveOccurred ())
96
- Expect (container .Name ).To (Equal ("/kafka1 " ))
98
+ Expect (container .Name ).To (Equal ("/kafka0 " ))
97
99
Expect (container .State .Status ).To (Equal ("running" ))
98
100
Expect (container .Config ).NotTo (BeNil ())
99
101
Expect (container .Config .Image ).To (Equal ("hyperledger/fabric-kafka:latest" ))
@@ -113,9 +115,9 @@ var _ = Describe("Kafka Runner", func() {
113
115
By ("terminating the container" )
114
116
process .Signal (syscall .SIGTERM )
115
117
Eventually (process .Wait (), 10 * time .Second ).Should (Receive ())
118
+ process = nil
116
119
117
- _ , err = client .InspectContainer ("kafka1" )
118
- Expect (err ).To (MatchError ("No such container: kafka1" ))
120
+ Eventually (ContainerExists (client , "kafka0" )).Should (BeFalse ())
119
121
})
120
122
121
123
It ("can be started and stopped without ifrit" , func () {
@@ -128,8 +130,7 @@ var _ = Describe("Kafka Runner", func() {
128
130
129
131
It ("multiples can be started and stopped" , func () {
130
132
k1 := & runner.Kafka {
131
- Name : "kafka1" ,
132
- ZookeeperConnect : "zookeeper0:2181" ,
133
+ ZookeeperConnect : net .JoinHostPort (zookeeper .Name , "2181" ),
133
134
BrokerID : 1 ,
134
135
MinInsyncReplicas : 2 ,
135
136
DefaultReplicationFactor : 3 ,
@@ -140,8 +141,7 @@ var _ = Describe("Kafka Runner", func() {
140
141
Expect (err ).NotTo (HaveOccurred ())
141
142
142
143
k2 := & runner.Kafka {
143
- Name : "kafka2" ,
144
- ZookeeperConnect : "zookeeper0:2181" ,
144
+ ZookeeperConnect : net .JoinHostPort (zookeeper .Name , "2181" ),
145
145
BrokerID : 2 ,
146
146
MinInsyncReplicas : 2 ,
147
147
DefaultReplicationFactor : 3 ,
@@ -152,8 +152,7 @@ var _ = Describe("Kafka Runner", func() {
152
152
Expect (err ).NotTo (HaveOccurred ())
153
153
154
154
k3 := & runner.Kafka {
155
- Name : "kafka3" ,
156
- ZookeeperConnect : "zookeeper0:2181" ,
155
+ ZookeeperConnect : net .JoinHostPort (zookeeper .Name , "2181" ),
157
156
BrokerID : 3 ,
158
157
MinInsyncReplicas : 2 ,
159
158
DefaultReplicationFactor : 3 ,
@@ -164,8 +163,7 @@ var _ = Describe("Kafka Runner", func() {
164
163
Expect (err ).NotTo (HaveOccurred ())
165
164
166
165
k4 := & runner.Kafka {
167
- Name : "kafka4" ,
168
- ZookeeperConnect : "zookeeper0:2181" ,
166
+ ZookeeperConnect : net .JoinHostPort (zookeeper .Name , "2181" ),
169
167
BrokerID : 4 ,
170
168
MinInsyncReplicas : 2 ,
171
169
DefaultReplicationFactor : 3 ,
@@ -175,14 +173,15 @@ var _ = Describe("Kafka Runner", func() {
175
173
err = k4 .Start ()
176
174
Expect (err ).NotTo (HaveOccurred ())
177
175
178
- err = k1 .Stop ()
179
- Expect (err ).NotTo (HaveOccurred ())
180
- err = k2 .Stop ()
181
- Expect (err ).NotTo (HaveOccurred ())
182
- err = k3 .Stop ()
183
- Expect (err ).NotTo (HaveOccurred ())
184
- err = k4 .Stop ()
185
- Expect (err ).NotTo (HaveOccurred ())
176
+ Expect (k1 .Stop ()).To (Succeed ())
177
+ Expect (k2 .Stop ()).To (Succeed ())
178
+ Expect (k3 .Stop ()).To (Succeed ())
179
+ Expect (k4 .Stop ()).To (Succeed ())
180
+
181
+ Eventually (ContainerExists (k1 .Client , k1 .Name )).Should (BeFalse ())
182
+ Eventually (ContainerExists (k2 .Client , k2 .Name )).Should (BeFalse ())
183
+ Eventually (ContainerExists (k3 .Client , k3 .Name )).Should (BeFalse ())
184
+ Eventually (ContainerExists (k4 .Client , k4 .Name )).Should (BeFalse ())
186
185
})
187
186
188
187
Context ("when the container has already been stopped" , func () {
@@ -197,28 +196,4 @@ var _ = Describe("Kafka Runner", func() {
197
196
Expect (err ).To (MatchError (fmt .Sprintf ("container %s already stopped" , containerID )))
198
197
})
199
198
})
200
-
201
- Context ("when a name isn't provided" , func () {
202
- It ("generates a unique name" , func () {
203
- k1 := & runner.Kafka {}
204
- err := k1 .Start ()
205
- Expect (err ).To (HaveOccurred ())
206
- Expect (k1 .Name ).ShouldNot (BeEmpty ())
207
- Expect (k1 .Name ).To (HaveLen (26 ))
208
-
209
- k2 := & runner.Kafka {}
210
- err = k2 .Start ()
211
- Expect (err ).To (HaveOccurred ())
212
- Expect (k2 .Name ).ShouldNot (BeEmpty ())
213
- Expect (k2 .Name ).To (HaveLen (26 ))
214
-
215
- Expect (k1 .Name ).NotTo (Equal (k2 .Name ))
216
-
217
- err = k1 .Stop ()
218
- Expect (err ).To (HaveOccurred ())
219
-
220
- err = k2 .Stop ()
221
- Expect (err ).To (HaveOccurred ())
222
- })
223
- })
224
199
})
0 commit comments