/** * Verifies that the addDevice method returns not implemented. * * @param ctx The vertx unit test context. */ @Test public void testAddDevice(final TestContext ctx) { // GIVEN an empty registry final CompleteBaseRegistrationService<ServiceConfigProperties> registrationService = newCompleteRegistrationService(); registrationService.setRegistrationAssertionFactory(RegistrationAssertionHelperImpl.forSigning(vertx, props)); // WHEN trying to add a new device registrationService.addDevice(Constants.DEFAULT_TENANT, "4711", new JsonObject(), ctx.asyncAssertSuccess(result -> { // THEN the response contain a JWT token with an empty result with status code 501. ctx.assertEquals(result.getStatus(), HttpURLConnection.HTTP_NOT_IMPLEMENTED); ctx.assertNull(result.getPayload()); })); }
/** * Verifies that the updateDevice method returns not implemented. * * @param ctx The vertx unit test context. */ @Test public void testUpdateDevice(final TestContext ctx) { // GIVEN an empty registry final CompleteBaseRegistrationService<ServiceConfigProperties> registrationService = newCompleteRegistrationService(); registrationService.setRegistrationAssertionFactory(RegistrationAssertionHelperImpl.forSigning(vertx, props)); // WHEN trying to update a device registrationService.updateDevice(Constants.DEFAULT_TENANT, "4711", new JsonObject(), ctx.asyncAssertSuccess(result -> { // THEN the response contain a JWT token with an empty result with status code 501. ctx.assertEquals(result.getStatus(), HttpURLConnection.HTTP_NOT_IMPLEMENTED); ctx.assertNull(result.getPayload()); })); }
/** * Verifies that the service cannot be started without either <em>signingSecret</em> or * <em>signingKeyPath</em> being set. * * @param ctx The vertx unit test context. */ @Test public void testStartupFailsIfNoRegistrationAssertionFactoryIsSet(final TestContext ctx) { // GIVEN a registry without an assertion factory being set final CompleteBaseRegistrationService<ServiceConfigProperties> registrationService = newCompleteRegistrationService(); // WHEN starting the service final Async startupFailure = ctx.async(); final Future<Void> startFuture = Future.future(); startFuture.setHandler(ctx.asyncAssertFailure(t -> startupFailure.complete())); registrationService.doStart(startFuture); // THEN startup fails startupFailure.await(); }
/** * Verifies that the registry returns 400 when issuing a request with an unsupported action. * * @param ctx The vert.x test context. */ @Test public void testProcessRequestFailsWithUnsupportedAction(final TestContext ctx) { // GIVEN an empty registry final CompleteBaseRegistrationService<ServiceConfigProperties> registrationService = newCompleteRegistrationService(); registrationService.setRegistrationAssertionFactory(RegistrationAssertionHelperImpl.forSigning(vertx, props)); registrationService .processRequest(EventBusMessage.forOperation("unknown-action")) .setHandler(ctx.asyncAssertFailure(t -> { ctx.assertEquals(HttpURLConnection.HTTP_BAD_REQUEST, ((ServiceInvocationException) t).getErrorCode()); })); }
/** * Verifies that the removeDevice method returns not implemented. * * @param ctx The vertx unit test context. */ @Test public void testRemoveDevice(final TestContext ctx) { // GIVEN an empty registry final CompleteBaseRegistrationService<ServiceConfigProperties> registrationService = newCompleteRegistrationService(); registrationService.setRegistrationAssertionFactory(RegistrationAssertionHelperImpl.forSigning(vertx, props)); // WHEN trying to remove a device registrationService.removeDevice(Constants.DEFAULT_TENANT, "4711", ctx.asyncAssertSuccess(result -> { // THEN the response contain a JWT token with an empty result with status code 501. ctx.assertEquals(result.getStatus(), HttpURLConnection.HTTP_NOT_IMPLEMENTED); ctx.assertNull(result.getPayload()); })); }
/** * Verifies that the getDevice method returns not implemented. * * @param ctx The vertx unit test context. */ @Test public void testGetDevice(final TestContext ctx) { // GIVEN an empty registry final CompleteBaseRegistrationService<ServiceConfigProperties> registrationService = newCompleteRegistrationService(); registrationService.setRegistrationAssertionFactory(RegistrationAssertionHelperImpl.forSigning(vertx, props)); // WHEN trying to get a device's data registrationService.getDevice(Constants.DEFAULT_TENANT, "4711", ctx.asyncAssertSuccess(result -> { // THEN the response contain a JWT token with an empty result with status code 501. ctx.assertEquals(result.getStatus(), HttpURLConnection.HTTP_NOT_IMPLEMENTED); ctx.assertNull(result.getPayload()); })); }