Esempio n. 1
0
def test_connect_step_device_phone():
    client = Client('test_id', 'test_secret', access_token='test_chase')
    response = client.connect_step('chase', None, options={
        'send_method': {'type': 'phone'}
    })
    assert response.status_code == 201
    assert to_json(response)['type'] == 'device'
    assert to_json(response)['mfa']['message'] == 'Code sent to xxx-xxx-5309'
Esempio n. 2
0
def test_connect_step_device_phone():
    client = Client('test_id', 'test_secret', access_token='test_chase')
    response = client.connect_step('chase',
                                   None,
                                   options={'send_method': {
                                       'type': 'phone'
                                   }})
    assert response.status_code == 201
    assert to_json(response)['type'] == 'device'
    assert to_json(response)['mfa']['message'] == 'Code sent to xxx-xxx-5309'
Esempio n. 3
0
 def inner_func(self, *args, **kwargs):
     response = func(self, *args, **kwargs)
     if response.ok:
         json_data = to_json(response)
         self.access_token = json_data.get('access_token',
                                           self.access_token)
     return response
Esempio n. 4
0
def test_institution():
    client = Client('test_id', 'test_secret')
    response = client.institution(
        to_json(client.institutions())[0]['id']
    )

    assert response.status_code == 200
Esempio n. 5
0
def http_request(url, method=None, data=None, suppress_errors=False):
    response = _base_http_request(url, method, data or {})
    ERROR = PLAID_ERROR_MAP.get(response.status_code)
    if not suppress_errors and ERROR is not None:
        json_data = to_json(response)
        raise ERROR(json_data['resolve'], json_data['code'])
    else:
        return response
Esempio n. 6
0
def http_request(url, method=None, data=None, suppress_errors=False):
    response = _base_http_request(url, method, data or {})
    ERROR = PLAID_ERROR_MAP.get(response.status_code)
    if not suppress_errors and ERROR is not None:
        json_data = to_json(response)
        raise ERROR(json_data['resolve'], json_data['code'])
    else:
        return response
Esempio n. 7
0
def test_connect_mfa_list():
    client = Client('test_id', 'test_secret')
    # These credentials erroneously still force mfa in the sandbox
    # Should disambiguate by disallowing institution on API level
    # for this particular calling
    response = client.connect('chase', no_mfa_credentials)
    assert response.status_code == 201
    assert to_json(response)['type'] == 'list'
Esempio n. 8
0
def test_connect_mfa_list():
    client = Client('test_id', 'test_secret')
    # These credentials erroneously still force mfa in the sandbox
    # Should disambiguate by disallowing institution on API level
    # for this particular calling
    response = client.connect('chase', no_mfa_credentials)
    assert response.status_code == 201
    assert to_json(response)['type'] == 'list'
Esempio n. 9
0
def test_ResourceNotFound_categories_with_suppressed_error():
    Client.config({'suppress_http_errors': True})
    client = Client('test_id', 'test_secret')
    response = client.category('pnc')
    assert response.status_code == 404
    assert (
        to_json(response)['message'] == 'unable to find category'
    )
Esempio n. 10
0
 def inner_func(self, *args, **kwargs):
     response = func(self, *args, **kwargs)
     if response.ok:
         json_data = to_json(response)
         self.access_token = json_data.get(
             'access_token',
             self.access_token
         )
     return response
Esempio n. 11
0
def test_exchange():
    client = Client('test_id', 'test_secret')
    response = client.exchange_token('test,chase,connected')
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_chase'
    assert client.access_token == 'test_chase'
Esempio n. 12
0
def test_connect_step_question_loop():
    client = Client('test_id', 'test_secret', access_token='test_bofa')
    response = client.connect_step('bofa', 'again')
    assert response.status_code == 201
    assert to_json(response)['type'] == 'questions'
Esempio n. 13
0
def test_upgrade():
    client = Client('test_id', 'test_secret', access_token='test_bofa')
    response = client.upgrade('info')
    assert response.status_code == 200
    assert 'info' in to_json(response).keys()
Esempio n. 14
0
def test_institution_search_with_bad_id():
    client = Client('test_id', 'test_secret')
    response = client.institution_search(institution_id='bad')
    assert response.status_code == 200
    assert len(to_json(response)) == 0
Esempio n. 15
0
def test_institution():
    client = Client('test_id', 'test_secret')
    response = client.institution(to_json(client.institutions())[0]['id'])

    assert response.status_code == 200
Esempio n. 16
0
def test_institution_search_with_bad_id():
    client = Client('test_id', 'test_secret')
    response = client.institution_search(institution_id='bad')
    assert response.status_code == 200
    assert len(to_json(response)) == 0
Esempio n. 17
0
def test_institution_search_with_bad_product():
    client = Client('test_id', 'test_secret')
    response = client.institution_search('wells fargo', 'bad')
    assert response.status_code == 200
    assert len(to_json(response)) == 0
Esempio n. 18
0
def test_connect_mfa_question():
    client = Client('test_id', 'test_secret')
    response = client.connect('bofa', no_mfa_credentials)
    assert response.status_code == 201
    assert to_json(response)['type'] == 'questions'
Esempio n. 19
0
def test_auth_no_mfa():
    client = Client('test_id', 'test_secret')
    response = client.auth('wells', no_mfa_credentials)
    assert to_json(response)['access_token'] == 'test_wells'
