func (s *slideSuite) TestSlideToFrontAddress(c *gc.C) { servers := [][]network.HostPort{ {exampleHostPorts[0], exampleHostPorts[1], exampleHostPorts[2]}, {exampleHostPorts[3]}, } // server order should not change, but ports should be switched expected := [][]network.HostPort{ {exampleHostPorts[1], exampleHostPorts[0], exampleHostPorts[2]}, {exampleHostPorts[3]}, } api.SlideAddressToFront(servers, 0, 1) c.Check(servers, gc.DeepEquals, expected) }
func (s *slideSuite) TestSlideToFrontNoOp(c *gc.C) { servers := [][]network.HostPort{ {exampleHostPorts[0]}, {exampleHostPorts[1]}, } // order should not have changed expected := [][]network.HostPort{ {exampleHostPorts[0]}, {exampleHostPorts[1]}, } api.SlideAddressToFront(servers, 0, 0) c.Check(servers, gc.DeepEquals, expected) }
func (s *slideSuite) TestSlideToFrontBoth(c *gc.C) { servers := [][]network.HostPort{ {exampleHostPorts[0]}, {exampleHostPorts[1], exampleHostPorts[2]}, {exampleHostPorts[3]}, } // server 1 should be slid to the front expected := [][]network.HostPort{ {exampleHostPorts[2], exampleHostPorts[1]}, {exampleHostPorts[0]}, {exampleHostPorts[3]}, } api.SlideAddressToFront(servers, 1, 1) c.Check(servers, gc.DeepEquals, expected) }