Skip to content

Commit aa7f0ec

Browse files
Paul Hewletteccles
authored andcommitted
Misnamed arguments to subjects endpoint
Problem: Incorrectly named as plurali. Solution: Change wallet_pub_keys to wallet_pub_key Change tessera_pub_keys to tessera_pub_key Added missing SUBJECTS_DELETE action to story runner. Signed-off-by: Paul Hewlett <[email protected]>
1 parent 6eb59cb commit aa7f0ec

File tree

9 files changed

+84
-48
lines changed

9 files changed

+84
-48
lines changed

archivist/runner.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -153,16 +153,19 @@ def __init__(self, archivist: "type_helper.Archivist"):
153153
"keywords": ("display_name",),
154154
}
155155
self["SUBJECTS_CREATE"] = {
156-
"action": archivist.subjects.create,
156+
"action": archivist.subjects.create_from_data,
157157
"delete": archivist.subjects.delete,
158-
"keywords": ("display_name", "wallet_pub_keys", "tessera_pub_keys"),
159158
"set_subject_label": True,
160159
}
161160
self["SUBJECTS_CREATE_FROM_B64"] = {
162161
"action": archivist.subjects.create_from_b64,
163162
"delete": archivist.subjects.delete,
164163
"set_subject_label": True,
165164
}
165+
self["SUBJECTS_DELETE"] = {
166+
"action": archivist.subjects.delete,
167+
"use_subject_label": "add_arg_identity",
168+
}
166169
self["SUBJECTS_LIST"] = {
167170
"action": archivist.subjects.list,
168171
"keywords": ("display_name",),
@@ -175,8 +178,8 @@ def __init__(self, archivist: "type_helper.Archivist"):
175178
"action": archivist.subjects.update,
176179
"keywords": (
177180
"display_name",
178-
"wallet_pub_keys",
179-
"tessera_pub_keys",
181+
"wallet_pub_key",
182+
"tessera_pub_key",
180183
),
181184
"use_subject_label": "add_arg_identity",
182185
}

archivist/subjects.py

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -66,16 +66,16 @@ def __str__(self) -> str:
6666
return f"SubjectsClient({self._archivist.url})"
6767

6868
def create(
69-
self, display_name: str, wallet_pub_keys: List, tessera_pub_keys: List
69+
self, display_name: str, wallet_pub_key: List, tessera_pub_key: List
7070
) -> Subject:
7171
"""Create subject
7272
7373
Creates subject with defined attributes.
7474
7575
Args:
7676
display_name (str): display name of subject.
77-
wallet_pub_keys (list): wallet public keys
78-
tessera_pub_keys (list): tessera public keys
77+
wallet_pub_key (list): wallet public keys
78+
tessera_pub_key (list): tessera public keys
7979
8080
Returns:
8181
:class:`Subject` instance
@@ -85,8 +85,8 @@ def create(
8585
return self.create_from_data(
8686
self.__params(
8787
display_name=display_name,
88-
wallet_pub_keys=wallet_pub_keys,
89-
tessera_pub_keys=tessera_pub_keys,
88+
wallet_pub_key=wallet_pub_key,
89+
tessera_pub_key=tessera_pub_key,
9090
),
9191
)
9292

@@ -172,8 +172,8 @@ def update(
172172
identity: str,
173173
*,
174174
display_name: str = None,
175-
wallet_pub_keys: Optional[List[str]] = None,
176-
tessera_pub_keys: Optional[List[str]] = None,
175+
wallet_pub_key: Optional[List[str]] = None,
176+
tessera_pub_key: Optional[List[str]] = None,
177177
) -> Subject:
178178
"""Update Subject
179179
@@ -182,8 +182,8 @@ def update(
182182
Args:
183183
identity (str): subjects identity e.g. subjects/xxxxxxxxxxxxxxxxxxxxxxx
184184
display_name (str): display name of subject.
185-
wallet_pub_keys (list): wallet public keys
186-
tessera_pub_keys (list): tessera public keys
185+
wallet_pub_key (list): wallet public keys
186+
tessera_pub_key (list): tessera public keys
187187
188188
Returns:
189189
:class:`Subject` instance
@@ -194,8 +194,8 @@ def update(
194194
f"{self._subpath}/{identity}",
195195
self.__params(
196196
display_name=display_name,
197-
wallet_pub_keys=wallet_pub_keys,
198-
tessera_pub_keys=tessera_pub_keys,
197+
wallet_pub_key=wallet_pub_key,
198+
tessera_pub_key=tessera_pub_key,
199199
),
200200
)
201201
)
@@ -218,20 +218,20 @@ def __params(
218218
self,
219219
*,
220220
display_name: Optional[str] = None,
221-
wallet_pub_keys: Optional[List[str]] = None,
222-
tessera_pub_keys: Optional[List[str]] = None,
221+
wallet_pub_key: Optional[List[str]] = None,
222+
tessera_pub_key: Optional[List[str]] = None,
223223
) -> Dict:
224224

