Exemplo n.º 1
0
        public void TestMethod1()
        {
            ProteinTrackerController controller = new ProteinTrackerController(new StubTrackingService());
            var result = controller.Index() as ViewResult;

            Assert.AreEqual(0, result.ViewBag.Total);
        }
        public void WenNothingHasHappenedTotalAndGoalAreZero()
        {
            ProteinTrackerController controller = new ProteinTrackerController(new SubTrackingService());

            ViewResult result = controller.Index() as ViewResult;

            Assert.AreEqual(0, result.ViewBag.Total);
            Assert.AreEqual(0, result.ViewBag.Goal);
        }
        public void WhenTotalIsNonZero_AndAmountAdded_TotalIsIncreased()
        {
            var service = new SubTrackingService();

            service.Total = 10;
            ProteinTrackerController controller = new ProteinTrackerController(service);

            ViewResult result = controller.AddProtein(15) as ViewResult;

            Assert.AreEqual(25, result.ViewBag.Total);
            Assert.AreEqual(0, result.ViewBag.Goal);
        }
        public IController CreateController(RequestContext requestContext, string controllerName)
        {
            if (controllerName.ToLower().StartsWith("proteintracker"))
            {
                var repository = new ProteinRespository();
                var service    = new ProteinTrackingService(repository);
                var controller = new ProteinTrackerController(service);
                return(controller);
            }
            var defaultFactory = new DefaultControllerFactory();

            return(defaultFactory.CreateController(requestContext, controllerName));
        }
Exemplo n.º 5
0
        public void TestMethod2()
        {
            var service = new StubTrackingService {
                Total = 10
            };

            ProteinTrackerController controller = new ProteinTrackerController(service);
            var result = controller.AddProtein(15) as ViewResult;

            if (result != null)
            {
                Assert.AreEqual(25, result.ViewBag.Total);
                Assert.AreEqual(0, result.ViewBag.Goal);
            }
        }
Exemplo n.º 6
0
        public IController CreateController(RequestContext requestContext, string controllerName)
        {
            if (controllerName.ToLower().StartsWith("proteintracker"))
            {
                //Create an instance of the ProteinTrackingService
                var service = new ProteinTrackingService();
                //Pass this new instance into the creation of the controller.  Now remember, that even though this is a concrete instance
                //the controller can accept anything derived from IProteinTrackingService
                //It doesn't care what the class is, as long as it's implementing this interface
                var controller = new ProteinTrackerController(service);
                return(controller);
            }

            //For all other types of Controller, we're just going to let it do what the default is
            var defaultController = new DefaultControllerFactory();

            return(defaultController.CreateController(requestContext, controllerName));
        }