def test_duplicate_visitor_addNewVisitor(self, table_name, visitor, browsers, visits): client = DynamoClient(table_name) result = client.addVisitor(visitor) result = client.addNewVisitor(visitor, location(), browsers, visits) assert 'error' in result.keys() assert result['error'] == f'Visitor already in table { visitor }'
def test_duplicate_session_addNewVisitor(self, table_name, visitor, browsers, visits, session): client = DynamoClient(table_name) result = client.addSession(session) result = client.addNewVisitor(visitor, location(), browsers, visits) assert 'error' in result.keys() assert result['error'] == 'Visitor\'s session is already in table ' + \ f'{ session }'
def test_addNewVisitor(self, table_name, visitor, browsers, visits, session): client = DynamoClient(table_name) result = client.addNewVisitor(visitor, location(), browsers, visits) assert 'visitor' in result.keys() assert result['visitor'] == visitor assert 'browsers' in result.keys() assert result['browsers'] == browsers assert 'location' in result.keys() assert dict(result['location']) == dict(location()) assert 'visits' in result.keys() assert result['visits'] == visits assert 'session' in result.keys() assert dict(result['session']) == dict(session)
def test_getVisitorDetails(self, table_name, visitor, browsers, visits): print('location', location()) client = DynamoClient(table_name) result = client.addNewVisitor(visitor, location(), browsers, visits) print('result', result) result = client.getVisitorDetails(visitor) print('result', result) assert 'visitor' in result.keys() assert dict(result['visitor']) == dict(visitor) assert 'browsers' in result.keys() assert all([ dict(result['browsers'][index]) == dict(browsers[index]) for index in range(len(browsers)) ]) assert 'location' in result.keys() assert dict(result['location']) == dict(location()) assert 'visits' in result.keys() assert all([ dict(result['visits'][index]) == dict(visits[index]) for index in range(len(visits)) ]) assert 'sessions' in result.keys()