} else if (origin_id != null) { HashId originHashId = HashId.withDigest(origin_id); List<byte[]> storedRevisions = node.getLedger().getContractsInStorageByOrigin(slotContract.getId(), originHashId); if (storedRevisions.size() == 1) { res.set("contract", storedRevisions.get(0));
Binder slotInfo = client.querySlotInfo(slotContract.getId()); System.out.println("slot info is null: " + (slotInfo == null)); assertNull(slotInfo); byte[] simpleContractBytes = client.queryContract(slotContract.getId(), null, simpleContract.getId()); System.out.println("simpleContractBytes (by contractId): " + simpleContractBytes); assertEquals(false, Arrays.equals(simpleContract.getPackedTransaction(), simpleContractBytes)); simpleContractBytes = client.queryContract(slotContract.getId(), simpleContract.getOrigin(), null); System.out.println("simpleContractBytes (by originId): " + simpleContractBytes); assertEquals(false, Arrays.equals(simpleContract.getPackedTransaction(), simpleContractBytes)); itemResult = client.getState(slotContract.getId()); System.out.println("slot : " + itemResult); assertEquals(ItemState.APPROVED, itemResult.state); slotInfo = client.querySlotInfo(slotContract.getId()); System.out.println("slot info size: " + slotInfo.size()); assertNotNull(slotInfo); simpleContractBytes = client.queryContract(slotContract.getId(), null, simpleContract.getId()); System.out.println("simpleContractBytes (by contractId) length: " + simpleContractBytes.length); assertEquals(true, Arrays.equals(simpleContract.getPackedTransaction(), simpleContractBytes)); simpleContractBytes = client.queryContract(slotContract.getId(), simpleContract.getOrigin(), null); System.out.println("simpleContractBytes (by originId) length: " + simpleContractBytes.length); assertEquals(true, Arrays.equals(simpleContract.getPackedTransaction(), simpleContractBytes));
Parcel parcel = ContractsService.createPayingParcel(slotContract.getTransactionPack(), stepaU, 1, 100, new HashSet<>(Arrays.asList(TestKeys.privateKey(0))), false); testSpace.client.registerParcelWithState(parcel.pack(), 5000); itemResult = testSpace.client.getState(slotContract.getId()); System.out.println("slot : " + itemResult); assertEquals(ItemState.APPROVED, itemResult.state); " \"listenPort\": \"8880\",\n" + " \"routes\": [\n" + " {\"endpoint\": \"/contract1/getVersion\", \"handlerName\": \"httpHandler_getVersion\", \"scriptName\": \"client script.js\", \"slotId\":\""+slotContract.getId().toBase64String()+"\", \"originId\":\""+contractServer.getOrigin().toBase64String()+"\"}\n" + " ]\n" + "}\n";
Parcel parcel = ContractsService.createPayingParcel(slotContract.getTransactionPack(), stepaU, 1, 100, new HashSet<>(Arrays.asList(TestKeys.privateKey(0))), false); testSpace.client.registerParcelWithState(parcel.pack(), 5000); itemResult = testSpace.client.getState(slotContract.getId()); System.out.println("slot : " + itemResult); assertEquals(ItemState.APPROVED, itemResult.state); routes.addNewRoute("/contract1/getVersion", "httpHandler_getVersion", contractServer, "client script.js", null, slotContract.getId()); JSApiHttpServer httpServer = new JSApiHttpServer(routes, new JSApiExecOptions(), hashId -> { try {
assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getNew().get(0).getId(), 8000).state); ItemResult itemResult = node.waitItem(slotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onCreatedResult").getString("status", null)); assertNotNull(networkNode.getLedger().getEnvironment(slotContract.getId())); assertNotNull(node.getLedger().getEnvironment(slotContract.getId()));
assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getNew().get(0).getId(), 8000).state); ItemResult itemResult = node.waitItem(slotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onCreatedResult").getString("status", null)); assertNotNull(node.getLedger().getEnvironment(slotContract.getId())); assertEquals(ItemState.APPROVED, node.waitItem(slotContract2.getNew().get(0).getId(), 8000).state); itemResult = node.waitItem(slotContract2.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onCreatedResult").getString("status", null)); assertNotNull(node.getLedger().getEnvironment(slotContract2.getId()));
ItemResult itemResult = node.waitItem(slotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onCreatedResult").getString("status", null)); assertNotNull(networkNode.getLedger().getEnvironment(slotContract.getId())); assertNotNull(node.getLedger().getEnvironment(slotContract.getId())); itemResult = node.waitItem(refilledSlotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onUpdateResult").getString("status", null)); assertNull(networkNode.getLedger().getEnvironment(slotContract.getId())); assertNotNull(networkNode.getLedger().getEnvironment(refilledSlotContract.getId())); assertEquals(ItemState.REVOKED, node.waitItem(slotContract.getId(), 8000).state); assertNull(node.getLedger().getEnvironment(slotContract.getId())); assertNotNull(node.getLedger().getEnvironment(refilledSlotContract.getId())); itemResult = node.waitItem(refilledSlotContract2.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onUpdateResult").getString("status", null)); assertNull(networkNode.getLedger().getEnvironment(slotContract.getId())); assertNull(networkNode.getLedger().getEnvironment(refilledSlotContract.getId())); assertNotNull(networkNode.getLedger().getEnvironment(refilledSlotContract2.getId()));
ItemResult itemResult = node.waitItem(slotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onCreatedResult").getString("status", null)); assertNotNull(networkNode.getLedger().getEnvironment(slotContract.getId())); assertNotNull(node.getLedger().getEnvironment(slotContract.getId())); itemResult = node.waitItem(refilledSlotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onUpdateResult").getString("status", null)); assertNull(networkNode.getLedger().getEnvironment(slotContract.getId())); assertNotNull(networkNode.getLedger().getEnvironment(refilledSlotContract.getId())); assertEquals(ItemState.REVOKED, node.waitItem(slotContract.getId(), 8000).state); assertNull(node.getLedger().getEnvironment(slotContract.getId())); assertNotNull(node.getLedger().getEnvironment(refilledSlotContract.getId())); itemResult = node.waitItem(refilledSlotContract2.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onUpdateResult").getString("status", null)); assertNull(networkNode.getLedger().getEnvironment(slotContract.getId())); assertNull(networkNode.getLedger().getEnvironment(refilledSlotContract.getId())); assertNotNull(networkNode.getLedger().getEnvironment(refilledSlotContract2.getId())); assertEquals(ItemState.REVOKED, node.waitItem(slotContract.getId(), 8000).state); assertNull(node.getLedger().getEnvironment(slotContract.getId())); assertNull(node.getLedger().getEnvironment(refilledSlotContract.getId()));
assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getId(), 8000).state); assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getNew().get(0).getId(), 8000).state); ItemResult itemResult = node.waitItem(slotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onCreatedResult").getString("status", null)); itemResult = node.waitItem(refilledSlotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onUpdateResult").getString("status", null)); itemResult = node.waitItem(refilledSlotContract.getId(), 8000); assertEquals(ItemState.REVOKED, itemResult.state); restoredPackedData = networkNode.getLedger().getContractInStorage(simpleContract2.getId()); assertNull(restoredPackedData); restoredPackedData = networkNode.getLedger().getContractInStorage(slotContract.getId()); assertNull(restoredPackedData); restoredPackedData = networkNode.getLedger().getContractInStorage(refilledSlotContract.getId()); assertNull(restoredPackedData); assertEquals(0, networkNode.getLedger().getSubscriptionEnviromentIds(slotContract.getId()).size()); assertEquals(0, networkNode.getLedger().getSubscriptionEnviromentIds(refilledSlotContract.getId()).size()); assertNull(networkNode.getLedger().getEnvironment(slotContract.getId())); assertNull(networkNode.getLedger().getEnvironment(refilledSlotContract.getId())); restoredPackedData = node.getLedger().getContractInStorage(simpleContract2.getId()); assertNull(restoredPackedData); restoredPackedData = node.getLedger().getContractInStorage(slotContract.getId()); assertNull(restoredPackedData);
assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getId(), 8000).state); assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getNew().get(0).getId(), 8000).state);
assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getNew().get(0).getId(), 8000).state); ItemResult itemResult = node.waitItem(slotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onCreatedResult").getString("status", null));
assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getNew().get(0).getId(), 8000).state); ItemResult itemResult = node.waitItem(slotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onCreatedResult").getString("status", null)); itemResult = node.waitItem(refilledSlotContract.getId(), 8000); assertEquals("ok", itemResult.extraDataBinder.getBinder("onUpdateResult").getString("status", null));
assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getId(), 8000).state); assertEquals(ItemState.APPROVED, node.waitItem(slotContract.getNew().get(0).getId(), 8000).state);