test_endpoint_docs.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import requests
  2. import nicegui
  3. from nicegui import __version__, ui
  4. from .screen import PORT, Screen
  5. def test_endpoint_documentation_default(screen: Screen):
  6. screen.open('/')
  7. response = requests.get(f'http://localhost:{PORT}/openapi.json')
  8. assert set(response.json()['paths']) == set()
  9. def test_endpoint_documentation_page_only(screen: Screen):
  10. screen.ui_run_kwargs['endpoint_documentation'] = 'page'
  11. screen.open('/')
  12. response = requests.get(f'http://localhost:{PORT}/openapi.json')
  13. assert set(response.json()['paths']) == {'/'}
  14. def test_endpoint_documentation_internal_only(screen: Screen):
  15. screen.ui_run_kwargs['endpoint_documentation'] = 'internal'
  16. screen.open('/')
  17. response = requests.get(f'http://localhost:{PORT}/openapi.json')
  18. assert set(response.json()['paths']) == {
  19. f'/_nicegui/{__version__}/libraries/{{key}}',
  20. f'/_nicegui/{__version__}/components/{{key}}',
  21. }
  22. def test_endpoint_documentation_all(screen: Screen):
  23. screen.ui_run_kwargs['endpoint_documentation'] = 'all'
  24. screen.open('/')
  25. response = requests.get(f'http://localhost:{PORT}/openapi.json')
  26. assert set(response.json()['paths']) == {
  27. '/',
  28. f'/_nicegui/{__version__}/libraries/{{key}}',
  29. f'/_nicegui/{__version__}/components/{{key}}',
  30. }