def cancel(self, orderNumbers, account=None): """ Cancels an order you have placed in a given market. Requires only the "orderNumbers". An order number takes the form ``1.7.xxx``. :param str orderNumbers: The Order Object ide of the form ``1.7.xxxx`` """ if not account: if "default_account" in config: account = config["default_account"] if not account: raise ValueError("You need to provide an account") account = Account(account, full=False, bitshares_instance=self) if not isinstance(orderNumbers, (list, set)): orderNumbers = set(orderNumbers) op = [] for order in orderNumbers: op.append( operations.Limit_order_cancel( **{ "fee": { "amount": 0, "asset_id": "1.3.0" }, "fee_paying_account": account["id"], "order": order, "extensions": [], "prefix": self.rpc.chain_params["prefix"] })) return self.finalizeOp(op, account["name"], "active")
def test_limit_order_cancel(self): self.op = operations.Limit_order_cancel(**{ "fee": {"amount": 0, "asset_id": "1.3.0" }, "fee_paying_account": "1.2.104", "order": "1.7.51840", "extensions": [] }) self.cm = ("f68585abf4dce7c8045701020000000000000000006880950300000" "11f3fb754814f3910c1a8845486b86057d2b4588ae559b4c3810828" "c0d4cbec0e5b23517937cd7e0cc5ee8999d0777af7fe56d3c4b2e58" "7421bfb7400d4efdae97a") self.doit()
def test_limit_order_cancel(self): op = operations.Limit_order_cancel( **{ "fee": { "amount": 0, "asset_id": "1.3.0" }, "fee_paying_account": "1.2.104", "order": "1.7.51840", "extensions": [] }) ops = [Operation(op)] tx = Signed_Transaction(ref_block_num=ref_block_num, ref_block_prefix=ref_block_prefix, expiration=expiration, operations=ops) tx = tx.sign([wif], chain=prefix) tx.verify([PrivateKey(wif).pubkey], "BTS") txWire = hexlify(bytes(tx)).decode("ascii") compare = ("f68585abf4dce7c8045701020000000000000000006880950300000" "11f3fb754814f3910c1a8845486b86057d2b4588ae559b4c3810828" "c0d4cbec0e5b23517937cd7e0cc5ee8999d0777af7fe56d3c4b2e58" "7421bfb7400d4efdae97a") self.assertEqual(compare[:-130], txWire[:-130])