Skip to content

Commit 9704fa9

Browse files
committed
chore: make permission registration synchronous.
1 parent 6f32fb5 commit 9704fa9

6 files changed

Lines changed: 18 additions & 57 deletions

File tree

nitric/resources/base.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -94,13 +94,8 @@ async def _register_policy_async(self, permissions: List[str]):
9494
policy=policy))
9595
except GRPCError as grpc_err:
9696
raise exception_from_grpc_error(grpc_err)
97-
pass
9897

9998
def _register_policy(self, permissions: List[str]):
100-
try:
101-
loop = asyncio.get_running_loop()
102-
loop.create_task(self._register_policy_async(permissions))
103-
except RuntimeError:
104-
loop = asyncio.get_event_loop()
105-
loop.run_until_complete(self._register_policy_async(permissions))
99+
loop = asyncio.get_event_loop()
100+
loop.run_until_complete(self._register_policy_async(permissions))
106101

tests/resources/test_buckets.py

Lines changed: 5 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ class Object(object):
3131

3232

3333
class BucketTest(IsolatedAsyncioTestCase):
34-
async def test_create_allow_writing(self):
34+
def test_create_allow_writing(self):
3535
mock_declare = AsyncMock()
3636
mock_response = Object()
3737
mock_declare.return_value = mock_response
@@ -49,7 +49,7 @@ async def test_create_allow_writing(self):
4949
)
5050
))
5151

52-
async def test_create_allow_reading(self):
52+
def test_create_allow_reading(self):
5353
mock_declare = AsyncMock()
5454
mock_response = Object()
5555
mock_declare.return_value = mock_response
@@ -67,7 +67,7 @@ async def test_create_allow_reading(self):
6767
)
6868
))
6969

70-
async def test_create_allow_deleting(self):
70+
def test_create_allow_deleting(self):
7171
mock_declare = AsyncMock()
7272
mock_response = Object()
7373
mock_declare.return_value = mock_response
@@ -85,7 +85,7 @@ async def test_create_allow_deleting(self):
8585
)
8686
))
8787

88-
async def test_create_allow_all(self):
88+
def test_create_allow_all(self):
8989
mock_declare = AsyncMock()
9090
mock_response = Object()
9191
mock_declare.return_value = mock_response
@@ -108,7 +108,7 @@ async def test_create_allow_all(self):
108108
)
109109
))
110110

111-
async def test_create_allow_all_reversed_policy(self):
111+
def test_create_allow_all_reversed_policy(self):
112112
mock_declare = AsyncMock()
113113
mock_response = Object()
114114
mock_declare.return_value = mock_response
@@ -131,37 +131,3 @@ async def test_create_allow_all_reversed_policy(self):
131131
)
132132
))
133133

134-
135-
async def test_write(self):
136-
mock_declare = AsyncMock()
137-
mock_write = AsyncMock()
138-
mock_response = Object()
139-
mock_declare.return_value = mock_response
140-
141-
contents = b"some text as bytes"
142-
143-
with patch("nitricapi.nitric.resource.v1.ResourceServiceStub.declare", mock_declare):
144-
with patch("nitricapi.nitric.storage.v1.StorageServiceStub.write", mock_write):
145-
b = bucket("test-bucket").allow(["writing"])
146-
file = b.file("test-file")
147-
await file.write(contents)
148-
149-
# Check expected resources were declared
150-
mock_declare.assert_called_with(resource_declare_request=ResourceDeclareRequest(
151-
resource=Resource(type=ResourceType.Policy),
152-
policy=PolicyResource(
153-
principals=[Resource(type=ResourceType.Function)],
154-
actions=[
155-
Action.BucketFilePut,
156-
],
157-
resources=[Resource(type=ResourceType.Bucket, name="test-bucket")]
158-
)
159-
))
160-
161-
# Check correct data was written
162-
mock_write.assert_called_with(storage_write_request=StorageWriteRequest(
163-
bucket_name="test-bucket",
164-
key="test-file",
165-
body=contents
166-
167-
))

tests/resources/test_collections.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class Object(object):
3434

3535

3636
class CollectionTest(IsolatedAsyncioTestCase):
37-
async def test_create_allow_writing(self):
37+
def test_create_allow_writing(self):
3838
mock_declare = AsyncMock()
3939
mock_response = Object()
4040
mock_declare.return_value = mock_response
@@ -55,7 +55,7 @@ async def test_create_allow_writing(self):
5555
)
5656
))
5757

58-
async def test_create_allow_reading(self):
58+
def test_create_allow_reading(self):
5959
mock_declare = AsyncMock()
6060
mock_response = Object()
6161
mock_declare.return_value = mock_response
@@ -77,7 +77,7 @@ async def test_create_allow_reading(self):
7777
)
7878
))
7979

80-
async def test_create_allow_deleting(self):
80+
def test_create_allow_deleting(self):
8181
mock_declare = AsyncMock()
8282
mock_response = Object()
8383
mock_declare.return_value = mock_response
@@ -98,7 +98,7 @@ async def test_create_allow_deleting(self):
9898
)
9999
))
100100

101-
async def test_create_allow_all(self):
101+
def test_create_allow_all(self):
102102
mock_declare = AsyncMock()
103103
mock_response = Object()
104104
mock_declare.return_value = mock_response
@@ -124,7 +124,7 @@ async def test_create_allow_all(self):
124124
)
125125
))
126126

127-
async def test_create_allow_all_reversed_policy(self):
127+
def test_create_allow_all_reversed_policy(self):
128128
mock_declare = AsyncMock()
129129
mock_response = Object()
130130
mock_declare.return_value = mock_response

tests/resources/test_queues.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class Object(object):
2929

3030

3131
class QueueTest(IsolatedAsyncioTestCase):
32-
async def test_create_allow_sending(self):
32+
def test_create_allow_sending(self):
3333
mock_declare = AsyncMock()
3434
mock_response = Object()
3535
mock_declare.return_value = mock_response
@@ -51,7 +51,7 @@ async def test_create_allow_sending(self):
5151
)
5252
))
5353

54-
async def test_create_allow_receiving(self):
54+
def test_create_allow_receiving(self):
5555
mock_declare = AsyncMock()
5656
mock_response = Object()
5757
mock_declare.return_value = mock_response
@@ -73,7 +73,7 @@ async def test_create_allow_receiving(self):
7373
)
7474
))
7575

76-
async def test_create_allow_all(self):
76+
def test_create_allow_all(self):
7777
mock_declare = AsyncMock()
7878
mock_response = Object()
7979
mock_declare.return_value = mock_response

tests/resources/test_secrets.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class Object(object):
2929

3030

3131
class SecretTest(IsolatedAsyncioTestCase):
32-
async def test_allow_put(self):
32+
def test_allow_put(self):
3333
mock_declare = AsyncMock()
3434
mock_response = Object()
3535
mock_declare.return_value = mock_response
@@ -50,7 +50,7 @@ async def test_allow_put(self):
5050
))
5151

5252

53-
async def test_allow_access(self):
53+
def test_allow_access(self):
5454
mock_declare = AsyncMock()
5555
mock_response = Object()
5656
mock_declare.return_value = mock_response

tests/resources/test_topics.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ def __init__(self):
3636

3737

3838
class TopicTest(IsolatedAsyncioTestCase):
39-
async def test_create_allow_publishing(self):
39+
def test_create_allow_publishing(self):
4040
mock_declare = AsyncMock()
4141
mock_response = Object()
4242
mock_declare.return_value = mock_response

0 commit comments

Comments
 (0)