Esempio n. 20
0
def test_auth_delete():
    client = Client('test_id', 'test_secret', access_token='test_chase')
    response = client.auth_delete()
    assert response.status_code == 200
    assert to_json(response)['message'] == 'Successfully removed from system'
Esempio n. 21
0
def test_connect_no_mfa():
    client = Client('test_id', 'test_secret')
    response = client.connect('amex', no_mfa_credentials)
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_amex'
Esempio n. 22
0
def test_auth_step():
    client = Client('test_id', 'test_secret', access_token='test_pnc')
    response = client.auth_step('pnc', 'tomato')
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_pnc'
Esempio n. 23
0
def test_ResourceNotFound_categories_with_suppressed_error():
    Client.config({'suppress_http_errors': True})
    client = Client('test_id', 'test_secret')
    response = client.category('pnc')
    assert response.status_code == 404
    assert (to_json(response)['message'] == 'unable to find category')
Esempio n. 24
0
def test_auth_mfa():
    client = Client('test_id', 'test_secret')
    response = client.auth('pnc', no_mfa_credentials)
    assert response.status_code == 201
    assert to_json(response)['type'] == 'questions'
Esempio n. 25
0
def test_auth_no_mfa():
    client = Client('test_id', 'test_secret')
    response = client.auth('wells', no_mfa_credentials)
    assert to_json(response)['access_token'] == 'test_wells'
Esempio n. 26
0
def test_connect_step_question():
    client = Client('test_id', 'test_secret', access_token='test_bofa')
    response = client.connect_step('bofa', 'tomato')
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_bofa'
Esempio n. 27
0
def test_get_info():
    client = Client('test_id', 'test_secret', access_token='test_bofa')
    response = client.info_get()
    assert response.status_code == 200
    assert 'info' in to_json(response)
    assert 'names' in to_json(response)['info']
Esempio n. 28
0
def test_auth_step():
    client = Client('test_id', 'test_secret', access_token='test_pnc')
    response = client.auth_step('pnc', 'tomato')
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_pnc'
Esempio n. 29
0
def test_institution_search_with_multi_tokens():
    client = Client('test_id', 'test_secret')
    response = client.institution_search('wells fargo', 'auth')
    assert response.status_code == 200
    assert to_json(response)[0]['name'] == 'Wells Fargo'
Esempio n. 30
0
def test_connect_no_mfa():
    client = Client('test_id', 'test_secret')
    response = client.connect('amex', no_mfa_credentials)
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_amex'
Esempio n. 31
0
def test_auth_mfa():
    client = Client('test_id', 'test_secret')
    response = client.auth('pnc', no_mfa_credentials)
    assert response.status_code == 201
    assert to_json(response)['type'] == 'questions'
Esempio n. 32
0
def test_exchange():
    client = Client('test_id', 'test_secret')
    response = client.exchange_token('test,chase,connected')
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_chase'
    assert client.access_token == 'test_chase'
Esempio n. 33
0
def test_connect_step_question_loop():
    client = Client('test_id', 'test_secret', access_token='test_bofa')
    response = client.connect_step('bofa', 'again')
    assert response.status_code == 201
    assert to_json(response)['type'] == 'questions'
Esempio n. 34
0
def test_get_info():
    client = Client('test_id', 'test_secret', access_token='test_bofa')
    response = client.info_get()
    assert response.status_code == 200
    assert 'info' in to_json(response)
    assert 'names' in to_json(response)['info']
Esempio n. 35
0
def test_auth_delete():
    client = Client('test_id', 'test_secret', access_token='test_chase')
    response = client.auth_delete()
    assert response.status_code == 200
    assert to_json(response)['message'] == 'Successfully removed from system'
Esempio n. 36
0
def test_risk_step():
    client = Client('test_id', 'test_secret', access_token='test_chase')
    response = client.risk_step('chase', '1234')
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_chase'
Esempio n. 37
0
def test_connect_mfa_question():
    client = Client('test_id', 'test_secret')
    response = client.connect('bofa', no_mfa_credentials)
    assert response.status_code == 201
    assert to_json(response)['type'] == 'questions'
Esempio n. 38
0
def test_institution_search_with_bad_product():
    client = Client('test_id', 'test_secret')
    response = client.institution_search('wells fargo', 'bad')
    assert response.status_code == 200
    assert len(to_json(response)) == 0
Esempio n. 39
0
def test_connect_step_question():
    client = Client('test_id', 'test_secret', access_token='test_bofa')
    response = client.connect_step('bofa', 'tomato')
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_bofa'
Esempio n. 40
0
def test_upgrade():
    client = Client('test_id', 'test_secret', access_token='test_bofa')
    response = client.upgrade('info')
    assert response.status_code == 200
    assert 'info' in to_json(response).keys()
Esempio n. 41
0
def test_institution_search_with_multi_tokens():
    client = Client('test_id', 'test_secret')
    response = client.institution_search('wells fargo', 'auth')
    assert response.status_code == 200
    assert to_json(response)[0]['name'] == 'Wells Fargo'
Esempio n. 42
0
def test_risk_step():
    client = Client('test_id', 'test_secret', access_token='test_chase')
    response = client.risk_step('chase', '1234')
    assert response.status_code == 200
    assert to_json(response)['access_token'] == 'test_chase'