public void Initialize() { AutoMapperConfigurator.Configure(); _repositoryMock = new Mock<IRepository<StoredUser>>(); _storedUser = new StoredUser {Id = 0, Name = "name", MetaData = "metaData"}; _user = new User {Id = 0, Name = "name", MetaData = "metaData"}; }
public async Task CreateUser_Null_ErrorThrown() { // Arrange var user = new StoredUser {Name = "William", MetaData = "Researcher"}; // Act await _repository.Create(null); _context.Users.Should().HaveCount(0); _context.Users.First().Should().Be(null); }
public async Task Create_SaveChanged_IsCalled() { // Arrange var user = new StoredUser(); // Act var id = await _repository.Create(user); // Assert _context.Verify(c => c.SaveChangesAsync(), Times.Once); }
public async Task Create_Add_IsCalled() { // Arrange var validUser = new StoredUser {Id = 0, Name = "Steven", MetaData = "Researcher"}; // Act await _repository.Create(validUser); // Assert _context.Verify(c => c.Add(validUser), Times.Once); }
public async Task InsertUser_ValidUser_UserWasAddedCorrectly() { // Arrange const string name = "William"; const string metadata = "Researcher"; var user = new StoredUser { Name = name, MetaData = "Researcher" }; // Act await _repository.Create(user); // Assert _context.Users.Should().HaveCount(1); _context.Users.First().Should().NotBeNull(); _context.Users.First().Name.Should().Be(name); _context.Users.First().MetaData.Should().Be(metadata); }
public async Task Update_InvalidUser_ReturnsFalse() { //Arrange var newUser = new StoredUser(); // Act var isUpdated = await _repository.UpdateIfExists(newUser); // Assert Assert.IsFalse(isUpdated); }
public async Task Update_ValidUser_ReturnsTrue() { // Arrange var firstUserUpdated = new StoredUser {Id = 1, Name = "William Parker", MetaData = "Validator"}; // Act var isUpdated = await _repository.UpdateIfExists(firstUserUpdated); // Assert Assert.IsTrue(isUpdated); }
public async Task Update_SaveChangesAsync_IsCalled() { // Arrange var firstUserUpdated = new StoredUser {Id = 1, Name = "William Parker", MetaData = "Validator"}; // Act await _repository.UpdateIfExists(firstUserUpdated); // Assert _context.Verify(c => c.SaveChangesAsync(), Times.Once); }
public async Task Update_FindAsync_IsCalled() { // Arrange var firstUserUpdated = new StoredUser {Id = 1, Name = "William Parker", MetaData = "Validator"}; _mockSet.Setup(t => t.FindAsync(1)) .Returns(Task.FromResult(It.IsAny<StoredUser>())); // Act await _repository.UpdateIfExists(firstUserUpdated); // Assert _mockSet.Verify(m => m.FindAsync(1), Times.Once); }
[TestMethod, ExpectedException(typeof(DbEntityValidationException))] // Assert public async Task InsertUser_InvalidUser_RequiredNameMissing() { // Arrange var user = new StoredUser { MetaData = "Researcher" }; // Act await _repository.Create(user); // Assert _context.Users.Should().HaveCount(0); _context.Users.First().Should().BeNull(); _context.Users.First().Name.Should().Be(null); _context.Users.First().MetaData.Should().Be(null); }
public void GetAllUsers_Valid_ReturnsCorrectUsers_Test() { //Arrange var user1 = new StoredUser {Name = "name1", MetaData = "metaData1"}; var user2 = new StoredUser {Name = "name2", MetaData = "metaData2"}; var user3 = new StoredUser {Name = "name3", MetaData = "metaData3"}; var list = new List<StoredUser> {user1, user2, user3}.AsQueryable(); _repositoryMock.Setup(r => r.Read()).Returns(list); var adapter = new UserAdapter(_repositoryMock.Object); //Act var result = adapter.Read(); var actualUsers = result.ToList(); //Assert var counter = 0; foreach (var actualUser in list.AsEnumerable()) { var returnedUser = actualUsers[counter]; Assert.IsTrue(returnedUser.Name == actualUser.Name); Assert.IsTrue(returnedUser.MetaData == actualUser.MetaData); Assert.IsTrue(returnedUser.Id == actualUser.Id); counter++; } }
public async Task DeleteUser_ExistingUser_UserIdDeleted() { // Arrange var user = new StoredUser { Name = "William", MetaData = "Researcher" }; // Act await _repository.Create(user); await _repository.DeleteIfExists(1); // Assert _context.Users.Should().BeEmpty(); }
public async Task UpdateUser_ExistingUser_UserIsUpdated() { // Arrange var user = new StoredUser { Id = 1, Name = "William", MetaData = "Researcher"}; //var updatedUser = //--= new StoredUser { Id = 1, Name = "Peter", MetaData = "Validator"}; // Act await _repository.Create(user); user.Name = "Peter"; await _repository.UpdateIfExists(user); // Assert _context.Users.First().Should().NotBeNull(); _context.Users.First().Name.Should().Be("Peter"); }
public async Task InsertTeam_WithUser_SavesUserInDatabase() { // Arrange var user = new StoredUser { Name = "William", MetaData = "Researcher" }; var team = new StoredTeam { Id = 1, MetaData = "Team data", Name = "Team x", Users = new List<StoredUser> { user } }; var teamRepository = new TeamRepository(_context); // Act await teamRepository.Create(team); // Assert _context.Teams.Should().HaveCount(1); _context.Users.First().Should().NotBeNull(); // Should have created User also _context.Teams.First().Users.Should().NotBeNull(); }
public void GetUser_WithExistingId_ReturnsUser() { // Arrange var user = new StoredUser {Id = 1, Name = "William", MetaData = "Researcher"}; _repository.Create(user); // Act var retrievedUser = _repository.Read(user.Id).Result; // Assert user.Name.Should().Be(retrievedUser.Name); user.Id.Should().Be(retrievedUser.Id); }
public async Task InsertUser_InValidNameLength_ErrorThrown() { // Arrange var validNameLength = new string(new char[51]); const string metadata = "Researcher"; var user = new StoredUser { Name = validNameLength, MetaData = "Researcher" }; // Act await _repository.Create(user); // Assert _context.Users.Should().HaveCount(0); _context.Users.First().Should().BeNull(); }
public async Task InsertUser_ValidNameLengthIsLimit_UserIsCreated() { // Arrange var validNameLength = new string(new char[50]); const string metadata = "Researcher"; var user = new StoredUser {Name = validNameLength, MetaData = "Researcher"}; // Act await _repository.Create(user); // Assert _context.Users.Should().HaveCount(1); _context.Users.First().Should().NotBeNull(); _context.Users.First().Name.Should().Be(validNameLength); _context.Users.First().MetaData.Should().Be(metadata); }
public void GetAllUsers_Valid_ReturnsCorrectNumberOfUsers_Test() { //Arrange var user1 = new StoredUser {Name = "name1", MetaData = "metaData1"}; var user2 = new StoredUser {Name = "name2", MetaData = "metaData2"}; var user3 = new StoredUser {Name = "name3", MetaData = "metaData3"}; var list = new List<StoredUser> {user1, user2, user3}.AsQueryable(); _repositoryMock.Setup(r => r.Read()).Returns(list); var adapter = new UserAdapter(_repositoryMock.Object); const int expectedCount = 3; //Act var result = adapter.Read(); var actualCount = result.ToList().Count; //Assert Assert.IsTrue(expectedCount == actualCount); }
public async Task Create_ReturnsId_NewId() { // Arrange var mockSet = new Mock<DbSet<StoredUser>>(); var mockContext = new Mock<IAutoSysContext>(); mockContext.Setup(m => m.Users).Returns(mockSet.Object); var user = new StoredUser {Name = "Steven", MetaData = "Validator"}; // Act var service = new DbRepository<StoredUser>(mockContext.Object); var id = await service.Create(user); // Assert Assert.AreEqual(user.Id, id); // True for EF but not for interface }
public void Create_SaveChanges_IsCalled() { var user = new StoredUser(); var id = _repository.Create(user); _context.Verify(r => r.SaveChangesAsync(), Times.Once); }
public async Task Update_SetAttachUser_IsCalled() { // Arrange var user = new StoredUser {Id = 1, Name = "User", MetaData = "Validator"}; // Act await _repository.UpdateIfExists(user); // Assert _context.Verify(c => c.Attach(user), Times.Once); }