225225
params = {}
226226

227227
if display_name is not None:
228228
params["display_name"] = display_name
229229

230-
if wallet_pub_keys is not None:
231-
params["wallet_pub_key"] = wallet_pub_keys
230+
if wallet_pub_key is not None:
231+
params["wallet_pub_key"] = wallet_pub_key
232232

233-
if tessera_pub_keys is not None:
234-
params["tessera_pub_key"] = tessera_pub_keys
233+
if tessera_pub_key is not None:
234+
params["tessera_pub_key"] = tessera_pub_key
235235

236236
return _deepmerge(self._archivist.fixtures.get(SUBJECTS_LABEL), params)
237237

docs/runner/components/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ Story Runner Components
2525
subjects_count
2626
subjects_create
2727
subjects_create_b64
28+
subjects_delete
2829
subjects_list
2930
subjects_read
3031
subjects_update

docs/runner/components/subjects_create.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ not be accessible to later actions in the story.
1616
print_response: true
1717
subject_label: A subject
1818
display_name: A subject
19-
wallet_pub_keys:
19+
wallet_pub_key:
2020
- wallet_pub_key1
21-
tessera_pub_keys:
21+
tessera_pub_key:
2222
- tessera_pub_key2
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
.. _subjects_delete_yamlref:
2+
3+
Subjects Delete Story Runner YAML
4+
.........................................
5+
6+
Delete the specified subject.
7+
8+
:code:`subject_label` is required.
9+
10+
The :code:`print_response` setting should be specified as :code:`True` in order to see the results.
11+
12+
.. code-block:: yaml
13+
14+
---
15+
steps:
16+
- step:
17+
action: SUBJECTS_DELETE
18+
description: Dele subject
19+
print_response: true
20+
subject_label: A subject

docs/runner/components/subjects_update.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
Subjects Update Story Runner YAML
44
.........................................
55

6-
'subject_label' is required.
6+
:code:`subject_label` is required.
77

8-
'display_name', wallet_pub_keys' and 'tessera_pub_keys' are
8+
:code:`display_name`, :code:`wallet_pub_key` and :code:`tessera_pub_key` are
99
optional but at least one must be specified.
1010

1111
.. code-block:: yaml
@@ -18,9 +18,9 @@ optional but at least one must be specified.
1818
print_response: true
1919
subject_label: A subject
2020
display_name: A subject
21-
wallet_pub_keys:
21+
wallet_pub_key:
2222
- wallet_pub_key1
2323
- wallet_pub_key2
24-
tessera_pub_keys:
24+
tessera_pub_key:
2525
- tessera_pub_key1
2626
- tessera_pub_key2

functests/execsubjects.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,15 @@
2323
LOGGER = logger.LOGGER
2424

