public void ShouldReturnNotFound_WhenPathIdNotFound() { var query = new GetThemeQuery() { PathId = 99999, ModuleId = 1, Id = 1 }; FluentActions.Invoking(() => SendAsync(query)).Should().ThrowAsync <NotFoundException>(); }
public void GetOne_ShouldThrow_WhenCanceled() { var cts = new CancellationTokenSource(); cts.Cancel(); var query = new GetThemeQuery() { PathId = 1, ModuleId = 1, Id = 1 }; FluentActions.Invoking(() => SendAsync(query, cts.Token)).Should().ThrowAsync <TaskCanceledException>(); }
public async Task GetOne_ShouldReturnTheme() { var path = await AddAsync( new Path { Title = "Some Path", Key = "some-path", Description = "Some Path Description" }); var module = await SendAsync(new CreateModule { Key = "module-key", Title = "New Module Module", Description = "New Module Description", Necessity = Necessity.MustKnow, Tags = new List <string> { "Tag1", "Tag2", "Tag3" } }); var theme = await AddAsync(new Theme { Title = "New Theme", ModuleId = module.Id, Description = "New Theme Description", Necessity = Necessity.MustKnow, Complexity = Complexity.Beginner, Tags = new List <string> { "Theme1", "ThemeTag2", "Tag3" }, Order = 2, Section = new Section { ModuleId = module.Id, Title = "First Section" } }); var query = new GetThemeQuery() { PathId = path.Id, ModuleId = module.Id, Id = theme.Id }; var createdTheme = await SendAsync(query); createdTheme.Id.Should().Be(theme.Id); createdTheme.Title.Should().NotBeEmpty(); createdTheme.Description.Should().NotBeEmpty(); createdTheme.Section.Should().NotBeNull(); createdTheme.ModuleId.Should().Be(module.Id); createdTheme.Tags.Should().HaveCount(3); }