@Test
public void hookRegistration_usesDefaultExpiryIfExpireAfterHeaderIsNegativeNumber(TestContext testContext) {

    // Initialize mock
    final int[] statusCodePtr = new int[]{ 0 };
    final String[] statusMessagePtr = new String[]{ null };
    final HttpServerRequest request;
    {  // Mock request
        final MultiMap requestHeaders = new CaseInsensitiveHeaders();
        // Do NOT set to -1. Because that would be a valid value representing 'infinite'.
        requestHeaders.set(ExpiryCheckHandler.EXPIRE_AFTER_HEADER, "-42");
        final Buffer requestBody = createMinimalHookBodyAsBuffer();
        request = createSimpleRequest(HttpMethod.PUT, "/gateleen/example/_hooks/listeners/http/my-service/my-hook",
                requestHeaders, requestBody, statusCodePtr, statusMessagePtr
        );
    }
    // Trigger work
    hookHandler.handle(request);
    // Assert request was ok
    testContext.assertEquals(200, statusCodePtr[0]);
    { // Assert expiration time has same length as a valid date (including time zone)
        final String storedHook = storage.getMockData().get(HOOK_ROOT_URI + "registrations/listeners/http+my-service+my-hook+gateleen+example");
        testContext.assertNotNull(storedHook);
        final String expirationTime = new JsonObject(storedHook).getString("expirationTime");
        testContext.assertNotNull(expirationTime);
        testContext.assertEquals("____-__-__T__:__:__.___+__:__".length(), expirationTime.length());
    }
}