public async Task Read_Category_ReturnsResultFromQuery(long categoryId, bool isNull) { // Arrange var query = new ReadCategoryQuery(categoryId); var databaseContextOptions = new DbContextOptionsBuilder <DatabaseContext>() .UseInMemoryDatabase("kb-pundit") .Options; var databaseContext = new DatabaseContext(databaseContextOptions); var categoryCommandHandler = new CategoryCommandHandler(databaseContext); var categoryQueryHandler = new CategoryQueryHandler(databaseContext); var circuitBreaker = new CircuitBreaker(TaskScheduler.Default, 5, TimeSpan.FromMilliseconds(10), TimeSpan.FromMilliseconds(1000)); var controller = new CategoryController(circuitBreaker, categoryCommandHandler, categoryQueryHandler); // Act var categoryResult = await controller.ReadCategoryAsync(query); // Assert Assert.AreEqual(isNull, categoryResult == null); }
public async Task <ReadCategoryQueryResult> ReadCategoryAsync( [FromQuery] ReadCategoryQuery query, CancellationToken cancellationToken = default(CancellationToken)) { return(await _categoryQueryHandler.ExecuteAsync(query, cancellationToken)); }