public async Task Handler_Gets_Next_Page_Of_Books() { var expectedBook = _fixture .Build <BookRecord>() .With(book => book.Author, "Rucka") .With(book => book.Title, "Wonder Woman") .With(book => book.User, _testQuery.User) .With(book => book.UserId, _testQuery.User.Id) .Create(); var unexpectedBook = _fixture .Build <BookRecord>() .With(book => book.Author, "Rucka") .With(book => book.Title, "Old Guard") .With(book => book.User, _testQuery.User) .With(book => book.UserId, _testQuery.User.Id) .Create(); await _context.BookRecords.AddAsync(unexpectedBook); await _context.BookRecords.AddAsync(expectedBook); await _context.SaveChangesAsync(); var query = new BookListGetQuery(1, 1, _testQuery.SearchQuery, _testQuery.User); var result = await _handler.Handle(query); result.Books.First().Title.Should().Be(expectedBook.Title); }
public async Task Handler_Returns_Total_Books() { await InitializeRecords(); var count = await _context.Books.CountAsync(); var query = new BookListGetQuery(10, 0, _testQuery.SearchQuery, null); var result = await _handler.Handle(query); result.TotalCount.Should().Be(count); }
public async Task Handler_Returns_Requested_Count() { await _context.BookRecords.AddAsync(_testRecord); await InitializeRecords(); var request = new BookListGetQuery(1, 0, _testQuery.SearchQuery, _testQuery.User); var result = await _handler.Handle(request); result.Books.Should().HaveCount(1); }
public async Task Handler_Returns_Records_When_Search_Query_Is_Empty() { await _context.BookRecords.AddAsync(_testRecord); await InitializeRecords(); var request = new BookListGetQuery(1, 0, string.Empty, _testQuery.User); var result = await _handler.Handle(request); result.Books.Should().NotBeEmpty(); }
public BookListGetQueryHandlerTests() { _fixture = new Fixture(); _fixture.Behaviors.Add(new OmitOnRecursionBehavior()); _context = InitializeDatabase(); _bookRecords = _fixture.Create <IEnumerable <BookRecord> >(); _testQuery = new BookListGetQuery(69, 0, string.Empty, _fixture.Create <ApplicationUser>()); _testRecord = _fixture .Build <BookRecord>() .With(book => book.User, _testQuery.User) .With(book => book.UserId, _testQuery.User.Id) .Create(); _handler = new BookListGetQueryHandler(_context); }
public async Task Handler_Returns_Record_With_Query_For_Title() { var record = _fixture .Build <BookRecord>() .With(b => b.Title, "Wonder Woman") .Create(); await _context.BookRecords.AddAsync(record); await InitializeRecords(); var request = new BookListGetQuery(1, 0, record.Title, null); var result = await _handler.Handle(request); result.Books.Should().Contain(b => b.Title == record.Title); result.TotalCount.Should().Be(request.ItemCount); }