Skip to content

Commit 023d766

Browse files
committed
Update django example
1 parent 196d86f commit 023d766

File tree

12 files changed

+94
-95
lines changed

12 files changed

+94
-95
lines changed

examples/miniapps/django/README.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,9 @@ The output should be something like:
105105
githubnavigator/wsgi.py 4 4 0%
106106
manage.py 12 2 83%
107107
web/__init__.py 0 0 100%
108-
web/apps.py 7 0 100%
108+
web/apps.py 6 0 100%
109109
web/tests.py 28 0 100%
110110
web/urls.py 3 0 100%
111111
web/views.py 12 0 100%
112112
---------------------------------------------------
113-
TOTAL 121 10 92%
113+
TOTAL 120 10 92%

examples/miniapps/django/githubnavigator/asgi.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@
1010

1111
from django.core.asgi import get_asgi_application
1212

13-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'githubnavigator.settings')
13+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "githubnavigator.settings")
1414

1515
application = get_asgi_application()

examples/miniapps/django/githubnavigator/services.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ def search_repositories(self, query, limit):
1515
"""Search for repositories and return formatted data."""
1616
repositories = self._github_client.search_repositories(
1717
query=query,
18-
**{'in': 'name'},
18+
**{"in": "name"},
1919
)
2020
return [
2121
self._format_repo(repository)
@@ -25,20 +25,20 @@ def search_repositories(self, query, limit):
2525
def _format_repo(self, repository: Repository):
2626
commits = repository.get_commits()
2727
return {
28-
'url': repository.html_url,
29-
'name': repository.name,
30-
'owner': {
31-
'login': repository.owner.login,
32-
'url': repository.owner.html_url,
33-
'avatar_url': repository.owner.avatar_url,
28+
"url": repository.html_url,
29+
"name": repository.name,
30+
"owner": {
31+
"login": repository.owner.login,
32+
"url": repository.owner.html_url,
33+
"avatar_url": repository.owner.avatar_url,
3434
},
35-
'latest_commit': self._format_commit(commits[0]) if commits else {},
35+
"latest_commit": self._format_commit(commits[0]) if commits else {},
3636
}
3737

3838
def _format_commit(self, commit: Commit):
3939
return {
40-
'sha': commit.sha,
41-
'url': commit.html_url,
42-
'message': commit.commit.message,
43-
'author_name': commit.commit.author.name,
40+
"sha": commit.sha,
41+
"url": commit.html_url,
42+
"message": commit.commit.message,
43+
"author_name": commit.commit.author.name,
4444
}

examples/miniapps/django/githubnavigator/settings.py

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
# See https://docs.djangoproject.com/en/3.0/howto/deployment/checklist/
2121

2222
# SECURITY WARNING: keep the secret key used in production secret!
23-
SECRET_KEY = ')6*iyg26c9l!fvyvwd&3+vyf-dcw)e=5x2t(j)(*c29z@ykhi0'
23+
SECRET_KEY = ")6*iyg26c9l!fvyvwd&3+vyf-dcw)e=5x2t(j)(*c29z@ykhi0"
2424

2525
# SECURITY WARNING: don't run with debug turned on in production!
2626
DEBUG = True
@@ -31,54 +31,54 @@
3131
# Application definition
3232

3333
INSTALLED_APPS = [
34-
'web.apps.WebConfig',
35-
'bootstrap4',
36-
'django.contrib.admin',
37-
'django.contrib.auth',
38-
'django.contrib.contenttypes',
39-
'django.contrib.sessions',
40-
'django.contrib.messages',
41-
'django.contrib.staticfiles',
34+
"web.apps.WebConfig",
35+
"bootstrap4",
36+
"django.contrib.admin",
37+
"django.contrib.auth",
38+
"django.contrib.contenttypes",
39+
"django.contrib.sessions",
40+
"django.contrib.messages",
41+
"django.contrib.staticfiles",
4242
]
4343

4444
MIDDLEWARE = [
45-
'django.middleware.security.SecurityMiddleware',
46-
'django.contrib.sessions.middleware.SessionMiddleware',
47-
'django.middleware.common.CommonMiddleware',
48-
'django.middleware.csrf.CsrfViewMiddleware',
49-
'django.contrib.auth.middleware.AuthenticationMiddleware',
50-
'django.contrib.messages.middleware.MessageMiddleware',
51-
'django.middleware.clickjacking.XFrameOptionsMiddleware',
45+
"django.middleware.security.SecurityMiddleware",
46+
"django.contrib.sessions.middleware.SessionMiddleware",
47+
"django.middleware.common.CommonMiddleware",
48+
"django.middleware.csrf.CsrfViewMiddleware",
49+
"django.contrib.auth.middleware.AuthenticationMiddleware",
50+
"django.contrib.messages.middleware.MessageMiddleware",
51+
"django.middleware.clickjacking.XFrameOptionsMiddleware",
5252
]
5353

54-
ROOT_URLCONF = 'githubnavigator.urls'
54+
ROOT_URLCONF = "githubnavigator.urls"
5555

5656
TEMPLATES = [
5757
{
58-
'BACKEND': 'django.template.backends.django.DjangoTemplates',
59-
'DIRS': [],
60-
'APP_DIRS': True,
61-
'OPTIONS': {
62-
'context_processors': [
63-
'django.template.context_processors.debug',
64-
'django.template.context_processors.request',
65-
'django.contrib.auth.context_processors.auth',
66-
'django.contrib.messages.context_processors.messages',
58+
"BACKEND": "django.template.backends.django.DjangoTemplates",
59+
"DIRS": [],
60+
"APP_DIRS": True,
61+
"OPTIONS": {
62+
"context_processors": [
63+
"django.template.context_processors.debug",
64+
"django.template.context_processors.request",
65+
"django.contrib.auth.context_processors.auth",
66+
"django.contrib.messages.context_processors.messages",
6767
],
6868
},
6969
},
7070
]
7171

72-
WSGI_APPLICATION = 'githubnavigator.wsgi.application'
72+
WSGI_APPLICATION = "githubnavigator.wsgi.application"
7373

7474

7575
# Database
7676
# https://docs.djangoproject.com/en/3.0/ref/settings/#databases
7777

7878
DATABASES = {
79-
'default': {
80-
'ENGINE': 'django.db.backends.sqlite3',
81-
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
79+
"default": {
80+
"ENGINE": "django.db.backends.sqlite3",
81+
"NAME": os.path.join(BASE_DIR, "db.sqlite3"),
8282
}
8383
}
8484

@@ -88,26 +88,26 @@
8888

8989
AUTH_PASSWORD_VALIDATORS = [
9090
{
91-
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
91+
"NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
9292
},
9393
{
94-
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
94+
"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
9595
},
9696
{
97-
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
97+
"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
9898
},
9999
{
100-
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
100+
"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
101101
},
102102
]
103103

104104

105105
# Internationalization
106106
# https://docs.djangoproject.com/en/3.0/topics/i18n/
107107

108-
LANGUAGE_CODE = 'en-us'
108+
LANGUAGE_CODE = "en-us"
109109

110-
TIME_ZONE = 'UTC'
110+
TIME_ZONE = "UTC"
111111

112112
USE_I18N = True
113113

@@ -119,13 +119,13 @@
119119
# Static files (CSS, JavaScript, Images)
120120
# https://docs.djangoproject.com/en/3.0/howto/static-files/
121121

122-
STATIC_URL = '/static/'
122+
STATIC_URL = "/static/"
123123

124124
# Github client settings
125-
GITHUB_TOKEN = os.getenv('GITHUB_TOKEN')
125+
GITHUB_TOKEN = os.getenv("GITHUB_TOKEN")
126126
GITHUB_REQUEST_TIMEOUT = 10
127127

128128
# Search settings
129129
DEFAULT_LIMIT = 5
130-
DEFAULT_QUERY = 'Dependency Injector'
130+
DEFAULT_QUERY = "Dependency Injector"
131131
LIMIT_OPTIONS = [5, 10, 20]

examples/miniapps/django/githubnavigator/urls.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,6 @@
1717
from django.urls import path, include
1818

1919
urlpatterns = [
20-
path('', include('web.urls')),
21-
path('admin/', admin.site.urls),
20+
path("", include("web.urls")),
21+
path("admin/", admin.site.urls),
2222
]

examples/miniapps/django/githubnavigator/wsgi.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@
1111

1212
from django.core.wsgi import get_wsgi_application
1313

14-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'githubnavigator.settings')
14+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "githubnavigator.settings")
1515

1616
application = get_wsgi_application()

examples/miniapps/django/manage.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66

77
def main():
8-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'githubnavigator.settings')
8+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "githubnavigator.settings")
99
try:
1010
from django.core.management import execute_from_command_line
1111
except ImportError as exc:
@@ -17,5 +17,5 @@ def main():
1717
execute_from_command_line(sys.argv)
1818

1919

20-
if __name__ == '__main__':
20+
if __name__ == "__main__":
2121
main()

examples/miniapps/django/web/apps.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@
33
from django.apps import AppConfig
44

55
from githubnavigator import container
6-
from . import views
76

87

98
class WebConfig(AppConfig):
10-
name = 'web'
9+
name = "web"
1110

1211
def ready(self):
13-
container.wire(modules=[views])
12+
container.wire(modules=[".views"])

examples/miniapps/django/web/templates/base.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{% extends 'bootstrap4/bootstrap4.html' %}
1+
{% extends "bootstrap4/bootstrap4.html" %}
22

33
{% load bootstrap4 %}
44

examples/miniapps/django/web/tests.py

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -15,49 +15,49 @@ def test_index(self):
1515
github_client_mock = mock.Mock(spec=Github)
1616
github_client_mock.search_repositories.return_value = [
1717
mock.Mock(
18-
html_url='repo1-url',
19-
name='repo1-name',
18+
html_url="repo1-url",
19+
name="repo1-name",
2020
owner=mock.Mock(
21-
login='owner1-login',
22-
html_url='owner1-url',
23-
avatar_url='owner1-avatar-url',
21+
login="owner1-login",
22+
html_url="owner1-url",
23+
avatar_url="owner1-avatar-url",
2424
),
2525
get_commits=mock.Mock(return_value=[mock.Mock()]),
2626
),
2727
mock.Mock(
28-
html_url='repo2-url',
29-
name='repo2-name',
28+
html_url="repo2-url",
29+
name="repo2-name",
3030
owner=mock.Mock(
31-
login='owner2-login',
32-
html_url='owner2-url',
33-
avatar_url='owner2-avatar-url',
31+
login="owner2-login",
32+
html_url="owner2-url",
33+
avatar_url="owner2-avatar-url",
3434
),
3535
get_commits=mock.Mock(return_value=[mock.Mock()]),
3636
),
3737
]
3838

3939
with container.github_client.override(github_client_mock):
40-
response = self.client.get(reverse('index'))
40+
response = self.client.get(reverse("index"))
4141

42-
self.assertContains(response, 'Results found: 2')
42+
self.assertContains(response, "Results found: 2")
4343

44-
self.assertContains(response, 'repo1-url')
45-
self.assertContains(response, 'repo1-name')
46-
self.assertContains(response, 'owner1-login')
47-
self.assertContains(response, 'owner1-url')
48-
self.assertContains(response, 'owner1-avatar-url')
44+
self.assertContains(response, "repo1-url")
45+
self.assertContains(response, "repo1-name")
46+
self.assertContains(response, "owner1-login")
47+
self.assertContains(response, "owner1-url")
48+
self.assertContains(response, "owner1-avatar-url")
4949

50-
self.assertContains(response, 'repo2-url')
51-
self.assertContains(response, 'repo2-name')
52-
self.assertContains(response, 'owner2-login')
53-
self.assertContains(response, 'owner2-url')
54-
self.assertContains(response, 'owner2-avatar-url')
50+
self.assertContains(response, "repo2-url")
51+
self.assertContains(response, "repo2-name")
52+
self.assertContains(response, "owner2-login")
53+
self.assertContains(response, "owner2-url")
54+
self.assertContains(response, "owner2-avatar-url")
5555

5656
def test_index_no_results(self):
5757
github_client_mock = mock.Mock(spec=Github)
5858
github_client_mock.search_repositories.return_value = []
5959

6060
with container.github_client.override(github_client_mock):
61-
response = self.client.get(reverse('index'))
61+
response = self.client.get(reverse("index"))
6262

63-
self.assertContains(response, 'Results found: 0')
63+
self.assertContains(response, "Results found: 0")

0 commit comments

Comments
 (0)