Skip to content

Commit 586bbe0

Browse files
author
Sven Groot
committed
Initial ruff check --fix
1 parent a1e3853 commit 586bbe0

19 files changed

+101
-76
lines changed

inertia/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
from .http import inertia, render, location, InertiaResponse
2-
from .utils import lazy, optional, defer, merge
1+
from .http import InertiaResponse, inertia, location, render
32
from .share import share
3+
from .utils import defer, lazy, merge, optional

inertia/helpers.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
def deep_transform_callables(prop):
22
if not isinstance(prop, dict):
33
return prop() if callable(prop) else prop
4-
4+
55
for key in list(prop.keys()):
66
prop[key] = deep_transform_callables(prop[key])
77

@@ -10,5 +10,5 @@ def deep_transform_callables(prop):
1010
def validate_type(value, name, expected_type):
1111
if not isinstance(value, expected_type):
1212
raise TypeError(f"Expected {expected_type.__name__} for {name}, got {type(value).__name__}")
13-
13+
1414
return value

inertia/http.py

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1+
from functools import wraps
12
from http import HTTPStatus
2-
from django.template.loader import render_to_string
3-
from django.http import HttpResponse
4-
from .settings import settings
53
from json import dumps as json_encode
6-
from functools import wraps
4+
75
import requests
8-
from .prop_classes import IgnoreOnFirstLoadProp, DeferredProp, MergeableProp
6+
from django.http import HttpResponse
7+
from django.template.loader import render_to_string
8+
99
from .helpers import deep_transform_callables, validate_type
10+
from .prop_classes import DeferredProp, IgnoreOnFirstLoadProp, MergeableProp
11+
from .settings import settings
1012

1113
INERTIA_REQUEST_ENCRYPT_HISTORY = "_inertia_encrypt_history"
1214
INERTIA_SESSION_CLEAR_HISTORY = "_inertia_clear_history"
@@ -17,27 +19,27 @@
1719
class InertiaRequest:
1820
def __init__(self, request):
1921
self.request = request
20-
22+
2123
def __getattr__(self, name):
2224
return getattr(self.request, name)
23-
25+
2426
@property
2527
def headers(self):
2628
return self.request.headers
27-
29+
2830
@property
2931
def inertia(self):
3032
return self.request.inertia.all() if hasattr(self.request, 'inertia') else {}
31-
33+
3234
def is_a_partial_render(self, component):
3335
return 'X-Inertia-Partial-Data' in self.headers and self.headers.get('X-Inertia-Partial-Component', '') == component
3436

3537
def partial_keys(self):
3638
return self.headers.get('X-Inertia-Partial-Data', '').split(',')
37-
39+
3840
def reset_keys(self):
3941
return self.headers.get('X-Inertia-Reset', '').split(',')
40-
42+
4143
def is_inertia(self):
4244
return 'X-Inertia' in self.headers
4345

@@ -55,7 +57,7 @@ def page_data(self):
5557
expected_type=bool,
5658
name="clear_history"
5759
)
58-
60+
5961
_page = {
6062
'component': self.component,
6163
'props': self.build_props(),
@@ -68,11 +70,11 @@ def page_data(self):
6870
_deferred_props = self.build_deferred_props()
6971
if _deferred_props:
7072
_page['deferredProps'] = _deferred_props
71-
73+
7274
_merge_props = self.build_merge_props()
7375
if _merge_props:
7476
_page['mergeProps'] = _merge_props
75-
77+
7678
return _page
7779

7880
def build_props(self):
@@ -104,15 +106,15 @@ def build_deferred_props(self):
104106

105107
def build_merge_props(self):
106108
return [
107-
key
109+
key
108110
for key, prop in self.props.items()
109111
if (
110112
isinstance(prop, MergeableProp)
111113
and prop.should_merge()
112114
and key not in self.request.reset_keys()
113115
)
114116
]
115-
117+
116118
def build_first_load(self, data):
117119
context, template = self.build_first_load_context_and_template(data)
118120

@@ -126,10 +128,10 @@ def build_first_load(self, data):
126128
using=None,
127129
)
128130

