Merge branch 'develop' into feature/opaqueid
This commit is contained in:
@@ -34,6 +34,7 @@ from mock import Mock, patch
|
||||
from minimocktest import MockTestCase
|
||||
import pandas as pd
|
||||
import rowers.c2stuff as c2stuff
|
||||
import arrow
|
||||
|
||||
import json
|
||||
import numpy as np
|
||||
@@ -110,6 +111,8 @@ class mocked_canvas():
|
||||
def print_figure(*args, **kwargs):
|
||||
return True
|
||||
|
||||
# Mocked Dataprep
|
||||
|
||||
def mocked_fetchcperg(*args, **kwargs):
|
||||
df = pd.read_csv('rowers/tests/testdata/cpdataerg.csv')
|
||||
|
||||
@@ -132,28 +135,83 @@ def mocked_getpowerdata_db(*args, **kwargs):
|
||||
|
||||
return df
|
||||
|
||||
def mock_for_interactive_chart(*args, **kwargs):
|
||||
df = pd.read_csv('rowers/tests/testdata/interactivechart.csv')
|
||||
|
||||
return df
|
||||
|
||||
def mocked_getempowerdata_db(*args, **kwargs):
|
||||
df = pd.read_csv('rowers/tests/testdata/fake_empowerdata.csv')
|
||||
|
||||
return df
|
||||
|
||||
def mocked_read_df_cols_sql_multistats(ids,columns,convertnewtons=True):
|
||||
df = pd.read_csv('rowers/tests/testdata/cumstats.csv')
|
||||
extracols = []
|
||||
|
||||
return df, extracols
|
||||
|
||||
def mocked_read_df_cols_sql(ids, columns, convertnewtons=True):
|
||||
df = pd.read_csv('rowers/tests/testdata/fake_strokedata.csv')
|
||||
extracols = []
|
||||
|
||||
return df, extracols
|
||||
|
||||
def mock_workout_summaries(*args, **kwargs):
|
||||
df = pd.read_csv('rowers/tests/testdata/workout_summaries.csv')
|
||||
return df
|
||||
|
||||
def mocked_read_df_cols_sql_multi(ids, columns, convertnewtons=True):
|
||||
df = pd.read_csv('rowers/tests/testdata/fake_strokedata2.csv')
|
||||
extracols = []
|
||||
|
||||
return df, extracols
|
||||
|
||||
def mocked_read_df_cols_sql_multiflex(ids, columns, convertnewtons=True):
|
||||
df = pd.read_csv('rowers/tests/testdata/multiflexdata.csv')
|
||||
extracols = []
|
||||
|
||||
return df, extracols
|
||||
|
||||
# Mocked Strava
|
||||
|
||||
def mocked_stravaexport(f2,workoutname,stravatoken,description='',
|
||||
activity_type='Rowing'):
|
||||
print "this is mocked strava export"
|
||||
return 1,'success'
|
||||
|
||||
def mocked_fetchcp(*args, **kwargs):
|
||||
df = pd.read_csv('rowers/tests/testdata/otwcpresult.csv')
|
||||
delta = df['delta']
|
||||
cpvalue = df['cpvalue']
|
||||
|
||||
try:
|
||||
theworkouts = args[1]
|
||||
except:
|
||||
theworkouts = []
|
||||
|
||||
theids = [int(w.id) for w in theworkouts]
|
||||
|
||||
avgpower = {}
|
||||
thepowers = [203,153,143,152,196,211,223]
|
||||
|
||||
for i in range(len(theids)):
|
||||
avgpower[id[i]] = thepowers[i]
|
||||
|
||||
return delta, cpvalue, avgpower
|
||||
|
||||
def mocked_getcpdata_sql(*args, **kwargs):
|
||||
df = pd.read_csv('rowers/tests/testdata/otwcpresult.csv')
|
||||
|
||||
df['cp'] = df['cpvalue']
|
||||
|
||||
return df
|
||||
|
||||
def mocked_cpraw(*args, **kwargs):
|
||||
df = pd.read_csv('rowers/tests/testdata/otwcp_df.csv')
|
||||
|
||||
return df
|
||||
|
||||
def StravaActivity():
|
||||
def wait(*args, **kwargs):
|
||||
return 1
|
||||
@@ -165,6 +223,204 @@ class MockStravalibClient():
|
||||
def update_activity(*args, **kwargs):
|
||||
return StravaActivity()
|
||||
|
||||
# Mocked Braintree
|
||||
|
||||
## Higher level - unfortunately didn't succeed in mocking the gateway
|
||||
|
||||
def get_client_token(*args, **kwargs):
|
||||
return "aap"
|
||||
|
||||
def mock_create_customer(*args, **kwargs):
|
||||
return 121
|
||||
|
||||
def mock_make_payment(*args, **kwargs):
|
||||
return 15,''
|
||||
|
||||
def mock_update_subscription(*args, **kwargs):
|
||||
try:
|
||||
rower = args[0]
|
||||
data = args[1]
|
||||
planid = data['plan']
|
||||
plan = PaidPlan.objects.get(id=planid)
|
||||
amount = data['amount']
|
||||
|
||||
rower.paidplan = plan
|
||||
rower.planexpires = (datetime.datetime.now()+datetime.timedelta(days=365)).date()
|
||||
rower.clubsize = plan.clubsize
|
||||
rower.paymenttype = plan.paymenttype
|
||||
rower.rowerplan = plan.shortname
|
||||
rower.subscription_id = 12
|
||||
rower.save()
|
||||
except:
|
||||
amount = 20
|
||||
|
||||
return True,amount
|
||||
|
||||
def mock_create_subscription(*args, **kwargs):
|
||||
return mock_update_subscription(*args, **kwargs)
|
||||
|
||||
def mock_cancel_subscription(*args, **kwargs):
|
||||
themessages = []
|
||||
errormessages = []
|
||||
try:
|
||||
basicplans = PaidPlan.objects.filter(price=0,paymentprocessor='braintree')
|
||||
rower.paidplan = basicplans[0]
|
||||
rower.teamplanexpires = timezone.now()
|
||||
rower.planexpires = timezone.now()
|
||||
rower.clubsize = 0
|
||||
rower.rowerplan = 'basic'
|
||||
rower.subscription_id = None
|
||||
rower.save()
|
||||
themessages.append("Your plan was reset to basic")
|
||||
except:
|
||||
pass
|
||||
|
||||
return True, themessages,errormessages
|
||||
|
||||
def mock_mocktest(*args, **kwargs):
|
||||
return '121'
|
||||
|
||||
## Gateway stuff (not working)
|
||||
|
||||
class gatewayresult():
|
||||
def __init__(self,*args,**kwargs):
|
||||
self.is_success = kwargs.pop('is_success',True)
|
||||
self.customer_id = 1
|
||||
self.transaction = vtransaction()
|
||||
self.payment_method = vpayment_method()
|
||||
self.subscription = vsubscription()
|
||||
self.customer = customer()
|
||||
|
||||
def __unicode__():
|
||||
return "mockedgatewayresult"
|
||||
|
||||
class credit_card():
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.subscriptions = [vsubscription()]
|
||||
self.country_of_issuance = 'US'
|
||||
|
||||
class paypal_account():
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.subscriptions = [vsubscription(),vsubscription()]
|
||||
|
||||
class customer():
|
||||
def find(*arg, **kwargs):
|
||||
return self
|
||||
|
||||
def create(*args, **kwargs):
|
||||
return gatewayresult(is_success=True)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.credit_cards = [credit_card(),credit_card()]
|
||||
self.paypal_accounts = [paypal_account()]
|
||||
self.id = 1
|
||||
|
||||
class client_token():
|
||||
def generate(*args, **kwargs):
|
||||
return 'aapnooit'
|
||||
|
||||
class plan():
|
||||
def all(*args, **kwargs):
|
||||
return []
|
||||
|
||||
|
||||
|
||||
class transaction():
|
||||
def sale(*args, **kwargs):
|
||||
return gatewayresult(is_success=True)
|
||||
|
||||
def search(*args, **kwargs):
|
||||
return [gatewayresult(is_success=True),gatewayresult(is_success=True)]
|
||||
|
||||
def __init__(self,*args, **kwargs):
|
||||
self.amount = 15
|
||||
self.credit_card_details = credit_card()
|
||||
self.customer = {
|
||||
'first_name': 'John',
|
||||
'last_name': 'Doe',
|
||||
'id': 12
|
||||
}
|
||||
self.created_at = datetime.datetime.now()
|
||||
self.currency_iso_code = 'EUR'
|
||||
|
||||
class vtransaction():
|
||||
def __init__(self,*args, **kwargs):
|
||||
self.amount = 15
|
||||
self.credit_card_details = credit_card()
|
||||
self.customer = {
|
||||
'first_name': 'John',
|
||||
'last_name': 'Doe',
|
||||
'id': 12
|
||||
}
|
||||
self.created_at = datetime.datetime.now()
|
||||
self.currency_iso_code = 'EUR'
|
||||
|
||||
class vsubscription():
|
||||
def update(*args, **kwargs):
|
||||
return gatewayresult(is_success=True)
|
||||
|
||||
def cancel(*args, **kwargs):
|
||||
return gatewayresult(is_success=True)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.id = '121'
|
||||
self.billing_period_end_date = (datetime.datetime.now()+datetime.timedelta(days=365)).date()
|
||||
self.status = 'Active'
|
||||
self.plan_id = 12
|
||||
self.price = 15
|
||||
self.never_expires = True
|
||||
|
||||
class subscription():
|
||||
def create(*args, **kwargs):
|
||||
return gatewayresult(is_success=True)
|
||||
|
||||
def update(*args, **kwargs):
|
||||
return gatewayresult(is_success=True)
|
||||
|
||||
def cancel(*args, **kwargs):
|
||||
return gatewayresult(is_success=True)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.id = '121'
|
||||
self.billing_period_end_date = (datetime.datetime.now()+datetime.timedelta(days=365)).date()
|
||||
self.transactions = [vtransaction()]
|
||||
self.status = 'Active'
|
||||
self.plan_id = 12
|
||||
self.price = 15
|
||||
self.never_expires = True
|
||||
|
||||
class vpayment_method():
|
||||
def create(*args, **kwargs):
|
||||
return gatewayresult()
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.token = 'liesjeleerdelotje'
|
||||
|
||||
|
||||
class payment_method():
|
||||
def create(*args, **kwargs):
|
||||
return gatewayresult()
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.token = 'liesjeleerdelotje'
|
||||
|
||||
# mock braintree gateway
|
||||
class MockBraintreeGateway:
|
||||
def __init__(self,*args, **kwargs):
|
||||
self.customer = customer()
|
||||
self.client_token = client_token()
|
||||
self.plan = plan()
|
||||
self.transaction = transaction()
|
||||
self.subscription = subscription()
|
||||
self.payment_method = payment_method()
|
||||
|
||||
|
||||
def mocked_gateway(*args, **kwargs):
|
||||
|
||||
return MockBraintreeGateway()
|
||||
|
||||
|
||||
# Mocked Rowingdata
|
||||
|
||||
class mocked_rowingdata(rowingdata):
|
||||
def __init__(self, *args, **kwargs):
|
||||
@@ -210,7 +466,9 @@ class mocked_rowingdata(rowingdata):
|
||||
fig1 = figure.Figure(figsize(12,10))
|
||||
return fig1
|
||||
|
||||
|
||||
|
||||
# Mocked Requests
|
||||
|
||||
# to be done add polar mocks (for email processing)
|
||||
def mocked_requests(*args, **kwargs):
|
||||
with open('rowers/tests/testdata/c2jsonworkoutdata.txt','r') as infile:
|
||||
@@ -496,7 +754,7 @@ def mocked_requests(*args, **kwargs):
|
||||
"token_type": "Bearer",
|
||||
"access_token": "987654321234567898765432123456789",
|
||||
"refresh_token": "1234567898765432112345678987654321",
|
||||
"expires_at": 1531385304
|
||||
"expires_at": arrow.now().timestamp+3600
|
||||
}
|
||||
return MockResponse(json_data,200)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user