2525
DISPLAY_NAME = "Subject display name"
26-
WALLET_PUB_KEYS = [
26+
WALLET_PUB_KEY = [
2727
(
2828
"04c1173bf7844bf1c607b79c18db091b9558ffe581bf132b8cf3b37657230fa321a088"
2929
"0b54a79a88b28bc710ede6dcf3d8272c5210bfd41ea83188e385d12c189c"
3030
)
3131
]
3232
WALLET_ADDRESSES = ["0xAab979509B595084F5C113c5622Ca9A7844C58B5"]
3333

34-
TESSERA_PUB_KEYS = ["efdg9J0QhSB2g4IxKcaXgJmNKbzpxs03FFYIiYYuekk="]
34+
TESSERA_PUB_KEY = ["efdg9J0QhSB2g4IxKcaXgJmNKbzpxs03FFYIiYYuekk="]
3535

3636
SUBJECT_STRING = (
3737
"eyJpZGVudGl0eSI6ICJzdWJqZWN0cy8wMDAwMDAwMC0wMDAwLTAwMDAtMDA"
@@ -70,7 +70,7 @@ def test_subjects_create(self):
7070
Test subject creation
7171
"""
7272
subject = self.arch.subjects.create(
73-
self.display_name, WALLET_PUB_KEYS, TESSERA_PUB_KEYS
73+
self.display_name, WALLET_PUB_KEY, TESSERA_PUB_KEY
7474
)
7575
self.assertEqual(
7676
subject["display_name"],
@@ -96,12 +96,12 @@ def test_subjects_create_b64(self):
9696
)
9797
self.assertEqual(
9898
subject["wallet_pub_key"],
99-
WALLET_PUB_KEYS,
99+
WALLET_PUB_KEY,
100100
msg="Incorrect wallet_pub_key",
101101
)
102102
self.assertEqual(
103103
subject["tessera_pub_key"],
104-
TESSERA_PUB_KEYS,
104+
TESSERA_PUB_KEY,
105105
msg="Incorrect tessera_pub_key",
106106
)
107107

@@ -110,7 +110,7 @@ def test_subjects_update(self):
110110
Test subject update
111111
"""
112112
subject = self.arch.subjects.create(
113-
self.display_name, WALLET_PUB_KEYS, TESSERA_PUB_KEYS
113+
self.display_name, WALLET_PUB_KEY, TESSERA_PUB_KEY
114114
)
115115
self.assertEqual(
116116
subject["display_name"],
@@ -120,16 +120,16 @@ def test_subjects_update(self):
120120
subject = self.arch.subjects.update(
121121
subject["identity"],
122122
display_name=self.display_name,
123-
wallet_pub_keys=WALLET_PUB_KEYS,
124-
tessera_pub_keys=TESSERA_PUB_KEYS,
123+
wallet_pub_key=WALLET_PUB_KEY,
124+
tessera_pub_key=TESSERA_PUB_KEY,
125125
)
126126

127127
def test_subjects_delete(self):
128128
"""
129129
Test subject delete
130130
"""
131131
subject = self.arch.subjects.create(
132-
self.display_name, WALLET_PUB_KEYS, TESSERA_PUB_KEYS
132+
self.display_name, WALLET_PUB_KEY, TESSERA_PUB_KEY
133133
)
134134
self.assertEqual(
135135
subject["display_name"],

functests/test_resources/subjects_story.yaml

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ steps:
66
print_response: true
77
subject_label: A subject
88
display_name: A subject
9-
wallet_pub_keys:
9+
wallet_pub_key:
1010
- 04c1173bf7844bf1c607b79c18db091b9558ffe581bf132b8cf3b37657230fa321a0880b54a79a88b28bc710ede6dcf3d8272c5210bfd41ea83188e385d12c189c
11-
tessera_pub_keys:
11+
tessera_pub_key:
1212
- efdg9J0QhSB2g4IxKcaXgJmNKbzpxs03FFYIiYYuekk=
1313

1414
- step:
@@ -51,5 +51,17 @@ steps:
5151
description: Update a subjects entity.
5252
print_response: true
5353
subject_label: A subject
54-
wallet_pub_keys:
54+
wallet_pub_key:
5555
- 04c1173bf7844bf1c607b79c18db091b9558ffe581bf132b8cf3b37657230fa321a0880b54a79a88b28bc710ede6dcf3d8272c5210bfd41ea83188e385d12c189c
56+
57+
- step:
58+
action: SUBJECTS_DELETE
59+
description: Delete subject
60+
print_response: true
61+
subject_label: A subject
62+
63+
- step:
64+
action: SUBJECTS_DELETE
65+
description: Delete subject
66+
print_response: true
67+
subject_label: An imported subject

unittests/testsubjects.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,15 @@
2222
# pylint: disable=unused-variable
2323

2424
DISPLAY_NAME = "Subject display name"
25-
WALLET_PUB_KEYS = [
25+
WALLET_PUB_KEY = [
2626
(
2727
"04c1173bf7844bf1c607b79c18db091b9558ffe581bf132b8cf3b37657230fa321a088"
2828
"0b54a79a88b28bc710ede6dcf3d8272c5210bfd41ea83188e385d12c189c"
2929
)
3030
]
3131
WALLET_ADDRESSES = ["0xAab979509B595084F5C113c5622Ca9A7844C58B5"]
3232

33-
TESSERA_PUB_KEYS = ["efdg9J0QhSB2g4IxKcaXgJmNKbzpxs03FFYIiYYuekk="]
33+
TESSERA_PUB_KEY = ["efdg9J0QhSB2g4IxKcaXgJmNKbzpxs03FFYIiYYuekk="]
3434

3535
SUBJECT_STRING = (
3636
"eyJpZGVudGl0eSI6ICJzdWJqZWN0cy8wMDAwMDAwMC0wMDAwLTAwMDAtMDA"
@@ -52,9 +52,9 @@
5252
RESPONSE = {
5353
"identity": IDENTITY,
5454
"display_name": DISPLAY_NAME,
55-
"wallet_pub_key": WALLET_PUB_KEYS,
55+
"wallet_pub_key": WALLET_PUB_KEY,
5656
"wallet_address": WALLET_ADDRESSES,
57-
"tessera_pub_key": TESSERA_PUB_KEYS,
57+
"tessera_pub_key": TESSERA_PUB_KEY,
5858
}
5959
RESPONSE_WITH_PENDING = {
6060
**RESPONSE,
@@ -66,8 +66,8 @@
6666
}
6767
REQUEST = {
6868
"display_name": DISPLAY_NAME,
69-
"wallet_pub_key": WALLET_PUB_KEYS,
70-
"tessera_pub_key": TESSERA_PUB_KEYS,
69+
"wallet_pub_key": WALLET_PUB_KEY,
70+
"tessera_pub_key": TESSERA_PUB_KEY,
7171
}
7272
UPDATE = {"display_name": DISPLAY_NAME}
7373

@@ -100,7 +100,7 @@ def test_subjects_create(self):
100100
mock_post.return_value = MockResponse(200, **RESPONSE)
101101

102102
subject = self.arch.subjects.create(
103-
DISPLAY_NAME, WALLET_PUB_KEYS, TESSERA_PUB_KEYS
103+
DISPLAY_NAME, WALLET_PUB_KEY, TESSERA_PUB_KEY
104104
)
105105
args, kwargs = mock_post.call_args
106106
self.assertEqual(
@@ -168,7 +168,7 @@ def test_subjects_create_with_confirmation_unconfirmed(self):
168168
with mock.patch.object(self.arch.session, "post") as mock_post:
169169
mock_post.return_value = MockResponse(200, **RESPONSE)
170170
subject = self.arch.subjects.create(
171-
DISPLAY_NAME, WALLET_PUB_KEYS, TESSERA_PUB_KEYS
171+
DISPLAY_NAME, WALLET_PUB_KEY, TESSERA_PUB_KEY
172172
)
173173
self.assertEqual(
174174
subject,
@@ -444,7 +444,7 @@ def test_subjects_create_with_confirmation(self):
444444
with mock.patch.object(self.arch.session, "post") as mock_post:
445445
mock_post.return_value = MockResponse(200, **RESPONSE)
446446
subject = self.arch.subjects.create(
447-
DISPLAY_NAME, WALLET_PUB_KEYS, TESSERA_PUB_KEYS
447+
DISPLAY_NAME, WALLET_PUB_KEY, TESSERA_PUB_KEY
448448
)
449449
self.assertEqual(
450450
subject,

0 commit comments

Comments
 (0)