"github.com/cloudfoundry-incubator/ducati-daemon/fakes"
	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"
)

var _ = Describe("AddRoute", func() {
	var (
		routeManager *fakes.RouteManager
		context      *fakes.Context
		addRoute     commands.AddRoute
	)

	BeforeEach(func() {
		context = &fakes.Context{}
		routeManager = &fakes.RouteManager{}
		context.RouteManagerReturns(routeManager)

		addRoute = commands.AddRoute{
			Interface: "my-interface",
			Destination: net.IPNet{
				IP:   net.ParseIP("192.168.1.1"),
				Mask: net.CIDRMask(24, 32),
			},
			Gateway: net.ParseIP("192.168.1.4"),
		}
	})

	It("uses the route addder to add the route", func() {
		err := addRoute.Execute(context)
		Expect(err).NotTo(HaveOccurred())