It("should return nil", func() {
					_, err := factory.FindLink("some-device-name")
					Expect(err).To(Equal(errors.New("not found")))
				})
			})
		})

		Describe("Exists", func() {
			Context("when a link is found", func() {
				BeforeEach(func() {
					netlinker.LinkByNameReturns(&netlink.Vxlan{VxlanId: 41}, nil)
				})

				It("returns true", func() {
					Expect(factory.Exists("some-device-name")).To(BeTrue())
					Expect(netlinker.LinkByNameCallCount()).To(Equal(1))
					Expect(netlinker.LinkByNameArgsForCall(0)).To(Equal("some-device-name"))
				})
			})

			Context("when link by name returns an error", func() {
				BeforeEach(func() {
					netlinker.LinkByNameReturns(nil, errors.New("not found"))
				})

				It("returns false", func() {
					Expect(factory.Exists("some-device-name")).To(BeFalse())
					Expect(netlinker.LinkByNameCallCount()).To(Equal(1))
					Expect(netlinker.LinkByNameArgsForCall(0)).To(Equal("some-device-name"))
				})
			})