public async Task Query_NotFound_Paginate_ReturnsNull() { var repo = new Mock <IRepository <TestClass> >(); repo.Setup(r => r.GetAll(It.IsAny <Pagination <TestClass> >())).ReturnsAsync(null as IEnumerable <TestClass>); var sr = new ServiceResponse <IEnumerable <TestClass> >(); var w = new ServiceResponseWrapper(sr); var p = new Pagination <TestClass>(); var res = await ServiceRepositoryExtensions.Query(repo.Object, r => r.GetAll(p), w); res.ShouldBeNull(); }
public async Task Query_Empty_Collection(IEnumerable <TestClass> dbData) { var repo = new Mock <IRepository <TestClass> >(); repo.Setup(r => r.GetAll(null)).ReturnsAsync(dbData); var sr = new ServiceResponse <IEnumerable <TestClass> >(); var w = new ServiceResponseWrapper(sr); var res = await ServiceRepositoryExtensions.Query(repo.Object, r => r.GetAll(null), w); res.ShouldBe(dbData); sr.Payload.ShouldBe(dbData); sr.Result.ShouldBe(ServiceResult.NotSet); sr.Message.ShouldBeNullOrEmpty(); }
public async Task Query_NotFound_SingleItem() { var repo = new Mock <IRepository <TestClass> >(); repo.Setup(r => r.GetById(It.IsAny <string>())).ReturnsAsync(null as TestClass); var sr = new ServiceResponse <TestClass>(); var w = new ServiceResponseWrapper(sr); var res = await ServiceRepositoryExtensions.Query(repo.Object, r => r.GetById("some-id"), w); res.ShouldBeNull(); sr.Payload.ShouldBeNull(); sr.Result.ShouldBe(ServiceResult.NotFound); sr.Message.ShouldNotBeNullOrEmpty(); }
public async Task Query_RepositoryThrows() { var repo = new Mock <IRepository <TestClass> >(); var ex = new Exception(); repo.Setup(r => r.GetById(It.IsAny <string>())).Throws(ex); var sr = new ServiceResponse <TestClass>(); var w = new ServiceResponseWrapper(sr); var res = await ServiceRepositoryExtensions.Query(repo.Object, r => r.GetById("some-id"), w); res.ShouldBeNull(); sr.Payload.ShouldBeNull(); sr.Result.ShouldBe(ServiceResult.Error); sr.Message.ShouldNotBeNullOrEmpty(); w.Exception.ShouldBe(ex); }
public async Task Command_RepositoryReturnsSavedObject() { var tc = new TestClass(); var repo = new Mock <IRepository <TestClass> >(); repo.Setup(r => r.Insert(It.IsAny <TestClass>())).ReturnsAsync(tc); var sr = new ServiceResponse <TestClass>(); var w = new ServiceResponseWrapper(sr); var res = await ServiceRepositoryExtensions.Command(repo.Object, r => r.Insert(tc), w); res.ShouldBe(tc); sr.Payload.ShouldBe(tc); sr.Result.ShouldBe(ServiceResult.NotSet); sr.Message.ShouldBeNullOrEmpty(); }
public async Task Command_RepositoryThrows() { var repo = new Mock <IRepository <TestClass> >(); var ex = new Exception(); repo.Setup(r => r.Insert(It.IsAny <TestClass>())).Throws(ex); var sr = new ServiceResponse <TestClass>(); var tc = new TestClass(); var w = new ServiceResponseWrapper(sr); var res = await ServiceRepositoryExtensions.Command(repo.Object, r => r.Insert(tc), w); res.ShouldBeNull(); sr.Payload.ShouldBeNull(); sr.Result.ShouldBe(ServiceResult.Error); sr.Message.ShouldNotBeNullOrEmpty(); w.Exception.ShouldBe(ex); }