planetmint/tests/web/test_info.py
Jürgen Eckel fa2c8a5cc5
Ws blocks (#106)
* added another dispatcher to server block changes

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed missing variable definition

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* made the definition of POINON_PILL unique

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* changed some fixtures for web tests, fixed linter errors, updated aiohttp version

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

* added block hash to the block notification

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed misspelling issue

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed previous merge issues

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed websocket startup issues

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed queuing issue and disabled one tests

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* increased version number

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed docs req deps

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed linting issues

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed linting warnings

Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>

* fixed aiohttp.web.run_app call

Signed-off-by: Lorenz Herzberger <lorenzherzberger@gmail.com>

Co-authored-by: Lorenz Herzberger <lorenzherzberger@gmail.com>
2022-05-16 17:01:57 +02:00

57 lines
2.1 KiB
Python

# Copyright © 2020 Interplanetary Database Association e.V.,
# Planetmint and IPDB software contributors.
# SPDX-License-Identifier: (Apache-2.0 AND CC-BY-4.0)
# Code is Apache-2.0 and docs are CC-BY-4.0
from unittest import mock
@mock.patch('planetmint.version.__short_version__', 'tst')
@mock.patch('planetmint.version.__version__', 'tsttst')
def test_api_root_endpoint(client, wsserver_base_url):
res = client.get('/')
docs_url = ['https://docs.planetmint.com/projects/server/en/vtsttst',
'/http-client-server-api.html']
assert res.json == {
'api': {
'v1': {
'docs': ''.join(docs_url),
'transactions': '/api/v1/transactions/',
'blocks': '/api/v1/blocks/',
'assets': '/api/v1/assets/',
'outputs': '/api/v1/outputs/',
'streams': '{}/api/v1/streams/valid_transactions'.format(
wsserver_base_url),
'streamedblocks': '{}/api/v1/streams/valid_blocks'.format(
wsserver_base_url),
'metadata': '/api/v1/metadata/',
'validators': '/api/v1/validators',
}
},
'docs': 'https://docs.planetmint.com/projects/server/en/vtsttst/',
'version': 'tsttst',
'software': 'Planetmint',
}
@mock.patch('planetmint.version.__short_version__', 'tst')
@mock.patch('planetmint.version.__version__', 'tsttst')
def test_api_v1_endpoint(client, wsserver_base_url):
docs_url = ['https://docs.planetmint.com/projects/server/en/vtsttst',
'/http-client-server-api.html']
api_v1_info = {
'docs': ''.join(docs_url),
'transactions': '/transactions/',
'blocks': '/blocks/',
'assets': '/assets/',
'outputs': '/outputs/',
'streams': '{}/api/v1/streams/valid_transactions'.format(
wsserver_base_url),
'streamedblocks': '{}/api/v1/streams/valid_blocks'.format(
wsserver_base_url),
'metadata': '/metadata/',
'validators': '/validators'
}
res = client.get('/api/v1')
assert res.json == api_v1_info