public void WhenConstructingTheRepository_ItWill_BeCreated() { sut = new TrilligRepository(_db); Assert.NotNull(sut); Assert.IsAssignableFrom <IKeyedRepository <Trillig, int> >(sut); }
public async Task CheckingExistenceOfMultiples_WillReturnFalse_WhenAnyNotExist(int id1, int id2, int id3) { await _db.Database.EnsureCreatedAsync(); // Arrange sut = new TrilligRepository(_db); // Act bool result = await sut.Exists(id1, id2, id3); // Assert Assert.False(result); await _db.Database.EnsureDeletedAsync(); }
public async Task CheckingExistence_WillReturnTrue_WhenExists(int id) { await _db.Database.EnsureCreatedAsync(); // Arrange sut = new TrilligRepository(_db); // Act bool result = await sut.Exists(id); // Assert Assert.True(result); await _db.Database.EnsureDeletedAsync(); }
public async Task GetAsync_WillReturnNull_WhenNotExists(int id) { await _db.Database.EnsureCreatedAsync(); // Arrange sut = new TrilligRepository(_db); // Act Trillig result = await sut.GetAsync(id); // Assert Assert.Null(result); await _db.Database.EnsureDeletedAsync(); }
public async Task GetAsyncMultiple_WillReturnAllMatchingEntities(int id1, int id2, int id3) { await _db.Database.EnsureCreatedAsync(); // Arrange sut = new TrilligRepository(_db); // Act IEnumerable <Trillig> result = await sut.GetAsync(id1, id2, id3); // Assert Assert.NotEmpty(result); Assert.Equal(3, result.Count()); await _db.Database.EnsureDeletedAsync(); }
public async Task GetAsync_WillReturnTheCorrectValue_WhenExists(int id) { await _db.Database.EnsureCreatedAsync(); // Arrange sut = new TrilligRepository(_db); // Act Trillig result = await sut.GetAsync(id); // Assert Assert.NotNull(result); Assert.Equal(id, result.Id); await _db.Database.EnsureDeletedAsync(); }
public async Task AttemptingADelete_WithEmptyIds_HasNoEffect() { await _db.Database.EnsureCreatedAsync(); // Arrange sut = new TrilligRepository(_db); var preTrilligs = await _db.Trilligs.CountAsync(); // Act await sut.DeleteAsync(); // Assert var postTrilligs = await _db.Trilligs.CountAsync(); Assert.Equal(preTrilligs, postTrilligs); await _db.Database.EnsureDeletedAsync(); }
public async Task DeletingEntitiesByKey_WillNotAffectNonExistentKeys() { // Arrange await _db.Database.EnsureCreatedAsync(); var targetIds = new[] { 1, 22, 33 }; var preTrilligs = _db.Trilligs.Where(x => targetIds.Contains(x.Id)).ToArray(); Assert.Single(preTrilligs); sut = new TrilligRepository(_db); // Act await sut.DeleteAsync(targetIds); // Assert var postTrilligs = _db.Trilligs.Where(x => targetIds.Contains(x.Id)).ToArray(); Assert.Empty(postTrilligs); await _db.Database.EnsureDeletedAsync(); }
public async Task DeletingEntitiesByKey_RemoveEntriesWithExisitngKeys() { // Arrange await _db.Database.EnsureCreatedAsync(); var targetIds = new[] { 1, 2, 3 }; var preTrilligs = _db.Trilligs.Where(x => targetIds.Contains(x.Id)).ToArray(); Assert.Equal(3, preTrilligs.Length); sut = new TrilligRepository(_db); // Act await sut.DeleteAsync(targetIds); // Assert var postTrilligs = _db.Trilligs.Where(x => targetIds.Contains(x.Id)).ToArray(); Assert.Empty(postTrilligs); await _db.Database.EnsureDeletedAsync(); }