public async Task CheckThatUserCanActivateBonus() { var mockSet = new Mock <DbSet <PromoActivation> >(); var dbContextMock = new Mock <IApplicationDbContext>(); dbContextMock.Setup(m => m.PromoActivations).Returns(mockSet.Object); repositoryMock = new Mock <IRepository>(); var systemUnderTest = new Promo.Infrastructure.Services.Repository(dbContextMock.Object); repositoryMock.Setup(x => x.ActivateBonus(It.IsAny <int>(), It.IsAny <int>())) .ReturnsAsync(new GenericAPIResponse { ResponseCode = "00", ResponseDescription = "Request Processsed Successfully" }); var result = await systemUnderTest.ActivateBonus(1, 1); Assert.True(result.ResponseCode == "00"); }
public async Task CheckThatUserCanGetServices() { var services = GetPaginatedServices(); var queryableService = services.AsQueryable(); var mockSet = new Mock <DbSet <Service> >(); mockSet.As <IDbAsyncEnumerable <Service> >() .Setup(m => m.GetAsyncEnumerator()) .Returns(new TestDbAsyncEnumerator <Service>(queryableService.GetEnumerator())); mockSet.As <IQueryable <Service> >() .Setup(m => m.Provider) .Returns(new TestDbAsyncQueryProvider <Service>(queryableService.Provider)); mockSet.As <IQueryable <Service> >().Setup(m => m.Expression).Returns(queryableService.Expression); mockSet.As <IQueryable <Service> >().Setup(m => m.ElementType).Returns(queryableService.ElementType); mockSet.As <IQueryable <Service> >().Setup(m => m.GetEnumerator()).Returns(queryableService.GetEnumerator()); var dbContextMock = new Mock <IApplicationDbContext>(); dbContextMock.Setup(c => c.Services).Returns(mockSet.Object); repositoryMock = new Mock <IRepository>(); var systemUnderTest = new Promo.Infrastructure.Services.Repository(dbContextMock.Object); repositoryMock.Setup(x => x.GetServices(It.IsAny <int>(), It.IsAny <int>())) .ReturnsAsync(new GenericAPIResponse <PaginatedList <Service> > { ResponseCode = "00", ResponseDescription = "Request Processsed Successfully" }); //Data = services }); var result = await systemUnderTest.GetServices(1, 1); Assert.True(result.ResponseCode == "00"); Assert.True(result.Data == services); }
public async Task CheckThatUserCanLogin() { var mockSet = new Mock <DbSet <User> >(); var dbContextMock = new Mock <IApplicationDbContext>(); dbContextMock.Setup(m => m.Users).Returns(mockSet.Object); var user = GetUser(); repositoryMock = new Mock <IRepository>(); var systemUnderTest = new Promo.Infrastructure.Services.Repository(dbContextMock.Object); repositoryMock.Setup(x => x.AuthenticateUser(It.IsAny <AuthenticateUserRequest>())) .ReturnsAsync(new GenericAPIResponse <AuthenticateUserResponse> { ResponseCode = "00", ResponseDescription = "Request Processsed Successfully", Data = user, Token = "xyzToken" }); var result = await systemUnderTest.AuthenticateUser(new AuthenticateUserRequest { Username = "******", Password = "******" }); Assert.True(result.ResponseCode == "00"); Assert.True(result.Data == user); }