public static <T> T run(Work<T> work) { return ObjectifyService.run(work); } }
@Test public void accept() { String token = requestTransfer(); ObjectifyService.run(new VoidWork() { @Override public void vrun() { Response response = approvalResource.accept(uri, token); Response.Status status = Response.Status.fromStatusCode(response.getStatus()); // Make sure we're redirected if (status != Response.Status.SEE_OTHER) { throw new AssertionError("Could not accept and execute database transfer: { " + status + " : " + response.getEntity() + " }"); } } }); }
@Test public void startTransfer() { ObjectifyService.run(new VoidWork() { @Override public void vrun() { RequestTransfer request = buildRequest(); Response response = resource.requestTransfer(alex, request); Response.Status status = Response.Status.fromStatusCode(response.getStatus()); if (status != Response.Status.OK) { throw new AssertionError("Could not generate request: { " + status + " }"); } Database database = em.find(Database.class, databaseId); String token = database.getTransferToken(); TransferAuthorized transfer = new TransferAuthorized(alex.getId(), bavon.getId(), databaseId, token); response = resource.startTransfer(uri, authTokenProvider, transfer); status = Response.Status.fromStatusCode(response.getStatus()); // Make sure we redirect if (status != Response.Status.SEE_OTHER) { throw new AssertionError("Could not start transfer: { " + status + ": " + response.getEntity() + " }"); } database = em.find(Database.class, databaseId); // Make sure database has transferred to new owner and token is nulled assertTrue(database.getOwner().getId() == bavon.getUserId()); assertTrue(database.getTransferToken() == null); assertTrue(database.getTransferUser() == null); assertTrue(database.getTransferRequestDate() == null); } }); }
ObjectifyService.run(new VoidWork() { @Override public void vrun() {