Context("when assigning an address to the bridge fails", func() {
			It("returns the error", func() {
				netlinker.AddrAddReturns(errors.New("addr add failed"))

				_, err := factory.CreateBridge("some-bridge-name", address)
				Expect(err).To(Equal(errors.New("addr add failed")))
			})
		})

		It("sets the bridge link up", func() {
			_, err := factory.CreateBridge("some-bridge-name", address)
			Expect(err).NotTo(HaveOccurred())

			Expect(netlinker.LinkSetUpCallCount()).To(Equal(1))
			Expect(netlinker.LinkSetUpArgsForCall(0)).To(Equal(expectedBridge))
		})

		Context("when setting the bridge link up fails", func() {
			It("returns the error", func() {
				netlinker.LinkSetUpReturns(errors.New("bridge link up failed"))

				_, err := factory.CreateBridge("some-bridge-name", address)
				Expect(err).To(Equal(errors.New("bridge link up failed")))
			})
		})
	})

	Describe("CreateVxlan", func() {
		var expectedVxlan *netlink.Vxlan