예제 #1
0
        public void TestNewLog_CurrentUserHasLog_ShouldSetCorrectViewModel()
        {
            // Arrange
            var mockedProvider = new Mock <IAuthenticationProvider>();

            var log  = new TrainingLog();
            var user = new User {
                TrainingLog = log, LogId = log.LogId
            };

            var mockedService = new Mock <IUserService>();

            mockedService.Setup(s => s.GetUserById(It.IsAny <string>())).Returns(user);

            var model = new NewLogViewModel();

            var mockedFactory = new Mock <IViewModelFactory>();

            mockedFactory.Setup(f => f.CreateNewLogViewModel(It.IsAny <int>())).Returns(model);

            var controller = new ProfileController(mockedProvider.Object, mockedService.Object, mockedFactory.Object);

            // Act, Assert
            controller
            .WithCallTo(c => c.NewLog())
            .ShouldRenderDefaultView()
            .WithModel <NewLogViewModel>(m => Assert.AreSame(model, m));
        }
예제 #2
0
        public void TestConstructor_ShouldSetLogIdCorrectly(int logId)
        {
            // Arrange, Act
            var model = new NewLogViewModel(logId);

            // Assert
            Assert.AreEqual(logId, model.LogId);
        }