public void Complete_ShouldRenderDefaultViewWithModelIdWhenModelIsNotValid() { var memberIdProviderStub = new Mock <IMemberIdProvider>(); var memberServiceStub = new Mock <IMemberService>(); var mapperStub = new Mock <IMapper>(); var pendingWorkoutServiceStub = new Mock <IPendingWorkoutService>(); var modelViewFactoryStub = new Mock <IModelViewFactory>(); var dataModelFactoryStub = new Mock <IDataModelFactory>(); var sut = new CompleteWorkoutController(memberIdProviderStub.Object, memberServiceStub.Object, mapperStub.Object, pendingWorkoutServiceStub.Object, modelViewFactoryStub.Object, dataModelFactoryStub.Object); var model = new CompleteViewModel(); model.Id = new Guid(); sut .WithModelErrors() .WithCallTo(c => c.Complete(model)) .ShouldRenderDefaultView(); }
public void Constructor_ShouldCreateCorrectInstanceWhenAllParametersAreValid() { var memberIdProviderStub = new Mock <IMemberIdProvider>(); var memberServiceStub = new Mock <IMemberService>(); var mapperStub = new Mock <IMapper>(); var pendingWorkoutServiceStub = new Mock <IPendingWorkoutService>(); var modelViewFactoryStub = new Mock <IModelViewFactory>(); var dataModelFactoryStub = new Mock <IDataModelFactory>(); var sut = new CompleteWorkoutController(memberIdProviderStub.Object, memberServiceStub.Object, mapperStub.Object, pendingWorkoutServiceStub.Object, modelViewFactoryStub.Object, dataModelFactoryStub.Object); Assert.IsInstanceOf <CompleteWorkoutController>(sut); }
public void Complete_ShouldRedirectToCorrectActionWhenModelIsValid() { var memberIdProviderStub = new Mock <IMemberIdProvider>(); var memberServiceStub = new Mock <IMemberService>(); var mapperStub = new Mock <IMapper>(); var pendingWorkoutServiceStub = new Mock <IPendingWorkoutService>(); var modelViewFactoryStub = new Mock <IModelViewFactory>(); var dataModelFactoryStub = new Mock <IDataModelFactory>(); var sut = new CompleteWorkoutController(memberIdProviderStub.Object, memberServiceStub.Object, mapperStub.Object, pendingWorkoutServiceStub.Object, modelViewFactoryStub.Object, dataModelFactoryStub.Object); var model = new CompleteViewModel(); model.Id = new Guid(); model.Minutes = 15; model.Seconds = 10; var pending = new PendingWorkout(); pending.Member = new Member(); pending.DailyWorkout = new DailyWorkout { WorkoutInformation = new WorkoutInformation() }; var workout = new Workout(); pendingWorkoutServiceStub.Setup(x => x.GetById(It.IsAny <Guid>())).Returns(pending); pendingWorkoutServiceStub.Setup(x => x.MarkPendingAsCompleted(It.IsAny <PendingWorkout>())); dataModelFactoryStub.Setup(x => x.CreateWorkout()).Returns(workout); memberServiceStub.Setup(x => x.AddWorkout(It.IsAny <Member>(), It.IsAny <Workout>())); sut .WithCallTo(c => c.Complete(model)) .ShouldRedirectTo(c => c.All()); }
public void All_ShouldRenderDefaultViewWithCorrectModel() { var memberIdProviderStub = new Mock <IMemberIdProvider>(); var memberServiceStub = new Mock <IMemberService>(); var mapperStub = new Mock <IMapper>(); var pendingWorkoutServiceStub = new Mock <IPendingWorkoutService>(); var modelViewFactoryStub = new Mock <IModelViewFactory>(); var dataModelFactoryStub = new Mock <IDataModelFactory>(); var sut = new CompleteWorkoutController(memberIdProviderStub.Object, memberServiceStub.Object, mapperStub.Object, pendingWorkoutServiceStub.Object, modelViewFactoryStub.Object, dataModelFactoryStub.Object); var userId = "goshotheaweome"; var loggedMember = new Member(); loggedMember.PendingWorkouts = new List <PendingWorkout>() { new PendingWorkout { IsCompleted = false } }; var model = new AllPendingViewModel(); var pendingViewModel = new AllPendingSingleWorkoutViewModel(); memberIdProviderStub.Setup(x => x.GetLoggeedUserId()).Returns(userId); memberServiceStub.Setup(x => x.GetByUserId(It.IsAny <string>())).Returns(loggedMember); modelViewFactoryStub.Setup(s => s.CreateAllPendingViewModel()).Returns(model); mapperStub.Setup(x => x.Map <AllPendingSingleWorkoutViewModel>(It.IsAny <PendingWorkout>())).Returns(pendingViewModel); sut .WithCallTo(c => c.All()) .ShouldRenderDefaultView() .WithModel(model); }