Skip to content

Commit 0d54d8b

Browse files
committed
Fix pre commit
1 parent 95b032e commit 0d54d8b

File tree

2 files changed

+25
-36
lines changed

2 files changed

+25
-36
lines changed

permit/api/base.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ def _prepare_json(self, json: Optional[Union[TData, dict, list]] = None) -> Opti
6565
# Use json() method which properly handles UUID serialization
6666
# Then parse it back to dict to avoid double JSON encoding
6767
import json as json_module
68+
6869
json_str = json.json(exclude_unset=True, exclude_none=True)
6970
return json_module.loads(json_str)
7071

tests/test_user_invites_complete_e2e.py

Lines changed: 24 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,16 @@
1-
import asyncio
2-
from uuid import uuid4
3-
41
import pytest
52
from loguru import logger
63

74
from permit import Permit
85
from permit.api.models import (
6+
ActionBlockEditable,
97
ElementsUserInviteApprove,
108
ElementsUserInviteCreate,
11-
TenantCreate,
12-
RoleCreate,
13-
UserInviteStatus,
149
ResourceCreate,
1510
ResourceInstanceCreate,
16-
ActionBlockEditable,
11+
RoleCreate,
12+
TenantCreate,
13+
UserInviteStatus,
1714
)
1815
from permit.exceptions import PermitApiError, PermitConnectionError
1916

@@ -82,15 +79,9 @@ async def test_user_invites_complete_e2e(permit: Permit):
8279
name="Test Resource for Invites",
8380
description="Resource for testing user invites",
8481
actions={
85-
"read": ActionBlockEditable(
86-
name="Read Access",
87-
description="Read access to the resource"
88-
),
89-
"write": ActionBlockEditable(
90-
name="Write Access",
91-
description="Write access to the resource"
92-
)
93-
}
82+
"read": ActionBlockEditable(name="Read Access", description="Read access to the resource"),
83+
"write": ActionBlockEditable(name="Write Access", description="Write access to the resource"),
84+
},
9485
)
9586
created_resource = await permit.api.resources.create(test_resource)
9687
assert created_resource is not None
@@ -109,7 +100,7 @@ async def test_user_invites_complete_e2e(permit: Permit):
109100
key="test_instance_invites",
110101
resource=created_resource.key,
111102
tenant=created_tenant.key,
112-
attributes={"test": "invites"}
103+
attributes={"test": "invites"},
113104
)
114105
created_resource_instance = await permit.api.resource_instances.create(test_resource_instance)
115106
assert created_resource_instance is not None
@@ -120,7 +111,7 @@ async def test_user_invites_complete_e2e(permit: Permit):
120111
test_role = RoleCreate(
121112
key="test_role_invites",
122113
name="Test Role for Invites",
123-
permissions=[f"{created_resource.key}:read", f"{created_resource.key}:write"] # Use our resource actions
114+
permissions=[f"{created_resource.key}:read", f"{created_resource.key}:write"], # Use our resource actions
124115
)
125116
created_role = await permit.api.roles.create(test_role)
126117
assert created_role is not None
@@ -129,14 +120,14 @@ async def test_user_invites_complete_e2e(permit: Permit):
129120
logger.info(f"Created test role: {created_role.key}")
130121

