created flush_db for tarantool connection type

This commit is contained in:
andrei 2022-05-26 15:24:39 +03:00
parent bf3ece309e
commit cc6f8eea16
3 changed files with 23 additions and 19 deletions

View File

@ -20,6 +20,10 @@ logger = logging.getLogger(__name__)
TABLES = ('transactions', 'blocks', 'assets', 'metadata',
'validators', 'elections', 'pre_commit', 'utxos', 'abci_chains')
SPACE_NAMES = ("abci_chains", "assets", "blocks", "blocks_tx",
"elections", "meta_data", "pre_commits", "validators",
"transactions", "inputs", "outputs", "keys")
VALID_LANGUAGES = ('danish', 'dutch', 'english', 'finnish', 'french', 'german',
'hungarian', 'italian', 'norwegian', 'portuguese', 'romanian',
'russian', 'spanish', 'swedish', 'turkish', 'none',

View File

@ -126,19 +126,6 @@ def _setup_database(_configure_planetmint): # TODO Here is located setup databa
from planetmint.backend.connection import Connection
from planetmint.config import Config
# print('Deleting `{}` database')
# db_conn = Connection()
# db_conn.drop_database()
# db_conn.init_database()
# print('Finished deleting ``')
#
# yield
#
# print('Initializing test db')
# db_conn2 = Connection()
# db_conn2.drop_database()
# print('Finishing init database')
print('Initializing test db')
dbname = Config().get()['database']['name']
conn = Connection()
@ -161,8 +148,12 @@ def _bdb(_setup_database):
from planetmint.backend import Connection
from planetmint.transactions.common.memoize import to_dict, from_dict
from planetmint.models import Transaction
from .utils import flush_db
from planetmint.config import Config
conn = Connection()
yield
dbname = Config().get()['database']['name']
flush_db(conn, dbname)
to_dict.cache_clear()
from_dict.cache_clear()
@ -372,7 +363,6 @@ def inputs(user_pk, b, alice):
def _drop_db(conn, dbname):
try:
conn.drop_database()
schema.drop_database(conn, dbname)
except DatabaseDoesNotExist:
pass

View File

@ -10,7 +10,8 @@ import random
from functools import singledispatch
from planetmint.backend.localmongodb.connection import LocalMongoDBConnection
from planetmint.backend.schema import TABLES
from planetmint.backend.tarantool.connection import TarantoolDB
from planetmint.backend.schema import TABLES, SPACE_NAMES
from planetmint.transactions.common import crypto
from planetmint.transactions.common.transaction_mode_types import BROADCAST_TX_COMMIT
from planetmint.transactions.types.assets.create import Create
@ -29,13 +30,22 @@ def flush_localmongo_db(connection, dbname):
getattr(connection.conn[dbname], t).delete_many({})
@flush_db.register(TarantoolDB)
def flush_tarantool_db(connection, dbname):
for s in SPACE_NAMES:
_space = connection.space(space_name=s)
_all_data = _space.select([]).data
for _id in _all_data:
_space.delete(_id[0])
def generate_block(planet):
from planetmint.transactions.common.crypto import generate_key_pair
alice = generate_key_pair()
tx = Create.generate([alice.public_key],
[([alice.public_key], 1)],
asset=None)\
asset=None) \
.sign([alice.private_key])
code, message = planet.write_transaction(tx, BROADCAST_TX_COMMIT)
@ -55,7 +65,7 @@ def gen_vote(election, i, ed25519_node_keys):
election_pub_key = Election.to_public_key(election.id)
return Vote.generate([input_i],
[([election_pub_key], votes_i)],
election_id=election.id)\
election_id=election.id) \
.sign([key_i.private_key])