def test_witness(self, node_param): if node_param == "instance": set_shared_steem_instance(self.bts) o = Witness("gtg") self.assertIn(o.steem.rpc.url, self.urls) with self.assertRaises(RPCConnection): Witness("gtg", steem_instance=Steem(node="https://abc.d", autoconnect=False, num_retries=1)) else: set_shared_steem_instance( Steem(node="https://abc.d", autoconnect=False, num_retries=1)) stm = self.bts o = Witness("gtg", steem_instance=stm) self.assertIn(o.steem.rpc.url, self.urls) with self.assertRaises(RPCConnection): Witness("gtg")
def test_wallet(self, node_param): if node_param == "instance": set_shared_steem_instance(self.bts) o = Wallet() self.assertIn(o.steem.rpc.url, self.urls) with self.assertRaises(RPCConnection): o = Wallet(steem_instance=Steem( node="https://abc.d", autoconnect=False, num_retries=1)) o.steem.get_config() else: set_shared_steem_instance( Steem(node="https://abc.d", autoconnect=False, num_retries=1)) stm = self.bts o = Wallet(steem_instance=stm) self.assertIn(o.steem.rpc.url, self.urls) with self.assertRaises(RPCConnection): o = Wallet() o.steem.get_config()
def setUpClass(cls): cls.bts = Steem( node=get_steem_nodes(), nobroadcast=True, unsigned=True, data_refresh_time_seconds=900, keys={"active": wif, "owner": wif2, "memo": wif3}, num_retries=10) cls.account = Account("test", full=True, steem_instance=cls.bts)
def test_create_account_password(self): bts = Steem(node=get_steem_nodes(), nobroadcast=True, unsigned=True, data_refresh_time_seconds=900, keys={"active": wif, "owner": wif2, "memo": wif3}, num_retries=10) core_unit = "STM" name = ''.join(random.choice(string.ascii_lowercase) for _ in range(12)) key5 = PrivateKey() bts.txbuffer.clear() tx = bts.create_account( name, creator="test", # 1.2.7 password="******", additional_owner_keys=[format(key5.pubkey, core_unit)], additional_active_keys=[format(key5.pubkey, core_unit)], additional_posting_keys=[format(key5.pubkey, core_unit)], additional_owner_accounts=["test1"], # 1.2.0 additional_active_accounts=["test1"], storekeys=False, ) if isinstance(tx["operations"][0], list): self.assertEqual( tx["operations"][0][0], "account_create" ) op = tx["operations"][0][1] else: self.assertEqual( tx["operations"][0]["type"], "account_create_operation" ) op = tx["operations"][0]["value"] role = "active" self.assertIn( format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn( format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn( "test1", [x[0] for x in op[role]["account_auths"]]) role = "owner" self.assertIn( format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn( format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn( "test1", [x[0] for x in op[role]["account_auths"]]) self.assertEqual( op["creator"], "test")
def setUpClass(cls): nodelist = NodeList() nodelist.update_nodes(steem_instance=Steem(node=nodelist.get_nodes(exclude_limited=False), num_retries=10)) node_list = nodelist.get_nodes(exclude_limited=True) cls.stm = Steem( node=node_list, keys={"active": wif, "owner": wif, "memo": wif}, nobroadcast=True, num_retries=10 ) cls.steemit = Steem( node="https://api.steemit.com", nobroadcast=True, keys={"active": wif, "owner": wif, "memo": wif}, num_retries=10 ) set_shared_steem_instance(cls.stm) cls.stm.set_default_account("test")
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) set_shared_steem_instance(None) self.stm = Steem( node=get_node_list(appbase=False), nobroadcast=True, bundle=False, # Overwrite wallet to use this list of wifs only wif={"active": wif}, num_retries=10) self.bts = Steem(node=["wss://ws.golos.io"], keys={ "active": wif, "owner": wif, "posting": wif }, nobroadcast=True, num_retries=10)
def setUpClass(cls): nodelist = NodeList() nodes = nodelist.get_nodes(hive=True) nodelist.update_nodes(steem_instance=Steem(node=nodes, num_retries=10)) cls.bts = Steem( node=nodelist.get_nodes(hive=True), nobroadcast=True, keys={"active": wif}, num_retries=10 ) b = Blockchain(steem_instance=cls.bts) num = b.get_current_block_num() cls.start = num - 5 cls.stop = num # from getpass import getpass # self.bts.wallet.unlock(getpass()) set_shared_steem_instance(cls.bts)
def setUpClass(cls): nodelist = NodeList() nodelist.update_nodes(steem_instance=Steem(node=nodelist.get_nodes( normal=True, appbase=True), num_retries=10)) cls.bts = Steem(node=nodelist.get_nodes(appbase=False), nobroadcast=True, num_retries=10) cls.appbase = Steem(node=nodelist.get_nodes(normal=False, appbase=True), nobroadcast=True, use_condenser=False, num_retries=10) set_shared_steem_instance(cls.bts) cls.asset = Asset("SBD") cls.symbol = cls.asset["symbol"] cls.precision = cls.asset["precision"] cls.asset2 = Asset("STEEM")
def setUpClass(cls): nodelist = NodeList() nodelist.update_nodes(steem_instance=Steem( node=nodelist.get_nodes(exclude_limited=False), num_retries=10)) cls.bts = Steem(node=nodelist.get_nodes(exclude_limited=True), nobroadcast=True, unsigned=True, keys={"active": wif}, num_retries=10) cls.steemit = Steem(node="https://api.steemit.com", nobroadcast=True, unsigned=True, keys={"active": wif}, num_retries=10) # from getpass import getpass # self.bts.wallet.unlock(getpass()) set_shared_steem_instance(cls.bts) cls.bts.set_default_account("test")
def test_follow_posting_key(self): nodelist = NodeList() stm = Steem(node=self.nodes, keys=[self.posting_key], nobroadcast=True, expiration=120, num_retries=10) account = Account("beem", steem_instance=stm) account.follow("beem1")
def test_normal_appbase_switch(self): bts = Steem(node=[self.nodes[0], self.nodes_appbase[0]]) self.assertTrue(bts.chain_params['min_version'] == '0.19.5') self.assertFalse(bts.rpc.get_use_appbase()) self.assertTrue(isinstance(bts.rpc.get_config(api="database"), dict)) bts.rpc.next() self.assertTrue(bts.chain_params['min_version'] == '0.19.10') self.assertTrue(bts.rpc.get_use_appbase()) self.assertTrue(isinstance(bts.rpc.get_config(api="database"), dict))
def setUpClass(cls): cls.bts = Steem( node=nodes, nobroadcast=True, keys={"active": wif, "owner": wif, "memo": wif}, num_retries=10 ) cls.appbase = Steem( node=nodes_appbase, nobroadcast=True, keys={"active": wif, "owner": wif, "memo": wif}, num_retries=10 ) cls.rpc = SteemNodeRPC(urls=test_list) # from getpass import getpass # self.bts.wallet.unlock(getpass()) set_shared_steem_instance(cls.bts) cls.bts.set_default_account("test")
def setUpClass(cls): cls.bts = Steem(node=nodes, nobroadcast=True, keys={"active": wif}, num_retries=10) cls.appbase = Steem(node=nodes_appbase, nobroadcast=True, keys={"active": wif}, num_retries=10) # from getpass import getpass # self.bts.wallet.unlock(getpass()) set_shared_steem_instance(cls.bts) cls.bts.set_default_account("test") b = Blockchain(steem_instance=cls.bts) num = b.get_current_block_num() cls.start = num - 25 cls.stop = num
def setUpClass(cls): stm = shared_steem_instance() stm.config.refreshBackup() cls.bts = Steem(node=["wss://testnet.steem.vc"], nobroadcast=True, num_retries=10) # from getpass import getpass # self.bts.wallet.unlock(getpass()) cls.bts.set_default_account("beem")
def test_transactionbuilder(self, node_param): if node_param == "instance": set_shared_steem_instance(self.bts) o = TransactionBuilder() self.assertIn(o.blockchain.rpc.url, self.urls) with self.assertRaises(RPCConnection): o = TransactionBuilder(steem_instance=Steem( node="https://abc.d", autoconnect=False, num_retries=1)) o.blockchain.get_config() else: set_shared_steem_instance( Steem(node="https://abc.d", autoconnect=False, num_retries=1)) stm = self.bts o = TransactionBuilder(steem_instance=stm) self.assertIn(o.blockchain.rpc.url, self.urls) with self.assertRaises(RPCConnection): o = TransactionBuilder() o.blockchain.get_config()
def test_amount(self, node_param): if node_param == "instance": stm = Steem(node="https://abc.d", autoconnect=False, num_retries=1) set_shared_steem_instance(self.bts) o = Amount("1 %s" % self.bts.backed_token_symbol) self.assertIn(o.blockchain.rpc.url, self.urls) with self.assertRaises(RPCConnection): Amount("1 %s" % self.bts.backed_token_symbol, steem_instance=stm) else: set_shared_steem_instance( Steem(node="https://abc.d", autoconnect=False, num_retries=1)) stm = self.bts o = Amount("1 %s" % self.bts.backed_token_symbol, steem_instance=stm) self.assertIn(o.blockchain.rpc.url, self.urls) with self.assertRaises(RPCConnection): Amount("1 %s" % self.bts.backed_token_symbol)
def test_block(self, node_param): if node_param == "instance": set_shared_steem_instance(self.bts) o = Block(1) self.assertIn(o.blockchain.rpc.url, self.urls) with self.assertRaises(RPCConnection): Block(1, steem_instance=Steem(node="https://abc.d", autoconnect=False, num_retries=1)) else: set_shared_steem_instance( Steem(node="https://abc.d", autoconnect=False, num_retries=1)) stm = self.bts o = Block(1, steem_instance=stm) self.assertIn(o.blockchain.rpc.url, self.urls) with self.assertRaises(RPCConnection): Block(1)
def test_follow_active_key(self): nodelist = NodeList() stm = Steem(node=nodelist.get_testnet(), keys=[self.active_key], nobroadcast=True, expiration=120, num_retries=10) account = Account("beem", steem_instance=stm) account.follow("beem1")
def test_create_account(self): bts = Steem(node=self.nodelist.get_steem_nodes(), nobroadcast=True, unsigned=True, data_refresh_time_seconds=900, keys={ "active": wif, "owner": wif, "memo": wif }, num_retries=10) core_unit = "STM" name = ''.join( random.choice(string.ascii_lowercase) for _ in range(12)) key1 = PrivateKey() key2 = PrivateKey() key3 = PrivateKey() key4 = PrivateKey() key5 = PrivateKey() bts.txbuffer.clear() tx = bts.create_account( name, creator="test", # 1.2.7 owner_key=format(key1.pubkey, core_unit), active_key=format(key2.pubkey, core_unit), posting_key=format(key3.pubkey, core_unit), memo_key=format(key4.pubkey, core_unit), additional_owner_keys=[format(key5.pubkey, core_unit)], additional_active_keys=[format(key5.pubkey, core_unit)], additional_posting_keys=[format(key5.pubkey, core_unit)], additional_owner_accounts=["test1"], # 1.2.0 additional_active_accounts=["test2"], additional_posting_accounts=["test3"], storekeys=False, ) self.assertEqual(tx["operations"][0][0], "account_create") op = tx["operations"][0][1] role = "active" self.assertIn(format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn(format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn("test2", [x[0] for x in op[role]["account_auths"]]) role = "posting" self.assertIn(format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn(format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn("test3", [x[0] for x in op[role]["account_auths"]]) role = "owner" self.assertIn(format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn(format(key5.pubkey, core_unit), [x[0] for x in op[role]["key_auths"]]) self.assertIn("test1", [x[0] for x in op[role]["account_auths"]]) self.assertEqual(op["creator"], "test")
def setUpClass(cls): cls.stm = Steem(node=get_node_list(appbase=False), keys={ "active": wif, "owner": wif, "memo": wif }, nobroadcast=True, num_retries=10) cls.appbase = Steem(node=get_node_list(appbase=True), nobroadcast=True, keys={ "active": wif, "owner": wif, "memo": wif }, num_retries=10) set_shared_steem_instance(cls.stm) cls.stm.set_default_account("test")
def setUpClass(cls): cls.nodelist = NodeList() cls.nodelist.update_nodes(steem_instance=Steem( node=cls.nodelist.get_nodes(normal=True, appbase=True), num_retries=10)) stm = Steem(node=cls.nodelist.get_nodes()) stm.config.refreshBackup() stm.set_default_nodes(["xyz"]) del stm cls.urls = cls.nodelist.get_nodes() cls.bts = Steem(node=cls.urls, nobroadcast=True, num_retries=10) set_shared_steem_instance(cls.bts) acc = Account("holger80", steem_instance=cls.bts) comment = acc.get_blog(limit=20)[-1] cls.authorperm = comment.authorperm votes = acc.get_account_votes() last_vote = votes[-1] cls.authorpermvoter = '@' + last_vote['authorperm'] + '|' + acc["name"]
def setUpClass(cls): nodelist = NodeList() nodelist.update_nodes(steem_instance=Steem(node=nodelist.get_nodes(normal=True, appbase=True), num_retries=10)) cls.bts = Steem( node=nodelist.get_nodes(), nobroadcast=True, timeout=30, num_retries=30, ) # from getpass import getpass # self.bts.wallet.unlock(getpass()) set_shared_steem_instance(cls.bts) cls.bts.set_default_account("test") b = Blockchain(steem_instance=cls.bts) num = b.get_current_block_num() # num = 23346630 cls.start = num - 25 cls.stop = num
def setUpClass(cls): nodelist = NodeList() nodelist.update_nodes(steem_instance=Steem(node=nodelist.get_nodes( normal=True, appbase=True), num_retries=10)) cls.bts = Steem(node=nodelist.get_nodes(), nobroadcast=True, keys={"active": wif}, num_retries=10) cls.testnet = Steem(node="https://testnet.steemitdev.com", nobroadcast=True, keys={"active": wif}, num_retries=10) cls.test_block_id = 19273700 cls.test_block_id_testnet = 10000 # from getpass import getpass # self.bts.wallet.unlock(getpass()) set_shared_steem_instance(cls.bts) cls.bts.set_default_account("test")
def setUpClass(cls): nodelist = NodeList() nodelist.update_nodes(steem_instance=Steem(node=nodelist.get_nodes( normal=True, appbase=True), num_retries=10)) cls.bts = Steem( node=nodelist.get_nodes(appbase=False), nobroadcast=True, bundle=False, # Overwrite wallet to use this list of wifs only keys={"active": wif}, num_retries=10) cls.appbase = Steem( node=nodelist.get_nodes(appbase=True, dev=True), nobroadcast=True, bundle=False, # Overwrite wallet to use this list of wifs only keys={"active": wif}, num_retries=10)
def setUpClass(cls): nodelist = NodeList() nodelist.update_nodes(steem_instance=Steem(node=nodelist.get_nodes(exclude_limited=False), num_retries=10)) cls.bts = Steem( node=nodelist.get_nodes(exclude_limited=True), nobroadcast=True, num_retries=10 ) cls.steemit = Steem( node="https://api.steemit.com", nobroadcast=True, use_condenser=False, num_retries=10 ) set_shared_steem_instance(cls.bts) cls.asset = Asset("SBD") cls.symbol = cls.asset["symbol"] cls.precision = cls.asset["precision"] cls.asset2 = Asset("STEEM")
def setUpClass(cls): nodelist = NodeList() nodelist.update_nodes(steem_instance=Steem(node=nodelist.get_nodes( normal=True, appbase=True), num_retries=10)) cls.bts = Steem(node=nodelist.get_nodes(appbase=False), use_condenser=True, nobroadcast=True, keys={"active": wif}, num_retries=10) cls.appbase = Steem(node=nodelist.get_nodes(normal=False, appbase=True), nobroadcast=True, keys={"active": wif}, num_retries=10) # from getpass import getpass # self.bts.wallet.unlock(getpass()) set_shared_steem_instance(cls.bts) cls.bts.set_default_account("test")
def setUpClass(cls): cls.nodelist = NodeList() cls.nodelist.update_nodes(steem_instance=Steem( node=cls.nodelist.get_nodes(hive=True), num_retries=10)) stm = Steem(node=cls.nodelist.get_nodes(hive=True)) stm.config.refreshBackup() stm.set_default_nodes(["xyz"]) del stm cls.urls = cls.nodelist.get_nodes(hive=True) cls.bts = Steem(node=cls.urls, nobroadcast=True, num_retries=10) set_shared_steem_instance(cls.bts) acc = Account("fullnodeupdate", steem_instance=cls.bts) comment = Comment(acc.get_blog_entries(limit=20)[-1], steem_instance=cls.bts) cls.authorperm = comment.authorperm votes = comment.get_votes() last_vote = votes[-1] cls.authorpermvoter = comment['authorperm'] + '|' + last_vote["voter"]
def test_default_connection(self): nodelist = NodeList() b1 = Steem( node=nodelist.get_testnet(), nobroadcast=True, ) set_shared_steem_instance(b1) test = Account("test") b2 = Steem( node=nodelist.get_nodes(appbase=False), nobroadcast=True, ) set_shared_steem_instance(b2) bts = Account("test") self.assertEqual(test.steem.prefix, "STX") self.assertEqual(bts.steem.prefix, "STM")
def test_steem(self, node_param): if node_param == "instance": stm = Steem(node="abc", autoconnect=False, num_retries=1) set_shared_steem_instance(self.bts) o = Steem(node=self.urls) o.get_config() self.assertIn(o.rpc.url, self.urls) with self.assertRaises(NumRetriesReached): stm.get_config() else: set_shared_steem_instance( Steem(node="abc", autoconnect=False, num_retries=1)) stm = self.bts o = stm o.get_config() self.assertIn(o.rpc.url, self.urls) with self.assertRaises(NumRetriesReached): stm = shared_steem_instance() stm.get_config()
def setUpClass(cls): cls.bts = Steem( node=get_node_list(appbase=False), nobroadcast=True, keys={"active": wif}, num_retries=10 ) cls.appbase = Steem( node=nodes_appbase, nobroadcast=True, keys={"active": wif}, num_retries=10 ) cls.test_block_id = 19273700 # from getpass import getpass # self.bts.wallet.unlock(getpass()) set_shared_steem_instance(cls.bts) cls.bts.set_default_account("test")