mirror of
https://github.com/azaion/satellite-provider.git
synced 2026-06-27 08:31:13 +00:00
[AZ-1113] Cycle 10 closeout: docs, perf harness, security
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -133,8 +133,12 @@ public static class CreateRouteValidationTests
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-809 missing id");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-809 missing id");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "id", label: "AZ-809 missing id");
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-809 missing id",
|
||||
expectedErrorPath: "$",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `id` rejected with HTTP 400 (no silent coercion)");
|
||||
}
|
||||
@@ -431,8 +435,12 @@ public static class CreateRouteValidationTests
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-809 missing requestMaps");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-809 missing requestMaps");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "requestMaps", label: "AZ-809 missing requestMaps");
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-809 missing requestMaps",
|
||||
expectedErrorPath: "$",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `requestMaps` rejected");
|
||||
}
|
||||
|
||||
@@ -113,8 +113,12 @@ public static class RegionRequestValidationTests
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-808 missing id");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-808 missing id");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "id", label: "AZ-808 missing id");
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-808 missing id",
|
||||
expectedErrorPath: "$",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `id` rejected with HTTP 400 (no silent coercion)");
|
||||
}
|
||||
@@ -151,8 +155,12 @@ public static class RegionRequestValidationTests
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-808 missing lat");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-808 missing lat");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "lat", label: "AZ-808 missing lat");
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-808 missing lat",
|
||||
expectedErrorPath: "$",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `lat` rejected with HTTP 400");
|
||||
}
|
||||
@@ -190,8 +198,12 @@ public static class RegionRequestValidationTests
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-808 missing lon");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-808 missing lon");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "lon", label: "AZ-808 missing lon");
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-808 missing lon",
|
||||
expectedErrorPath: "$",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `lon` rejected with HTTP 400");
|
||||
}
|
||||
@@ -229,8 +241,12 @@ public static class RegionRequestValidationTests
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-808 missing sizeMeters");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-808 missing sizeMeters");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "sizeMeters", label: "AZ-808 missing sizeMeters");
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-808 missing sizeMeters",
|
||||
expectedErrorPath: "$",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `sizeMeters` rejected with HTTP 400");
|
||||
}
|
||||
@@ -268,8 +284,12 @@ public static class RegionRequestValidationTests
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-808 missing zoomLevel");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-808 missing zoomLevel");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "zoomLevel", label: "AZ-808 missing zoomLevel");
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-808 missing zoomLevel",
|
||||
expectedErrorPath: "$",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `zoomLevel` rejected with HTTP 400");
|
||||
}
|
||||
@@ -307,8 +327,12 @@ public static class RegionRequestValidationTests
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-808 missing stitchTiles");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-808 missing stitchTiles");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "stitchTiles", label: "AZ-808 missing stitchTiles");
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-808 missing stitchTiles",
|
||||
expectedErrorPath: "$",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `stitchTiles` rejected with HTTP 400");
|
||||
}
|
||||
|
||||
@@ -197,11 +197,15 @@ public static class TileInventoryValidationTests
|
||||
var response = await PostJsonAsync(httpClient, body);
|
||||
var problem = await ProblemDetailsAssertions.ReadProblemDetailsAsync(response, "AZ-796 missing z");
|
||||
|
||||
// Assert
|
||||
ProblemDetailsAssertions.AssertValidationProblem(problem, expectedStatus: 400, label: "AZ-796 missing z");
|
||||
ProblemDetailsAssertions.AssertErrorsContainsMention(problem, expectedMention: "z", label: "AZ-796 missing z");
|
||||
// Assert — JsonRequired surfaces parent path `tiles[0]` with static deserializer message (AZ-1113).
|
||||
ProblemDetailsAssertions.AssertValidationProblem(
|
||||
problem,
|
||||
expectedStatus: 400,
|
||||
label: "AZ-796 missing z",
|
||||
expectedErrorPath: "tiles[0]",
|
||||
expectedErrorContains: "The field value is invalid.");
|
||||
|
||||
Console.WriteLine(" ✓ Missing `z` rejected with errors map mentioning the field");
|
||||
Console.WriteLine(" ✓ Missing `z` rejected with errors[\"tiles[0]\"] and sanitized message");
|
||||
}
|
||||
|
||||
private static async Task MissingXAndY_Returns400(HttpClient httpClient)
|
||||
|
||||
Reference in New Issue
Block a user