예제 #1
0
        public async Task Activity_Controller_Post_Should_Return_Accepted()
        {
            var busClientMock = new Mock <IBusClient>();

            var controller = new ActivityController(busClientMock.Object);

            var userId = Guid.NewGuid();

            controller.ControllerContext = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = new ClaimsPrincipal(new ClaimsIdentity(new[]
                    {
                        new Claim(ClaimTypes.Name, userId.ToString()),
                    }, "test"))
                }
            };

            var command = new CreateActivity
            {
                Id     = Guid.NewGuid(),
                UserId = userId
            };

            var result = await controller.Post(command);

            var contentResult = result.AsOrDefault <AcceptedResult>();

            contentResult.Should().NotBeNull();
            contentResult.Location.Should().IsSameOrEqualTo($"activity/{command.Id}");
        }
예제 #2
0
        public void Post_Creates_New_Activity()
        {
            var newActivity  = new Activity(1, "Name", "Description", DateTime.Now, DateTime.Now, 1, 1, false, 1);
            var ActivityList = new List <Activity>();

            activityRepo.When(t => t.Create(newActivity))
            .Do(t => ActivityList.Add(newActivity));

            activityRepo.GetAll().Returns(ActivityList);

            var result = underTest.Post(newActivity);

            Assert.Contains(newActivity, result);
        }