diff options
Diffstat (limited to 'pydis_site')
| -rw-r--r-- | pydis_site/apps/content/tests/test_utils.py | 40 | ||||
| -rw-r--r-- | pydis_site/apps/content/tests/test_views.py | 10 | ||||
| -rw-r--r-- | pydis_site/apps/content/utils.py | 38 | ||||
| -rw-r--r-- | pydis_site/apps/content/views/article_category.py | 1 | ||||
| -rw-r--r-- | pydis_site/templates/content/article.html | 18 | 
5 files changed, 1 insertions, 106 deletions
| diff --git a/pydis_site/apps/content/tests/test_utils.py b/pydis_site/apps/content/tests/test_utils.py index 85f1139a..26b2bba9 100644 --- a/pydis_site/apps/content/tests/test_utils.py +++ b/pydis_site/apps/content/tests/test_utils.py @@ -146,43 +146,3 @@ class TestGetArticle(TestCase):          """Check does this raise Http404 when category don't exist."""          with self.assertRaises(Http404):              utils.get_article(["invalid", "some-guide"]) - - -class GetGitHubInformationTests(TestCase): -    @patch("pydis_site.apps.content.utils.requests.get") -    @patch("pydis_site.apps.content.utils.COMMITS_URL", "foobar") -    def test_call_get_github_information_requests_get(self, requests_get_mock): -        """Check does this call requests.get function with proper URL.""" -        utils.get_github_information(["foo"]) -        requests_get_mock.assert_called_once_with("foobar") - -    @patch("pydis_site.apps.content.utils.requests.get") -    def test_github_status_code_200_response(self, requests_get_mock): -        """Check does this return provided modified date and contributors.""" -        requests_get_mock.return_value = MagicMock(status_code=200) -        requests_get_mock.return_value.json.return_value = [{ -            "commit": { -                "committer": { -                    "date": datetime(2020, 10, 1).isoformat(), -                    "name": "foobar", -                } -            }, -            "committer": { -                "html_url": "abc1234" -            } -        }] -        result = utils.get_github_information(["foo"]) -        self.assertEqual(result, { -            "last_modified": datetime(2020, 10, 1).strftime("%dth %B %Y"), -            "contributors": {"foobar": "abc1234"} -        }) - -    @patch("pydis_site.apps.content.utils.requests.get") -    def test_github_other_status_code_response(self, requests_get_mock): -        """Check does this return provided modified date and contributors.""" -        requests_get_mock.return_value = MagicMock(status_code=404) -        result = utils.get_github_information(["foo"]) -        self.assertEqual(result, { -            "last_modified": "N/A", -            "contributors": {} -        }) diff --git a/pydis_site/apps/content/tests/test_views.py b/pydis_site/apps/content/tests/test_views.py index 98b99b83..55bfb8ea 100644 --- a/pydis_site/apps/content/tests/test_views.py +++ b/pydis_site/apps/content/tests/test_views.py @@ -30,8 +30,7 @@ class TestArticleOrCategoryView(TestCase):      @override_settings(ARTICLES_PATH=BASE_PATH)      @patch("pydis_site.apps.content.views.article_category.utils.get_article")      @patch("pydis_site.apps.content.views.article_category.utils.get_category") -    @patch("pydis_site.apps.content.views.article_category.utils.get_github_information") -    def test_article_return_code_200(self, gh_info_mock, get_category_mock, get_article_mock): +    def test_article_return_code_200(self, get_category_mock, get_article_mock):          get_article_mock.return_value = {"guide": "test", "metadata": {}}          url = reverse("content:article_category", args=["test2"]) @@ -39,7 +38,6 @@ class TestArticleOrCategoryView(TestCase):          self.assertEqual(response.status_code, 200)          get_category_mock.assert_not_called()          get_article_mock.assert_called_once() -        gh_info_mock.assert_called_once()      @patch("pydis_site.apps.content.views.article_category.utils.get_article")      @patch("pydis_site.apps.content.views.article_category.utils.get_category") @@ -99,11 +97,9 @@ class TestArticleOrCategoryView(TestCase):      @patch("pydis_site.apps.content.views.article_category.utils.get_article")      @patch("pydis_site.apps.content.views.article_category.utils.get_category") -    @patch("pydis_site.apps.content.views.article_category.utils.get_github_information")      @override_settings(ARTICLES_PATH=BASE_PATH)      def test_valid_category_article_code_200(              self, -            gh_info_mock,              get_category_mock,              get_article_mock      ): @@ -115,15 +111,12 @@ class TestArticleOrCategoryView(TestCase):          self.assertEqual(response.status_code, 200)          get_article_mock.assert_called_once()          self.assertEqual(get_category_mock.call_count, 2) -        gh_info_mock.assert_called_once()      @patch("pydis_site.apps.content.views.article_category.utils.get_article")      @patch("pydis_site.apps.content.views.article_category.utils.get_category") -    @patch("pydis_site.apps.content.views.article_category.utils.get_github_information")      @override_settings(ARTICLES_PATH=BASE_PATH)      def test_invalid_category_article_code_404(              self, -            gh_info_mock,              get_category_mock,              get_article_mock      ): @@ -135,7 +128,6 @@ class TestArticleOrCategoryView(TestCase):          self.assertEqual(response.status_code, 404)          get_article_mock.assert_not_called()          get_category_mock.assert_not_called() -        gh_info_mock.assert_not_called()      @override_settings(ARTICLES_PATH=BASE_PATH)      def test_article_category_template_names(self): diff --git a/pydis_site/apps/content/utils.py b/pydis_site/apps/content/utils.py index a89db83c..305d26b5 100644 --- a/pydis_site/apps/content/utils.py +++ b/pydis_site/apps/content/utils.py @@ -1,16 +1,11 @@  import os  from typing import Dict, List, Optional, Union -import requests  import yaml -from dateutil import parser  from django.conf import settings  from django.http import Http404  from markdown2 import markdown -COMMITS_URL = "https://api.github.com/repos/{owner}/{name}/commits?path={path}&sha={branch}" -BASE_ARTICLES_LOCATION = "pydis_site/apps/content/resources/content/" -  def get_category(path: List[str]) -> Dict[str, str]:      """Load category information by name from _info.yml.""" @@ -77,36 +72,3 @@ def get_article(path: List[str]) -> Dict[str, Union[str, Dict]]:      )      return {"article": str(html), "metadata": html.metadata} - - -def get_github_information( -        path: List[str] -) -> Dict[str, Union[List[str], str]]: -    """Get article last modified date and contributors from GitHub.""" -    result = requests.get( -        COMMITS_URL.format( -            owner=settings.SITE_REPOSITORY_OWNER, -            name=settings.SITE_REPOSITORY_NAME, -            branch=settings.SITE_REPOSITORY_BRANCH, -            path=( -                f"{BASE_ARTICLES_LOCATION}{'/'.join(path[:-1])}" -                f"{'/' if len(path) > 1 else ''}{path[-1]}.md" -            ) -        ) -    ) - -    if result.status_code == 200 and len(result.json()): -        data = result.json() -        return { -            "last_modified": parser.isoparse( -                data[0]["commit"]["committer"]["date"] -            ).strftime("%dth %B %Y"), -            "contributors": { -                c["commit"]["committer"]["name"]: c["committer"]["html_url"] for c in data -            } -        } -    else: -        return { -            "last_modified": "N/A", -            "contributors": {} -        } diff --git a/pydis_site/apps/content/views/article_category.py b/pydis_site/apps/content/views/article_category.py index 0c22b5e8..51b1def2 100644 --- a/pydis_site/apps/content/views/article_category.py +++ b/pydis_site/apps/content/views/article_category.py @@ -54,7 +54,6 @@ class ArticleOrCategoryView(TemplateView):                      article_result["metadata"].get("relevant_link_values", "").split(",")                  ) if link != "" and value != ""              } -            context["github_data"] = utils.get_github_information(location)          else:              raise Http404 diff --git a/pydis_site/templates/content/article.html b/pydis_site/templates/content/article.html index fcb29f32..bcdee95a 100644 --- a/pydis_site/templates/content/article.html +++ b/pydis_site/templates/content/article.html @@ -34,29 +34,11 @@          <div class="content">              <div class="container">                  <h1 class="title">{{ article.metadata.title }}</h1> -                <p class="subtitle is-size-6"><strong>Last modified:</strong> {{ github_data.last_modified }}</p>                  <div class="columns is-variable is-8">                      <div class="column is-two-thirds">                          {{ article.article|safe }}                      </div>                      <div class="column"> -                        <div class="card"> -                            <div class="card-header"> -                                <p class="card-header-title">Contributors</p> -                            </div> -                            <div class="card-content"> -                                {% if github_data.contributors|length %} -                                    <div class="tags"> -                                        {% for user, profile_url in github_data.contributors.items %} -                                            <span class="tag"><a href="{{ profile_url }}">{{ user }}</a></span> -                                        {% endfor %} -                                    </div> -                                {% else %} -                                <p>N/A</p> -                                {% endif %} -                            </div> -                        </div> -                          {% if relevant_links|length > 0 %}                          <div class="box">                              <p class="menu-label">Relevant links</p> | 
