get some tests working
This commit is contained in:
@@ -12,16 +12,8 @@ from fastapi import FastAPI, Query
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def create_app(chain_spec,
|
||||
celery_queue,
|
||||
redis_host,
|
||||
redis_port,
|
||||
redis_db,
|
||||
redis_timeout):
|
||||
setup_cache(redis_db=redis_db, redis_host=redis_host,
|
||||
redis_port=redis_port)
|
||||
celery_wrapper = create_celery_wrapper(celery_queue=celery_queue, chain_spec=chain_spec,
|
||||
redis_db=redis_db, redis_host=redis_host, redis_port=redis_port, redis_timeout=redis_timeout)
|
||||
def create_app(celery_wrapper):
|
||||
|
||||
app = FastAPI(debug=True,
|
||||
title="Grassroots Economics",
|
||||
description="CIC ETH API",
|
||||
@@ -99,7 +91,6 @@ def create_app(chain_spec,
|
||||
if token == None:
|
||||
sys.stderr.write(f"Cached Token {token_symbol} not found")
|
||||
data = celery_wrapper('token', token_symbol, proof=proof)
|
||||
cache.set_token_data(token_symbol, data)
|
||||
token = Token.new(data)
|
||||
sys.stderr.write(f"Token {token}")
|
||||
|
||||
@@ -119,20 +110,10 @@ def create_app(chain_spec,
|
||||
|
||||
@app.get("/default_token", response_model=DefaultToken)
|
||||
def default_token():
|
||||
data = cache.get_default_token()
|
||||
if data is None:
|
||||
data = celery_wrapper('default_token')
|
||||
if data is not None:
|
||||
cache.set_default_token(data)
|
||||
data = celery_wrapper('default_token')
|
||||
return data
|
||||
|
||||
def get_token(token_symbol: str):
|
||||
data = cache.get_token_data(token_symbol)
|
||||
log.debug(f"cached token data: {data}")
|
||||
if data == None:
|
||||
data = celery_wrapper('token', token_symbol)
|
||||
log.debug(
|
||||
f"No token data setting token data for: {token_symbol} to {data}")
|
||||
cache.set_token_data(token_symbol, data)
|
||||
data = celery_wrapper('token', token_symbol)
|
||||
return Token.new(data)
|
||||
return app
|
||||
|
||||
@@ -18,7 +18,7 @@ def create_celery_wrapper(chain_spec,
|
||||
def call(method, *args, catch=1, **kwargs):
|
||||
""" Creates a redis channel and calls `cic_eth.api` with the provided `method` and `*args`. Returns the result of the api call. Catch allows you to specify how many messages to catch before returning.
|
||||
"""
|
||||
log.debug(f"Using chainspec: {chain_spec}")
|
||||
log.debug(f"Using redis: {redis_host}, {redis_port}, {redis_db}")
|
||||
redis_channel = str(uuid.uuid4())
|
||||
r = redis.Redis(redis_host, redis_port, redis_db)
|
||||
ps = r.pubsub()
|
||||
@@ -39,6 +39,7 @@ def create_celery_wrapper(chain_spec,
|
||||
if catch == 1:
|
||||
message = ps.get_message(timeout=redis_timeout)
|
||||
data = json.loads(message['data'])["result"]
|
||||
raise data
|
||||
else:
|
||||
for _i in range(catch):
|
||||
message = ps.get_message(
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
import logging
|
||||
|
||||
import cic_eth.cli
|
||||
|
||||
|
||||
def get_config():
|
||||
# Parse Args
|
||||
arg_flags = cic_eth.cli.argflag_std_base
|
||||
local_arg_flags = cic_eth.cli.argflag_local_taskcallback
|
||||
argparser = cic_eth.cli.ArgumentParser(arg_flags)
|
||||
argparser.process_local_flags(local_arg_flags)
|
||||
args = argparser.parse_args([])
|
||||
config = cic_eth.cli.Config.from_args(args, arg_flags, local_arg_flags)
|
||||
# Define log levels
|
||||
if args.vv:
|
||||
logging.getLogger().setLevel(logging.DEBUG)
|
||||
elif args.v:
|
||||
logging.getLogger().setLevel(logging.INFO)
|
||||
|
||||
return config
|
||||
Reference in New Issue
Block a user