public void GetMemberByLoginTest() { //Arrange var repo = new FakeMemberRepository(); var member1 = new Member() { LoginName = "Spooky", Password = "******", FirstName = "Fox", LastName = "Mulder", Email = "*****@*****.**" }; repo.AddMember(member1); var member2 = new Member() { LoginName = "Superman", Password = "******", FirstName = "Clark", LastName = "Kent", Email = "*****@*****.**" }; repo.AddMember(member2); //Act repo.GetMemberbyLoginName("Superman"); repo.GetMemberbyLoginName("Spooky"); //Assert Assert.AreSame(member1, repo.Members[0]); Assert.AreSame(member2, repo.Members[1]); Assert.AreEqual(member1, repo.Members[0]); Assert.AreEqual(member2, repo.Members[1]); Assert.AreNotEqual(member1, repo.Members[1]); Assert.AreNotEqual(member2, repo.Members[0]); }
public void CanGetMemberByEmail() { //Arrange FakeMemberRepository repo = new FakeMemberRepository(); MemberController controller = new MemberController(repo); string testEmail = "*****@*****.**"; //Act Member member = controller.MemberByEmail(testEmail).ViewData.Model as Member; //Assert Assert.Equal(repo.GetMemberByEmail(testEmail).Email, member.Email); Assert.Equal(repo.GetMemberByEmail(testEmail).Name, member.Name); }
public MessageControllerTest(ITestOutputHelper output) { this.output = output; lookupRepo = new FakeLookupRepository(); logger = new DivineLogger<FakeDataStore>(new FakeDataStore()); cache = new MemoryCache(new MemoryCacheOptions()); msgService = new FakeCommunicationService(); var mockContext = new MockContext<IRepository<Member>>(); membersRepo = new FakeMemberRepository(mockContext); var repositories = new DivineRepositories(attendanceRepo, lookupRepo, membersRepo, msgRepo); //divineBot = new TextDivineBot(repositories, msgService); mockContext.Arrange(x => (x.GetAllAsync())).Returns(Task.FromResult(membersList.AsQueryable())); messageCtrl = new MessageController(repositories, msgService, cache, logger, null); }
public void CanGetMembers() { //Arrange FakeMemberRepository repo = new FakeMemberRepository(); MemberController controller = new MemberController(repo); //Act List <Member> members = controller.Index().ViewData.Model as List <Member>; //Assert Assert.Equal(repo.GetAllMembers()[0].Name, members[0].Name); Assert.Equal(repo.GetAllMembers()[0].Email, members[0].Email); Assert.Equal(repo.GetAllMembers()[1].Name, members[1].Name); Assert.Equal(repo.GetAllMembers()[1].Email, members[1].Email); }
public async Task GetMemberById_WithZeroAndNegativeId_ReturnsError(int id) { //Arrange var mockContext = new MockContext<IRepository<Member>>(); membersRepo = new FakeMemberRepository(mockContext); var controller = new MembersController(new DivineRepositories(null, lookupRepo, membersRepo, null), logger, null, null); //Act var result = await controller.Get(id); //Assert mockContext.Assert(m => m.GetByIdAsync(The<int>.IsAnyValue), Invoked.Never); Assert.NotNull(result); Assert.Equal(result.StatusCode, (int)HttpStatusCode.BadRequest); Assert.IsType<string>(result.Value); Assert.Contains("error", result.Value.ToString(), StringComparison.OrdinalIgnoreCase); }
public async Task Get_ReturnsBadRequest() { //Arrange var mockContext = new MockContext<IRepository<Member>>(); membersRepo = new FakeMemberRepository(mockContext); var controller = new MembersController(new DivineRepositories(null, lookupRepo, membersRepo, null), logger, null, null); mockContext.Arrange(x => (x.GetAllAsync())).Throws(() => new NullReferenceException("null Data")); //Act var result = await controller.Get(); //Assert Assert.NotNull(result); Assert.Equal(result.StatusCode , (int) HttpStatusCode.BadRequest); Assert.IsType<string>(result.Value); Assert.Contains("error",result.Value.ToString(), StringComparison.OrdinalIgnoreCase); }
public void AddMemberTest() { //Arrange var repo = new FakeMemberRepository(); var member1 = new Member(); var member2 = new Member(); //ACT repo.AddMember(member1); repo.AddMember(member2); //Assert Assert.AreSame(member1, repo.Members[0]); Assert.AreSame(member2, repo.Members[1]); Assert.AreEqual(member1, repo.Members[0]); Assert.AreEqual(member2, repo.Members[1]); Assert.AreNotEqual(member1, repo.Members[1]); Assert.AreNotEqual(member2, repo.Members[0]); }
public async Task Get_ReturnsNoException() { //Arrange var mockContext = new MockContext<IRepository<Member>>(); membersRepo = new FakeMemberRepository(mockContext); var controller = new MembersController(new DivineRepositories(null, lookupRepo, membersRepo, null),logger, null, null); var data = new List<Member> { new Member { Id = 1 } }.AsQueryable(); mockContext.Arrange(x => (x.GetAllAsync())).Returns(Task.FromResult(data)); //ACT var result = await controller.Get(); //Assert Assert.NotNull(result); Assert.IsType<List<Member>>(result.Value); Assert.Equal(data.Count(), ((List<Member>)result.Value).Count()); }
public async Task SearchMember_WithNullParameter_ReturnsError() { //Arrange var mockContext = new MockContext<IRepository<Member>>(); membersRepo = new FakeMemberRepository(mockContext); var controller = new MembersController(new DivineRepositories(null, lookupRepo, membersRepo, null), logger, null, null); var searchData = default(SearchMember); //null //Act var result = await controller.SearchMembers(searchData); //Assert mockContext.Assert(m => m.GetAllAsync(), Invoked.Never); Assert.NotNull(result); Assert.Equal(result.StatusCode, (int)HttpStatusCode.BadRequest); Assert.IsType<string>(result.Value); Assert.Contains("error", result.Value.ToString(), StringComparison.OrdinalIgnoreCase); }
public async Task GetMemberById_WithValidPoisitiveId_ReturnsSuccess() { //Arrange var mockContext = new MockContext<IRepository<Member>>(); membersRepo = new FakeMemberRepository(mockContext); var controller = new MembersController(new DivineRepositories(null, lookupRepo, membersRepo, null), logger, null, null); mockContext.Arrange(m => m.GetByIdAsync(The<int>.IsAnyValue)).Returns(Task.FromResult(new Member { Id=1 })); var id = 1; //Act var result = await controller.Get(id); //Assert mockContext.Assert(m => m.GetByIdAsync(id), Invoked.Once); Assert.NotNull(result); Assert.IsType<Member>(result.Value); Assert.Equal(((Member)result.Value).Id, id); }