131122
# Create invite objects with actual IDs - CONVERT UUIDs TO STRINGS
132-
TEST_INVITE_1 = ElementsUserInviteCreate(
123+
test_invite_1 = ElementsUserInviteCreate(
133124
**TEST_INVITE_DATA_1,
134125
role_id=str(created_role.id), # Convert UUID to string
135126
tenant_id=str(created_tenant.id), # Convert UUID to string
136127
resource_instance_id=str(created_resource_instance.id), # Convert UUID to string
137128
)
138129

139-
TEST_INVITE_2 = ElementsUserInviteCreate(
130+
test_invite_2 = ElementsUserInviteCreate(
140131
**TEST_INVITE_DATA_2,
141132
role_id=str(created_role.id), # Convert UUID to string
142133
tenant_id=str(created_tenant.id), # Convert UUID to string
@@ -151,30 +142,30 @@ async def test_user_invites_complete_e2e(permit: Permit):
151142
logger.info("Testing user invite creation")
152143

153144
# Create first invite
154-
invite_1 = await permit.api.user_invites.create(TEST_INVITE_1)
145+
invite_1 = await permit.api.user_invites.create(test_invite_1)
155146
created_invites.append(invite_1)
156147

157148
# Verify create output
158149
assert invite_1 is not None
159150
assert invite_1.id is not None
160-
assert invite_1.key == TEST_INVITE_1.key
161-
assert invite_1.email == TEST_INVITE_1.email
162-
assert invite_1.first_name == TEST_INVITE_1.first_name
163-
assert invite_1.last_name == TEST_INVITE_1.last_name
151+
assert invite_1.key == test_invite_1.key
152+
assert invite_1.email == test_invite_1.email
153+
assert invite_1.first_name == test_invite_1.first_name
154+
assert invite_1.last_name == test_invite_1.last_name
164155
assert invite_1.status == UserInviteStatus.pending
165156
assert invite_1.role_id == created_role.id
166157
assert invite_1.tenant_id == created_tenant.id
167158
logger.info(f"✅ Created invite 1: {invite_1.email} (ID: {invite_1.id})")
168159

169160
# Create second invite
170-
invite_2 = await permit.api.user_invites.create(TEST_INVITE_2)
161+
invite_2 = await permit.api.user_invites.create(test_invite_2)
171162
created_invites.append(invite_2)
172163

173164
# Verify second invite
174165
assert invite_2 is not None
175166
assert invite_2.id is not None
176-
assert invite_2.key == TEST_INVITE_2.key
177-
assert invite_2.email == TEST_INVITE_2.email
167+
assert invite_2.key == test_invite_2.key
168+
assert invite_2.email == test_invite_2.email
178169
assert invite_2.status == UserInviteStatus.pending
179170
logger.info(f"✅ Created invite 2: {invite_2.email} (ID: {invite_2.id})")
180171

@@ -191,10 +182,7 @@ async def test_user_invites_complete_e2e(permit: Permit):
191182
assert invites_list.total_count >= 2 # At least our 2 invites
192183

193184
# Find our created invites in the list
194-
our_invites = [
195-
invite for invite in invites_list.data
196-
if invite.id in [invite_1.id, invite_2.id]
197-
]
185+
our_invites = [invite for invite in invites_list.data if invite.id in [invite_1.id, invite_2.id]]
198186
assert len(our_invites) == 2
199187
logger.info(f"✅ Listed invites: found {invites_list.total_count} total, including our 2 test invites")
200188

@@ -223,12 +211,11 @@ async def test_user_invites_complete_e2e(permit: Permit):
223211
approve_data = ElementsUserInviteApprove(
224212
email=invite_1.email,
225213
key=invite_1.key,
226-
attributes={"department": "Engineering", "role": "Developer", "test": "complete_e2e_test"}
214+
attributes={"department": "Engineering", "role": "Developer", "test": "complete_e2e_test"},
227215
)
228216

229217
approved_user = await permit.api.user_invites.approve(
230-
user_invite_id=str(invite_1.id),
231-
approve_data=approve_data
218+
user_invite_id=str(invite_1.id), approve_data=approve_data
232219
)
233220

234221
# Verify approval
@@ -274,7 +261,8 @@ async def test_user_invites_complete_e2e(permit: Permit):
274261
# List invites again to verify our changes
275262
final_invites_list = await permit.api.user_invites.list(page=1, per_page=50)
276263
our_remaining_invites = [
277-
invite for invite in final_invites_list.data
264+
invite
265+
for invite in final_invites_list.data
278266
if invite.id == invite_1.id # Only invite_1 should remain
279267
]
280268

0 commit comments

Comments
 (0)