Skip to content

Commit 4fb0557

Browse files
authored
fix: add missing schema registration for profiles (#5872)
1 parent 5ec2812 commit 4fb0557

3 files changed

Lines changed: 21 additions & 1 deletion

File tree

extensions/common/api/management-api-schema-validator/src/main/java/org/eclipse/edc/connector/api/management/schema/ManagementApiSchemaValidatorExtension.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@ public class ManagementApiSchemaValidatorExtension implements ServiceExtension {
122122
put("AssociateDataspaceProfile", V4.ASSOCIATE_DATASPACE_PROFILE_CONTEXT);
123123
put("DiscoveryRequest", V4.DISCOVERY_REQUEST);
124124
put("DcpScope", V4.DCP_SCOPE);
125+
put("DataspaceProfile", V4.DATASPACE_PROFILE_CONTEXT);
125126
}
126127
};
127128

extensions/common/api/management-api-schema-validator/src/main/resources/schema/management/v4/dataspace-profile-schema.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@
4040
},
4141
"required": [
4242
"version",
43-
"path",
4443
"binding",
4544
"namespace"
4645
]

system-tests/management-api/management-api-test-runner/src/test/java/org/eclipse/edc/test/e2e/managementapi/v5/DataspaceProfileApiV5EndToEndTest.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,26 @@ void delete_shouldReturnNotFound_whenMissing(ManagementEndToEndV5TestContext con
136136
.statusCode(404);
137137
}
138138

139+
@Test
140+
void create_shouldReturnBadRequest_whenSchemaInvalid(ManagementEndToEndV5TestContext context, OauthServer authServer) {
141+
var token = authServer.createAdminToken();
142+
143+
// missing the required "protocol" object, so the schema validation must reject it
144+
var invalidProfile = createObjectBuilder()
145+
.add(CONTEXT, createArrayBuilder().add(EDC_CONNECTOR_MANAGEMENT_CONTEXT_V2))
146+
.add(TYPE, "DataspaceProfile")
147+
.add("name", "invalid-profile")
148+
.build();
149+
150+
context.baseRequest(token)
151+
.contentType(ContentType.JSON)
152+
.body(invalidProfile)
153+
.post("/v5beta/dataspaceprofiles")
154+
.then()
155+
.log().ifValidationFails()
156+
.statusCode(400);
157+
}
158+
139159
private JsonObject profileJson(String name) {
140160
return createObjectBuilder()
141161
.add(CONTEXT, createArrayBuilder().add(EDC_CONNECTOR_MANAGEMENT_CONTEXT_V2))

0 commit comments

Comments
 (0)