Beispiel #1
0
        public async Task CanInsert()
        {
            await sut.InsertAsync(new TestEntity(Id) { Quantity = 3 });

            var test = await sut.GetByIdAsync(Id);

            Assert.NotNull(test);
            Assert.Equal(Id, test.Id);
        }
        //!! Please Ran integration tests only one by one otherwise it leads to EventStoreCommunicationException "Unable to access persistence layer"
        public async Task ShouldUpdateReadModel()
        {
            subscriber.Subscribe <ProductItemCreated>(async @event => await HandleAsync(productItemCreatedHandlers, @event));
            subscriber.Subscribe <ProductItemChanged>(async @event => await HandleAsync(productItemChangedHandlers, @event));
            subscriber.Subscribe <ProductPriceChanged>(async @event => await HandleAsync(productItemPriceChangedHandlers, @event));

            var ProductItem = new Product(DefaultProductItemId);

            string priceId = Guid.NewGuid().ToString();

            ProductItem.ChangeProductItem(Code, ImageSource, ProductUrl, Description);
            ProductItem.ChangeProductItem(null, null, null, updatedDescription);
            ProductItem.ChangeProductPrice(priceId, priceValue);
            await sut1.SaveAsync(ProductItem);

            var productReadModel = await productItemRepository.GetByIdAsync(DefaultProductItemId.ToString());

            var productPriceReadModel = await productItemPriceRepository.FindAllAsync(price => price.ItemId == DefaultProductItemId.ToString());

            Assert.Equal(productReadModel.Id, DefaultProductItemId.ToString());
            Assert.Equal(priceValue, productReadModel.Price);
            Assert.Equal(updatedDescription, productReadModel.Description);
            Assert.Equal(ImageSource, productReadModel.ImageSource);
            Assert.Equal(ProductUrl, productReadModel.ProductUrl);

            Assert.Equal(priceValue, productPriceReadModel.ToList().First().CurrentPrice);
        }
Beispiel #3
0
        public async void InsertAsync()
        {
            var newUser = new User
            {
                FirstName = "Harry",
                LastName  = "Potter",
                Age       = 10
            };

            var id = await _userRepository.InsertAsync(newUser);

            var insertedUser = await _userRepository.GetByIdAsync(id);

            Assert.IsNotNull(insertedUser);

            InsertManyAsync();
        }