Ejemplo n.º 1
0
        public async void UpdateAsync_ShouldUpdateEmployee()
        {
            // Arrange
            var petBeforeUpdate = new Pet {
                Id = 1, Name = "Dick", Type = "duck", OwnerId = 23
            };
            var petAfterUpdate = new Pet {
                Id = 1, Name = "Mat", Type = "cat", OwnerId = 48
            };

            var options = new DbContextOptionsBuilder <AppContext>()
                          .UseInMemoryDatabase(databaseName: "Pets4")
                          .Options;

            using (var appContext = new AppContext(options))
            {
                await appContext.Pets.AddAsync(petBeforeUpdate);

                await appContext.SaveChangesAsync();
            }

            using (var appContext = new AppContext(options))
            {
                var repo = new PetsRepository(appContext);

                // Act
                await repo.UpdateAsync(petAfterUpdate);


                // Assert
                var pet = appContext.Pets.Find(petAfterUpdate.Id);
                Assert.Equal(petAfterUpdate.Id, pet.Id);
                Assert.Equal(petAfterUpdate.Name, pet.Name);
                Assert.Equal(petAfterUpdate.Type, pet.Type);
                Assert.Equal(petAfterUpdate.OwnerId, pet.OwnerId);
            }
        }