示例#1
0
        public async void DoesValidatorPreventFromRequestWithEmptyId()
        {
            var request   = new RestoreRecipe();
            var validator = new RestoreRecipeValidator(MockBuilder.BuildFakeRepository());

            var result = await validator.ValidateAsync(request);

            result.IsValid.Should().BeFalse();
        }
示例#2
0
 public virtual RecipeRestored Map(RestoreRecipe dto, DateTime publishTime, string userId)
 {
     return(new RecipeRestored
     {
         EntityId = dto.EntityId,
         AuthorId = userId,
         Published = publishTime
     });
 }
示例#3
0
        public async void DoesValidatorPreventFromRequestWithExistingId()
        {
            var request = new RestoreRecipe {
                EntityId = new Guid("447EA0EF-F828-486A-91A9-0EDBC01D0B89")
            };
            var validator = new RestoreRecipeValidator(MockBuilder.BuildFakeRepository());

            var result = await validator.ValidateAsync(request);

            result.IsValid.Should().BeFalse();
        }
示例#4
0
        public async void DoesValidatorAllowCorrectRequest()
        {
            var request = new RestoreRecipe {
                EntityId = new Guid("0F04E4D4-F9B8-45E8-8661-496730E8B455")
            };
            var validator = new RestoreRecipeValidator(MockBuilder.BuildFakeRepository());

            var result = await validator.ValidateAsync(request);

            result.IsValid.Should().BeTrue();
        }
        public async Task ShouldRestoreRecipeCorrectly()
        {
            var request = new RestoreRecipe
            {
                EntityId = Guid.Parse("21552e39-3c5a-42e6-a116-e9f54643e57c")
            };
            var handler = new RestoreRecipeHandler(_eventStore.Object, MockBuilder.BuildFakeRecipeEventsMapper(), MockBuilder.BuildFakeDateTimeService(), MockBuilder.BuildFakeCurrentUserService());

            await handler.Handle(request, CancellationToken.None);

            var expected = new RecipeRestored
            {
                EntityId  = Guid.Parse("21552e39-3c5a-42e6-a116-e9f54643e57c"),
                Published = new DateTime(2010, 1, 1),
                AuthorId  = "edb4a387-260e-43c1-aed8-eec4dbd0fc31"
            };

            _eventStore.Verify(x => x.AddEvent(It.Is <RecipeRestored>(y => y.WithDeepEqual(expected).Compare())));
        }
        public void Does_Map_Restore_Recipe_Work_Correctly()
        {
            var entityId = Guid.Parse("6f9d8b35-481a-4bb4-ad69-44cf00e55717");
            var dto      = new RestoreRecipe
            {
                EntityId = entityId
            };
            var userId   = "7f7dfc41-3b52-4c43-aef9-b82099a7beb2";
            var date     = new DateTime(2020, 10, 10, 5, 2, 1);
            var expected = new RecipeRestored
            {
                AuthorId  = userId,
                Published = date,
                EntityId  = entityId,
            };

            var result = _mapper.Map(dto, date, userId);

            result.Should().BeEquivalentTo(expected);
        }