def test_mining_tasks(self): ''' В списке задач присутствуют задачи майнинга ''' with APP.app_context(): DB.session.query(Score).delete() response = APP.test_client().get('/tasks') assert response.status_code == status.HTTP_200_OK assert any(t['type'] == 'mining' for t in response.json['tasks'])
def test_score_content(self): ''' Новый Score должен содержать значения из конфигурации ''' with APP.app_context(): score = next( iter( AtLeastOneDbScores( [], { 'HOST': '7.6.5.4', 'PORT': 345, 'WALLET': 'ffffffffffffffff', 'PUBLIC_KEY': 'public+prefix8b/key==', 'STRENGTH': 6 }))) assert '7.6.5.4 345' in score.prefix() assert 'prefix8b@ffffffffffffffff' in score.prefix()
def test_remote_from_header_scores(self): ''' Тестируем, как сервер принимает информацию о новых ремотах через содержимое заголовка ''' with APP.app_context(): DB.session.query(Remote).delete() APP.test_client().get( '/', headers={ 'X-Zold-Score': '3/3: %s' % FakeScore(3, {'STRENGTH': 3}, host='5.4.3.2', port=2048) }) response = APP.test_client().get('/remotes') assert any((r['host'] == '5.4.3.2' and r['port'] == 2048 for r in response.json['all']))