LEFT | RIGHT |
1 package firewaller_test | 1 package firewaller_test |
2 | 2 |
3 import ( | 3 import ( |
4 . "launchpad.net/gocheck" | 4 . "launchpad.net/gocheck" |
5 "launchpad.net/juju-core/environs" | 5 "launchpad.net/juju-core/environs" |
6 "launchpad.net/juju-core/environs/dummy" | 6 "launchpad.net/juju-core/environs/dummy" |
7 "launchpad.net/juju-core/juju/testing" | 7 "launchpad.net/juju-core/juju/testing" |
8 "launchpad.net/juju-core/state" | 8 "launchpad.net/juju-core/state" |
9 coretesting "launchpad.net/juju-core/testing" | 9 coretesting "launchpad.net/juju-core/testing" |
10 "launchpad.net/juju-core/worker/firewaller" | 10 "launchpad.net/juju-core/worker/firewaller" |
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
121 c.Assert(err, IsNil) | 121 c.Assert(err, IsNil) |
122 | 122 |
123 s.assertPorts(c, inst, m.Id(), []state.Port{{"tcp", 80}, {"tcp", 8080}}) | 123 s.assertPorts(c, inst, m.Id(), []state.Port{{"tcp", 80}, {"tcp", 8080}}) |
124 | 124 |
125 err = u.ClosePort("tcp", 80) | 125 err = u.ClosePort("tcp", 80) |
126 c.Assert(err, IsNil) | 126 c.Assert(err, IsNil) |
127 | 127 |
128 s.assertPorts(c, inst, m.Id(), []state.Port{{"tcp", 8080}}) | 128 s.assertPorts(c, inst, m.Id(), []state.Port{{"tcp", 8080}}) |
129 } | 129 } |
130 | 130 |
| 131 func (s *FirewallerSuite) TestMultipleExposedServices(c *C) { |
| 132 fw := firewaller.NewFirewaller(s.State) |
| 133 defer func() { c.Assert(fw.Stop(), IsNil) }() |
| 134 |
| 135 svc1, err := s.State.AddService("wordpress", s.charm) |
| 136 c.Assert(err, IsNil) |
| 137 err = svc1.SetExposed() |
| 138 c.Assert(err, IsNil) |
| 139 |
| 140 u1, m1 := s.addUnit(c, svc1) |
| 141 inst1 := s.startInstance(c, m1) |
| 142 err = u1.OpenPort("tcp", 80) |
| 143 c.Assert(err, IsNil) |
| 144 err = u1.OpenPort("tcp", 8080) |
| 145 c.Assert(err, IsNil) |
| 146 |
| 147 svc2, err := s.State.AddService("mysql", s.charm) |
| 148 c.Assert(err, IsNil) |
| 149 err = svc2.SetExposed() |
| 150 c.Assert(err, IsNil) |
| 151 |
| 152 u2, m2 := s.addUnit(c, svc2) |
| 153 inst2 := s.startInstance(c, m2) |
| 154 err = u2.OpenPort("tcp", 3306) |
| 155 c.Assert(err, IsNil) |
| 156 |
| 157 s.assertPorts(c, inst1, m1.Id(), []state.Port{{"tcp", 80}, {"tcp", 8080}
}) |
| 158 s.assertPorts(c, inst2, m2.Id(), []state.Port{{"tcp", 3306}}) |
| 159 |
| 160 err = u1.ClosePort("tcp", 80) |
| 161 c.Assert(err, IsNil) |
| 162 err = u2.ClosePort("tcp", 3306) |
| 163 c.Assert(err, IsNil) |
| 164 |
| 165 s.assertPorts(c, inst1, m1.Id(), []state.Port{{"tcp", 8080}}) |
| 166 s.assertPorts(c, inst2, m2.Id(), nil) |
| 167 } |
| 168 |
131 func (s *FirewallerSuite) TestMachineWithoutInstanceId(c *C) { | 169 func (s *FirewallerSuite) TestMachineWithoutInstanceId(c *C) { |
132 fw := firewaller.NewFirewaller(s.State) | 170 fw := firewaller.NewFirewaller(s.State) |
133 defer func() { c.Assert(fw.Stop(), IsNil) }() | 171 defer func() { c.Assert(fw.Stop(), IsNil) }() |
134 | 172 |
135 svc, err := s.Conn.AddService("wordpress", s.charm) | 173 svc, err := s.Conn.AddService("wordpress", s.charm) |
136 c.Assert(err, IsNil) | 174 c.Assert(err, IsNil) |
137 err = svc.SetExposed() | 175 err = svc.SetExposed() |
138 c.Assert(err, IsNil) | 176 c.Assert(err, IsNil) |
139 // add a unit but don't start its instance yet. | 177 // add a unit but don't start its instance yet. |
140 u1, m1 := s.addUnit(c, svc) | 178 u1, m1 := s.addUnit(c, svc) |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
323 c.Assert(err, IsNil) | 361 c.Assert(err, IsNil) |
324 err = svc.RemoveUnit(u) | 362 err = svc.RemoveUnit(u) |
325 c.Assert(err, IsNil) | 363 c.Assert(err, IsNil) |
326 err = svc.EnsureDead() | 364 err = svc.EnsureDead() |
327 c.Assert(err, IsNil) | 365 c.Assert(err, IsNil) |
328 err = s.State.RemoveService(svc) | 366 err = s.State.RemoveService(svc) |
329 c.Assert(err, IsNil) | 367 c.Assert(err, IsNil) |
330 | 368 |
331 s.assertPorts(c, inst, m.Id(), nil) | 369 s.assertPorts(c, inst, m.Id(), nil) |
332 } | 370 } |
| 371 |
| 372 func (s *FirewallerSuite) TestRemoveMultipleServices(c *C) { |
| 373 fw := firewaller.NewFirewaller(s.State) |
| 374 defer func() { c.Assert(fw.Stop(), IsNil) }() |
| 375 |
| 376 svc1, err := s.State.AddService("wordpress", s.charm) |
| 377 c.Assert(err, IsNil) |
| 378 err = svc1.SetExposed() |
| 379 c.Assert(err, IsNil) |
| 380 |
| 381 u1, m1 := s.addUnit(c, svc1) |
| 382 inst1 := s.startInstance(c, m1) |
| 383 err = u1.OpenPort("tcp", 80) |
| 384 c.Assert(err, IsNil) |
| 385 |
| 386 svc2, err := s.State.AddService("mysql", s.charm) |
| 387 c.Assert(err, IsNil) |
| 388 err = svc2.SetExposed() |
| 389 c.Assert(err, IsNil) |
| 390 |
| 391 u2, m2 := s.addUnit(c, svc2) |
| 392 inst2 := s.startInstance(c, m2) |
| 393 err = u2.OpenPort("tcp", 3306) |
| 394 c.Assert(err, IsNil) |
| 395 |
| 396 s.assertPorts(c, inst1, m1.Id(), []state.Port{{"tcp", 80}}) |
| 397 s.assertPorts(c, inst2, m2.Id(), []state.Port{{"tcp", 3306}}) |
| 398 |
| 399 // Remove services. |
| 400 err = u2.EnsureDead() |
| 401 c.Assert(err, IsNil) |
| 402 err = svc2.RemoveUnit(u2) |
| 403 c.Assert(err, IsNil) |
| 404 err = svc2.EnsureDead() |
| 405 c.Assert(err, IsNil) |
| 406 err = s.State.RemoveService(svc2) |
| 407 c.Assert(err, IsNil) |
| 408 |
| 409 err = u1.EnsureDead() |
| 410 c.Assert(err, IsNil) |
| 411 err = svc1.RemoveUnit(u1) |
| 412 c.Assert(err, IsNil) |
| 413 err = svc1.EnsureDead() |
| 414 c.Assert(err, IsNil) |
| 415 err = s.State.RemoveService(svc1) |
| 416 c.Assert(err, IsNil) |
| 417 |
| 418 s.assertPorts(c, inst1, m1.Id(), nil) |
| 419 s.assertPorts(c, inst2, m2.Id(), nil) |
| 420 } |
LEFT | RIGHT |