129-
131+
130132
def build_first_load_context_and_template(self, data):
131133
if settings.INERTIA_SSR_ENABLED:
132-
try:
134+
try:
133135
response = requests.post(
134136
f"{settings.INERTIA_SSR_URL}/render",
135137
data=data,
@@ -142,7 +144,7 @@ def build_first_load_context_and_template(self, data):
142144
}, INERTIA_SSR_TEMPLATE
143145
except Exception:
144146
pass
145-
147+
146148
return {
147149
'page': data,
148150
**(self.template_data),
@@ -169,9 +171,9 @@ def __init__(self, request, component, props=None, template_data=None, headers=N
169171
'Content-Type': 'application/json',
170172
}
171173
content = data
172-
else:
174+
else:
173175
content = self.build_first_load(data)
174-
176+
175177
super().__init__(
176178
content=content,
177179
headers=_headers,
@@ -209,7 +211,7 @@ def inner(request, *args, **kwargs):
209211
return props
210212

211213
return render(request, component, props)
212-
214+
213215
return inner
214-
216+
215217
return decorator

inertia/middleware.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
1-
from .settings import settings
21
from django.contrib import messages
3-
from django.http import HttpResponse
42
from django.middleware.csrf import get_token
3+
54
from .http import location
5+
from .settings import settings
6+
67

78
class InertiaMiddleware:
89
def __init__(self, get_response):
910
self.get_response = get_response
10-
11+
1112
def __call__(self, request):
1213
response = self.get_response(request)
1314

inertia/prop_classes.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
from abc import ABC, abstractmethod
2-
import warnings
2+
33

44
class CallableProp(ABC):
55
def __init__(self, prop):
66
self.prop = prop
7-
7+
88
def __call__(self):
99
return self.prop() if callable(self.prop) else self.prop
1010

@@ -24,7 +24,7 @@ def __init__(self, prop, group, merge=False):
2424
super().__init__(prop)
2525
self.group = group
2626
self.merge = merge
27-
27+
2828
def should_merge(self):
2929
return self.merge
3030

inertia/settings.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from django.conf import settings as django_settings
2+
23
from .utils import InertiaJsonEncoder
34

45
__all__ = ['settings']
@@ -9,7 +10,7 @@ class InertiaSettings:
910
INERTIA_SSR_URL = 'http://localhost:13714'
1011
INERTIA_SSR_ENABLED = False
1112
INERTIA_ENCRYPT_HISTORY = False
12-
13+
1314
def __getattribute__(self, name):
1415
try:
1516
return getattr(django_settings, name)

inertia/test.py

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,30 @@
1-
from django.test import TestCase, Client
1+
from json import dumps, loads
22
from unittest.mock import patch
3+
34
from django.template.loader import render_to_string as base_render_to_string
4-
from inertia.settings import settings
5-
from json import dumps, loads
5+
from django.test import Client, TestCase
66
from django.utils.html import escape
77

8+
from inertia.settings import settings
9+
10+
811
class ClientWithLastResponse:
912
def __init__(self, client):
1013
self.client = client
1114
self.last_response = None
12-
15+
1316
def get(self, *args, **kwargs):
1417
self.last_response = self.client.get(*args, **kwargs)
1518
return self.last_response
16-
19+
1720
def __getattr__(self, name):
1821
return getattr(self.client, name)
1922

2023
class BaseInertiaTestCase:
2124
def setUp(self):
2225
self.inertia = ClientWithLastResponse(Client(HTTP_X_INERTIA=True))
2326
self.client = ClientWithLastResponse(Client())
24-
27+
2528
def last_response(self):
2629
return self.inertia.last_response or self.client.last_response
2730

@@ -41,15 +44,15 @@ def tearDown(self):
4144

4245
def page(self):
4346
page_data = self.mock_render.call_args[0][1]['page'] if self.mock_render.call_args else self.last_response().content
44-
47+
4548
return loads(page_data)
4649

4750
def props(self):
4851
return self.page()['props']
49-
52+
5053
def merge_props(self):
5154
return self.page()['mergeProps']
52-
55+
5356
def deferred_props(self):
5457
return self.page()['deferredProps']
5558

@@ -87,10 +90,10 @@ def inertia_page(url, component='TestComponent', props={}, template_data={}, def
8790

8891
if deferred_props:
8992
_page['deferredProps'] = deferred_props
90-
93+
9194
if merge_props:
9295
_page['mergeProps'] = merge_props
93-
96+
9497
return _page
9598

9699
def inertia_div(*args, **kwargs):

inertia/tests/test_encoder.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
1-
from inertia.tests.testapp.models import User
1+
from datetime import date, datetime
2+
from json import dumps
3+
24
from django.test import TestCase
5+
6+
from inertia.tests.testapp.models import User
37
from inertia.utils import InertiaJsonEncoder
4-
from json import dumps
5-
from datetime import date, datetime
8+
69

710
class InertiaJsonEncoderTestCase(TestCase):
811
def setUp(self):
@@ -32,4 +35,4 @@ def test_it_handles_querysets(self):
3235
self.assertEqual(
3336
dumps([{'id': 1, 'name': 'Brandon', 'birthdate': '1987-02-15', 'registered_at': '2022-10-31T10:13:01'}]),
3437
self.encode(User.objects.all())
35-
)
38+
)

inertia/tests/test_history.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
from inertia.http import encrypt_history
2-
from inertia.test import InertiaTestCase
31
from django.test import override_settings
4-
from django.test.client import RequestFactory
5-
from inertia.tests.testapp.views import empty_test
2+
3+
from inertia.test import InertiaTestCase
4+
65

76
class HistoryTestCase(InertiaTestCase):
87
def test_encrypt_history_setting(self):

inertia/tests/test_middleware.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
from django.test import TestCase, Client, override_settings
21
from inertia.test import InertiaTestCase
32

3+
44
class MiddlewareTestCase(InertiaTestCase):
55
def test_anything(self):
66
response = self.client.get('/test/')

0 commit comments

Comments
 (0)