diff --git a/beem/utils.py b/beem/utils.py index 6bfb8ca3db09616b77bde4b007990bc53b0d3606..18c58e96e20b50fc11730707b368ade5e7f750a2 100644 --- a/beem/utils.py +++ b/beem/utils.py @@ -273,3 +273,7 @@ def get_node_list(appbase=False, testing=False): "https://steemd.minnowsupportproject.org", "https://steemd.pevo.science", "https://rpc.steemviz.com", "https://seed.bitcoiner.me", "https://rpc.steemliberator.com", "https://gtg.steem.house:8090", "https://rpc.curiesteem.com", "https://steemd.steemgigs.org"] + + +def get_test_node_list(): + return ["wss://testnet.steem.vc", "ws://testnet.steem.vc", "https://testnet.steem.vc", "http://testnet.steem.vc"] diff --git a/beemapi/graphenerpc.py b/beemapi/graphenerpc.py index 3d7ad1485e0a0f9114a0a3f71debf63026ccec10..9722287a08e940f7b59d948eeb52f256f525cd9f 100644 --- a/beemapi/graphenerpc.py +++ b/beemapi/graphenerpc.py @@ -105,7 +105,7 @@ class GrapheneRPC(object): .. code-block:: python - from beemgrapheneapi.graphenerpc import GrapheneRPC + from beemapi.graphenerpc import GrapheneRPC ws = GrapheneRPC("wss://steemd.pevo.science","","") print(ws.get_account_count()) diff --git a/docs/beemgrapheneapi.graphenenerpc.rst b/docs/beemapi.graphenenerpc.rst similarity index 75% rename from docs/beemgrapheneapi.graphenenerpc.rst rename to docs/beemapi.graphenenerpc.rst index a806260c44801b06854d579f36db1fecc24bf257..7333c7e96e85185dce9bb9f8a601ea8c456cd09f 100644 --- a/docs/beemgrapheneapi.graphenenerpc.rst +++ b/docs/beemapi.graphenenerpc.rst @@ -1,5 +1,5 @@ -beemgrapheneapi\.graphenerpc -============================ +beemapi\.graphenerpc +==================== .. note:: This is a low level class that can be used in combination with @@ -9,7 +9,7 @@ This class allows to call API methods exposed by the witness node via websockets. It does **not** support notifications and is not run asynchronously. -.. automodule:: beemgrapheneapi.graphenerpc +.. automodule:: beemapi.graphenerpc :members: :undoc-members: :show-inheritance: diff --git a/docs/modules.rst b/docs/modules.rst index 97a56620601ec4a86172ae79bb96bf2f52b78bdf..03f5104a16d7545bfe09f4d8d3adafa3aa4e8e5c 100644 --- a/docs/modules.rst +++ b/docs/modules.rst @@ -39,6 +39,7 @@ beemapi Modules beemapi.steemnoderpc beemapi.exceptions beemapi.websocket + beemapi.graphenenerpc beembase Modules ------------------- @@ -53,13 +54,6 @@ beembase Modules beembase.signedtransactions beembase.transactions -beemgrapheneapi Modules --------------------------- - -.. toctree:: - - beemgrapheneapi.graphenenerpc - beemgraphenebase Modules --------------------------- diff --git a/examples/memory_profiler2.py b/examples/memory_profiler2.py index d03bc376083e12ba7ddfdd340cc6878348c2a767..cc2eed9089e6feff02285ec803c49bf77d39715f 100644 --- a/examples/memory_profiler2.py +++ b/examples/memory_profiler2.py @@ -6,7 +6,7 @@ from beem.account import Account from beem.blockchain import Blockchain from beem.instance import set_shared_steem_instance, clear_cache from beem.storage import configStorage as config -from beemgrapheneapi.graphenerpc import GrapheneRPC +from beemapi.graphenerpc import GrapheneRPC import logging log = logging.getLogger(__name__) logging.basicConfig(level=logging.INFO) diff --git a/tests/beem/test_cli.py b/tests/beem/test_cli.py index d95ccfbe8de866ada5dcbec7f71ec3a9c059bb36..87e8e794ddcd5510c2d36cf1b1921b5825b2672c 100644 --- a/tests/beem/test_cli.py +++ b/tests/beem/test_cli.py @@ -16,7 +16,7 @@ from beemgraphenebase.account import PrivateKey from beem.cli import cli, balance from beem.instance import set_shared_steem_instance, shared_steem_instance from beembase.operationids import getOperationNameForId -from beem.utils import get_node_list +from beem.utils import get_node_list, get_test_node_list wif = "5Jt2wTfhUt5GkZHV1HYVfkEaJ6XnY8D2iA4qjtK9nnGXAhThM3w" posting_key = "5Jh1Gtu2j4Yi16TfhoDmg8Qj3ULcgRi7A49JXdfUUTVPkaFaRKz" @@ -36,7 +36,7 @@ class Testcases(unittest.TestCase): result = runner.invoke(cli, ['-o', 'set', 'default_account', 'beem']) if result.exit_code != 0: raise AssertionError(str(result)) - result = runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + result = runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) if result.exit_code != 0: raise AssertionError(str(result)) result = runner.invoke(cli, ['createwallet', '--wipe'], input="test\ntest\n") @@ -59,13 +59,13 @@ class Testcases(unittest.TestCase): def test_balance(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['balance', 'beem', 'beem1']) self.assertEqual(result.exit_code, 0) def test_interest(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['interest', 'beem', 'beem1']) self.assertEqual(result.exit_code, 0) @@ -109,7 +109,7 @@ class Testcases(unittest.TestCase): def test_info(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['info']) self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['info', 'beem']) @@ -130,7 +130,7 @@ class Testcases(unittest.TestCase): self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['info', "@gtg/witness-gtg-log"]) self.assertEqual(result.exit_code, 0) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) def test_changepassword(self): runner = CliRunner() @@ -167,19 +167,19 @@ class Testcases(unittest.TestCase): def test_transfer(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['transfer', 'beem1', '1', 'SBD', 'test'], input="test\n") self.assertEqual(result.exit_code, 0) def test_powerdownroute(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['powerdownroute', 'beem1'], input="test\n") self.assertEqual(result.exit_code, 0) def test_convert(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['convert', '1'], input="test\n") self.assertEqual(result.exit_code, 0) @@ -190,7 +190,7 @@ class Testcases(unittest.TestCase): def test_powerdown(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['powerdown', '1e3'], input="test\n") self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['powerdown', '0'], input="test\n") @@ -198,7 +198,7 @@ class Testcases(unittest.TestCase): def test_updatememokey(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['-d', 'updatememokey'], input="test\ntest\ntest\n") self.assertEqual(result.exit_code, 0) @@ -209,31 +209,31 @@ class Testcases(unittest.TestCase): def test_follower(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['follower', 'beem2']) self.assertEqual(result.exit_code, 0) def test_following(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['following', 'beem']) self.assertEqual(result.exit_code, 0) def test_muter(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['muter', 'beem2']) self.assertEqual(result.exit_code, 0) def test_muting(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['muting', 'beem']) self.assertEqual(result.exit_code, 0) def test_allow_disallow(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['-d', 'allow', '--account', 'beem', '--permission', 'posting', 'beem1'], input="test\n") self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['-d', 'disallow', '--account', 'beem', '--permission', 'posting', 'beem1'], input="test\n") @@ -246,7 +246,7 @@ class Testcases(unittest.TestCase): def test_votes(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['votes', '--direction', 'out']) self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['votes', '--direction', 'in']) @@ -254,19 +254,19 @@ class Testcases(unittest.TestCase): def test_approvewitness(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['-o', 'approvewitness', 'beem1'], input="test\n") self.assertEqual(result.exit_code, 0) def test_disapprovewitness(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['-o', 'disapprovewitness', 'beem1'], input="test\n") self.assertEqual(result.exit_code, 0) def test_newaccount(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['-d', 'newaccount', 'beem3'], input="test\ntest\ntest\n") self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['-d', 'newaccount', '--fee', '6 STEEM', 'beem3'], input="test\ntest\ntest\n") @@ -274,7 +274,7 @@ class Testcases(unittest.TestCase): def test_importaccount(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['importaccount', '--roles', '["owner", "active", "posting", "memo"]', 'beem2'], input="test\ntest\n") self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['delkey', '--confirm', 'STX7mLs2hns87f7kbf3o2HBqNoEaXiTeeU89eVF6iUCrMQJFzBsPo'], input="test\n") @@ -294,7 +294,7 @@ class Testcases(unittest.TestCase): result = runner.invoke(cli, ['orderbook', '--show-date']) self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['orderbook', '--chart']) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) self.assertEqual(result.exit_code, 0) def test_buy(self): @@ -336,7 +336,7 @@ class Testcases(unittest.TestCase): def test_follow_unfollow(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['follow', 'beem1'], input="test\n") self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['unfollow', 'beem1'], input="test\n") @@ -344,7 +344,7 @@ class Testcases(unittest.TestCase): def test_mute_unmute(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['mute', 'beem1'], input="test\n") self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['unfollow', 'beem1'], input="test\n") @@ -352,7 +352,7 @@ class Testcases(unittest.TestCase): def test_witnesscreate(self): runner = CliRunner() - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) result = runner.invoke(cli, ['-d', 'witnesscreate', 'beem', pub_key], input="test\n") self.assertEqual(result.exit_code, 0) @@ -385,7 +385,7 @@ class Testcases(unittest.TestCase): runner.invoke(cli, ['-o', 'set', 'nodes', '']) result = runner.invoke(cli, ['-o', 'nextnode']) self.assertEqual(result.exit_code, 0) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) def test_pingnode(self): runner = CliRunner() @@ -403,20 +403,20 @@ class Testcases(unittest.TestCase): self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['currentnode', '--version']) self.assertEqual(result.exit_code, 0) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) def test_ticker(self): runner = CliRunner() runner.invoke(cli, ['-o', 'set', 'nodes', '']) result = runner.invoke(cli, ['ticker']) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) self.assertEqual(result.exit_code, 0) def test_pricehistory(self): runner = CliRunner() runner.invoke(cli, ['-o', 'set', 'nodes', '']) result = runner.invoke(cli, ['pricehistory']) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) self.assertEqual(result.exit_code, 0) def test_pending(self): @@ -434,7 +434,7 @@ class Testcases(unittest.TestCase): self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['pending', '--post', '--comment', '--curation', '--author', '--permlink', '--length', '30', 'test']) self.assertEqual(result.exit_code, 0) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) def test_rewards(self): runner = CliRunner() @@ -451,25 +451,25 @@ class Testcases(unittest.TestCase): self.assertEqual(result.exit_code, 0) result = runner.invoke(cli, ['rewards', '--post', '--comment', '--curation', '--author', '--permlink', '--length', '30', 'test']) self.assertEqual(result.exit_code, 0) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) def test_curation(self): runner = CliRunner() runner.invoke(cli, ['-o', 'set', 'nodes', '']) result = runner.invoke(cli, ['curation', "@gtg/witness-gtg-log"]) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) self.assertEqual(result.exit_code, 0) def test_verify(self): runner = CliRunner() runner.invoke(cli, ['-o', 'set', 'nodes', '']) result = runner.invoke(cli, ['verify', '--trx', '0']) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) self.assertEqual(result.exit_code, 0) def test_tradehistory(self): runner = CliRunner() runner.invoke(cli, ['-o', 'set', 'nodes', '']) result = runner.invoke(cli, ['tradehistory']) - runner.invoke(cli, ['-o', 'set', 'nodes', 'wss://testnet.steem.vc']) + runner.invoke(cli, ['-o', 'set', 'nodes', get_test_node_list()[1]]) self.assertEqual(result.exit_code, 0) diff --git a/tests/beem/test_connection.py b/tests/beem/test_connection.py index ccfad5cba0567f333e0bc248fb1be4bef0fab4e1..d5a8166e7748d919447b4e3ab14612c658284df6 100644 --- a/tests/beem/test_connection.py +++ b/tests/beem/test_connection.py @@ -3,7 +3,7 @@ from beem import Steem from beem.account import Account from beem.instance import set_shared_steem_instance, SharedInstance from beem.blockchainobject import BlockchainObject -from beem.utils import get_node_list +from beem.utils import get_node_list, get_test_node_list import logging log = logging.getLogger() @@ -13,7 +13,7 @@ class Testcases(unittest.TestCase): def test_stm1stm2(self): b1 = Steem( - node=["wss://testnet.steem.vc"], + node=get_test_node_list(), nobroadcast=True, num_retries=10 ) @@ -28,7 +28,7 @@ class Testcases(unittest.TestCase): def test_default_connection(self): b1 = Steem( - node=["wss://testnet.steem.vc"], + node=get_test_node_list(), nobroadcast=True, ) set_shared_steem_instance(b1) diff --git a/tests/beem/test_instance.py b/tests/beem/test_instance.py index ce1f3830d00751b2a48c9c57ec9834c13a30f52d..be907b01c6c218353d685ca430d4bf86e70e6b7b 100644 --- a/tests/beem/test_instance.py +++ b/tests/beem/test_instance.py @@ -25,7 +25,7 @@ from beem.transactionbuilder import TransactionBuilder from beembase.operations import Transfer from beemgraphenebase.account import PasswordKey, PrivateKey, PublicKey from beem.utils import parse_time, formatTimedelta -from beemgrapheneapi.rpcutils import NumRetriesReached +from beemapi.rpcutils import NumRetriesReached # Py3 compatibility import sys diff --git a/tests/beem/test_testnet.py b/tests/beem/test_testnet.py index d2ab4c97ef1954bfd6f79c5045d1c89a3ed53b9c..eb275cf869c48dbb5734f42747e63e4e850ca67a 100644 --- a/tests/beem/test_testnet.py +++ b/tests/beem/test_testnet.py @@ -19,7 +19,7 @@ from beem.block import Block from beem.transactionbuilder import TransactionBuilder from beembase.operations import Transfer from beemgraphenebase.account import PasswordKey, PrivateKey, PublicKey -from beem.utils import parse_time, formatTimedelta +from beem.utils import parse_time, formatTimedelta, get_test_node_list from beemapi.rpcutils import NumRetriesReached # Py3 compatibility @@ -34,7 +34,7 @@ class Testcases(unittest.TestCase): stm = shared_steem_instance() stm.config.refreshBackup() cls.bts = Steem( - node=["wss://testnet.steem.vc"], + node=get_test_node_list(), nobroadcast=True, num_retries=10, expiration=120, @@ -243,7 +243,7 @@ class Testcases(unittest.TestCase): # funds but sign the transaction with elf's key and then serialize the transaction # and deserialize the transaction. After that, sign with steemfiles's key. steem = Steem( - node=["wss://testnet.steem.vc"], + node=get_test_node_list(), num_retries=10, keys=[self.active_private_key_of_elf], expiration=120, @@ -265,7 +265,7 @@ class Testcases(unittest.TestCase): del tx steem = Steem( - node=["wss://testnet.steem.vc"], + node=get_test_node_list(), num_retries=10, keys=[self.active_private_key_of_steemfiles], expiration=120, @@ -342,7 +342,7 @@ class Testcases(unittest.TestCase): "beem") def test_connect(self): - self.bts.connect(node=["wss://testnet.steem.vc"]) + self.bts.connect(node=get_test_node_list()) bts = self.bts self.assertEqual(bts.prefix, "STX") diff --git a/tests/beemgraphene/test_rpcutils.py b/tests/beemapi/test_rpcutils.py similarity index 99% rename from tests/beemgraphene/test_rpcutils.py rename to tests/beemapi/test_rpcutils.py index 940ad563c96b681e264509b9aa651c2a62ef4c4d..5f64d59f5a12ccb4ea60e57801188cfbcc0001e6 100644 --- a/tests/beemgraphene/test_rpcutils.py +++ b/tests/beemapi/test_rpcutils.py @@ -5,7 +5,7 @@ from __future__ import print_function from __future__ import unicode_literals import pytest import unittest -from beemgrapheneapi.rpcutils import ( +from beemapi.rpcutils import ( is_network_appbase_ready, sleep_and_check_retries, get_api_name, get_query, UnauthorizedError, RPCConnection, RPCError, NumRetriesReached