Add custom campaign roll composer
This commit is contained in:
@@ -75,6 +75,19 @@ public sealed class RollVisibilityApiTests : ApiTestBase
|
||||
var invalidVisibility = await playerClient.PostAsJsonAsync($"/api/skills/{skill.Id}/roll", new RollSkillRequest("hidden"));
|
||||
Assert.Equal(HttpStatusCode.BadRequest, invalidVisibility.StatusCode);
|
||||
|
||||
var customRoll = await PostAsync<CustomRollRequest, RollResult>(playerClient, $"/api/characters/{playerCharacter.Id}/custom-rolls", new("1D+2", "public"));
|
||||
Assert.Equal(Guid.Empty, customRoll.SkillId);
|
||||
|
||||
var customRollLogPage = await GetAsync<CampaignLogPage>(observerClient, $"/api/campaigns/{campaign.Id}/log/page");
|
||||
Assert.Equal(2, customRollLogPage.Entries.Length);
|
||||
Assert.Equal("Custom roll", customRollLogPage.Entries[1].SkillName);
|
||||
|
||||
var invalidCustomRollResponse = await playerClient.PostAsJsonAsync($"/api/characters/{playerCharacter.Id}/custom-rolls", new CustomRollRequest("bad", "public"));
|
||||
Assert.Equal(HttpStatusCode.BadRequest, invalidCustomRollResponse.StatusCode);
|
||||
var invalidCustomRoll = await invalidCustomRollResponse.Content.ReadFromJsonAsync<ApiError>();
|
||||
Assert.NotNull(invalidCustomRoll);
|
||||
Assert.Equal("invalid_expression", invalidCustomRoll.Code);
|
||||
|
||||
using var anonymousClient = factory.CreateClient(new() { AllowAutoRedirect = false });
|
||||
var unauthorizedCampaignCreate = await anonymousClient.PostAsJsonAsync("/api/campaigns", new CreateCampaignRequest("Nope", "d6"));
|
||||
Assert.Equal(HttpStatusCode.Unauthorized, unauthorizedCampaignCreate.StatusCode);
|
||||
|
||||
Reference in New Issue
Block a user