@Test
    void verifyMissingBackchannelEndpoint() {
        val request = getHttpRequestForEndpoint(OidcConstants.REGISTRATION_URL);
        val response = new MockHttpServletResponse();

        try (val webServer = new MockWebServer(org.springframework.http.HttpStatus.OK)) {
            webServer.responseBodyJson(List.of("https://client.example.org/callback", "https://client.example.org/callback2"));
            webServer.start();

            var registrationReq = """
    {
        "application_type": "web",
        "backchannel_token_delivery_mode": "ping",
        "default_acr_values": ["mfa-duo", "mfa-gauth"],
        "redirect_uris": ["https://client.example.org/callback", "https://client.example.org/callback2"],
        "contacts": ["ve7jtb@example.org", "mary@example.org"]
    }
""";
            assertEquals(HttpStatus.SC_BAD_REQUEST,
                controller.handleRequestInternal(registrationReq, request, response).getStatusCode().value());

            registrationReq = """
    {
        "application_type": "web",
        "backchannel_token_delivery_mode": "ping",
        "backchannel_client_notification_endpoint": "http://localhost:9811",
        "default_acr_values": ["mfa-duo", "mfa-gauth"],
        "redirect_uris": ["https://client.example.org/callback", "https://client.example.org/callback2"],
        "contacts": ["ve7jtb@example.org", "mary@example.org"]
    }
""";
            assertEquals(HttpStatus.SC_BAD_REQUEST,
                controller.handleRequestInternal(registrationReq, request, response).getStatusCode().value());
        }
    }
This is {@link OidcDynamicClientRegistrationEndpointControllerTests}.

@author Misagh Moayyed
@since 6.2.0
support/cas-server-support-oidc/src/test/java/org/apereo/cas/oidc/web/controllers/dynareg/OidcDynamicClientRegistrationEndpointControllerTests.java