Source code for gpf_instance.tests.test_version_api

# pylint: disable=W0621,C0114,C0116,W0212,W0613
from pathlib import Path

import pytest
import pytest_mock
from django.test import Client
from rest_framework import status

from gpf_instance.gpf_instance import WGPFInstance


[docs] @pytest.fixture() def mock_instance( mocker: pytest_mock.MockerFixture, t4c8_wgpf_instance: WGPFInstance, tmp_path: Path, ) -> WGPFInstance: main_path = Path(tmp_path, "main_description.md") main_path.write_text("main description") mocker.patch.object( t4c8_wgpf_instance, "get_main_description_path", return_value=main_path, ) about_path = Path(tmp_path, "about_description.md") about_path.write_text("about description") mocker.patch.object( t4c8_wgpf_instance, "get_about_description_path", return_value=about_path, ) return t4c8_wgpf_instance
[docs] def test_get_gpf_version( mock_instance: WGPFInstance, # noqa: ARG001 anonymous_client: Client, ) -> None: """Try to get gpf version.""" url = "/api/v3/instance/version" response = anonymous_client.get(url) assert response.status_code is status.HTTP_200_OK assert response.json().get("version") is not None
[docs] def test_update_gpf_main_description_anonymous( mock_instance: WGPFInstance, # noqa: ARG001 anonymous_client: Client, ) -> None: """Try to get gpf version.""" url = "/api/v3/instance/description" response = anonymous_client.post(url, {"content": "blagalkebgab"}) assert response.status_code is status.HTTP_403_FORBIDDEN
[docs] def test_gpf_main_description( mock_instance: WGPFInstance, # noqa: ARG001 admin_client: Client, ) -> None: """Try to get gpf version.""" url = "/api/v3/instance/description" response = admin_client.get(url) assert response.status_code is status.HTTP_200_OK assert response.json().get("content") == "main description" response = admin_client.post(url, {"content": "blagalkebgab"}) assert response.status_code is status.HTTP_200_OK response = admin_client.get(url) assert response.status_code is status.HTTP_200_OK assert response.json().get("content") == "blagalkebgab"
[docs] def test_update_gpf_about_description_anonymous( mock_instance: WGPFInstance, # noqa: ARG001 anonymous_client: Client, ) -> None: """Try to get gpf version.""" url = "/api/v3/instance/about" response = anonymous_client.post(url, {"content": "blagalkebgab"}) assert response.status_code is status.HTTP_403_FORBIDDEN
[docs] def test_gpf_about_description( mock_instance: WGPFInstance, # noqa: ARG001 admin_client: Client, ) -> None: """Try to get gpf version.""" url = "/api/v3/instance/about" response = admin_client.get(url) assert response.status_code is status.HTTP_200_OK assert response.json().get("content") == "about description" response = admin_client.post(url, {"content": "blagalkebgab"}) assert response.status_code is status.HTTP_200_OK response = admin_client.get(url) assert response.status_code is status.HTTP_200_OK assert response.json().get("content") == "blagalkebgab"