public async Task UpdateAsync_IncorrectHtml_ReturningException() { // Arrange var bannerId = GetRandomIntId(); var bannersRepository = new BannersRepository(_fixture.Options); // Act await bannersRepository.CreateAsync(new Banner { Id = bannerId, Html = "<html></html>" }); // Assert await Assert.ThrowsAsync <ArgumentException>(() => bannersRepository.UpdateAsync(new Banner { Id = bannerId, Html = "<html></span>" })); await Assert.ThrowsAsync <ArgumentException>(() => bannersRepository.UpdateAsync(new Banner { Id = bannerId + 1, Html = "<html></span></html>" })); await Assert.ThrowsAsync <ArgumentException>(() => bannersRepository.UpdateAsync(new Banner { Id = bannerId + 2, Html = "<html></span><span></html>" })); }
public async Task UpdateAsync_NonExistingBanner_ReturnsNull() { // Arrange var bannerId = GetRandomIntId(); var bannersRepository = new BannersRepository(_fixture.Options); var newBanner = new Banner() { Id = bannerId, Html = "<html></html>", }; // Act await bannersRepository.UpdateAsync(newBanner); var banner = await bannersRepository.GetAsync(bannerId); // Assert Assert.Null(banner); }
public async Task UpdateAsync_ExistingBanner_ReturnsTrue() { // Arrange var bannerId = GetRandomIntId(); const string expectedHtml = "<html></html>"; var bannersRepository = new BannersRepository(_fixture.Options); // Act var existingBanner = await bannersRepository.CreateAsync(new Banner { Id = bannerId, Html = string.Empty }); await bannersRepository.UpdateAsync(new Banner { Id = bannerId, Html = expectedHtml }); var changedBanner = await bannersRepository.GetAsync(bannerId); // Assert Assert.NotNull(changedBanner); Assert.Equal(existingBanner.Id, changedBanner.Id); Assert.NotEqual(existingBanner.Html, changedBanner.Html); Assert.Equal(changedBanner.Html, expectedHtml); }
public async Task UpdateAsync_Always_SetsModified() { // Arrange var bannerId = GetRandomIntId(); var bannersRepository = new BannersRepository(_fixture.Options); var newBanner = new Banner() { Id = bannerId, Html = "<html></html>", }; // Act var createdBanner = await bannersRepository.CreateAsync(newBanner); await bannersRepository.UpdateAsync(new Banner { Id = bannerId, Html = "<html></html>" }); var changedBanner = await bannersRepository.GetAsync(bannerId); // Assert Assert.Null(createdBanner.Modified); Assert.NotNull(changedBanner.Modified); }
public async Task UpdateAsync_Never_UpdatesCreated() { // Arrange var bannerId = GetRandomIntId(); var bannersRepository = new BannersRepository(_fixture.Options); var newBanner = new Banner() { Id = bannerId, Html = "<html></html>", }; // Act await bannersRepository.CreateAsync(newBanner); var createdBanner = await bannersRepository.GetAsync(bannerId); await bannersRepository.UpdateAsync(new Banner { Id = bannerId, Html = "<html></html>" }); var changedBanner = await bannersRepository.GetAsync(bannerId); // Assert Assert.Equal(createdBanner.Created, changedBanner.Created); }