@@ -167,58 +167,46 @@ async def test_create_revoke_credentials(
167167 for cr_id in test_cred_rev_ids
168168 ]
169169
170- with async_mock .patch .object (
171- test_module , "IssuerCredRevRecord" , async_mock .MagicMock ()
172- ) as mock_issuer_cr_rec :
173- mock_issuer_cr_rec .return_value .save = async_mock .CoroutineMock ()
174- mock_issuer_cr_rec .retrieve_by_ids = async_mock .CoroutineMock (
175- return_value = async_mock .MagicMock (
176- set_state = async_mock .CoroutineMock (),
177- )
178- )
179-
180- with self .assertRaises (test_module .IndyIssuerError ): # missing attribute
181- cred_json , revoc_id = await self .issuer .create_credential (
182- test_schema ,
183- test_offer ,
184- test_request ,
185- {},
186- "dummy-cxid" ,
187- )
188-
189- (cred_json , cred_rev_id ) = await self .issuer .create_credential ( # main line
170+ with self .assertRaises (test_module .IndyIssuerError ): # missing attribute
171+ cred_json , revoc_id = await self .issuer .create_credential (
190172 test_schema ,
191173 test_offer ,
192174 test_request ,
193- test_values ,
194- "dummy-cxid" ,
195- REV_REG_ID ,
196- "/tmp/tails/path/dummy" ,
197- )
198- mock_indy_create_credential .assert_called_once ()
199- (
200- call_wallet ,
201- call_offer ,
202- call_request ,
203- call_values ,
204- call_etc1 ,
205- call_etc2 ,
206- ) = mock_indy_create_credential .call_args [0 ]
207- assert call_wallet is self .wallet .handle
208- assert json .loads (call_offer ) == test_offer
209- assert json .loads (call_request ) == test_request
210- values = json .loads (call_values )
211- assert "attr1" in values
212-
213- mock_indy_revoke_credential .return_value = json .dumps (TEST_RR_DELTA )
214- mock_indy_merge_rr_deltas .return_value = json .dumps (TEST_RR_DELTA )
215- (result , failed ) = await self .issuer .revoke_credentials (
216- REV_REG_ID , tails_file_path = "dummy" , cred_rev_ids = test_cred_rev_ids
175+ {},
217176 )
218- assert json .loads (result ) == TEST_RR_DELTA
219- assert not failed
220- assert mock_indy_revoke_credential .call_count == 2
221- mock_indy_merge_rr_deltas .assert_called_once ()
177+
178+ (cred_json , cred_rev_id ) = await self .issuer .create_credential ( # main line
179+ test_schema ,
180+ test_offer ,
181+ test_request ,
182+ test_values ,
183+ REV_REG_ID ,
184+ "/tmp/tails/path/dummy" ,
185+ )
186+ mock_indy_create_credential .assert_called_once ()
187+ (
188+ call_wallet ,
189+ call_offer ,
190+ call_request ,
191+ call_values ,
192+ call_etc1 ,
193+ call_etc2 ,
194+ ) = mock_indy_create_credential .call_args [0 ]
195+ assert call_wallet is self .wallet .handle
196+ assert json .loads (call_offer ) == test_offer
197+ assert json .loads (call_request ) == test_request
198+ values = json .loads (call_values )
199+ assert "attr1" in values
200+
201+ mock_indy_revoke_credential .return_value = json .dumps (TEST_RR_DELTA )
202+ mock_indy_merge_rr_deltas .return_value = json .dumps (TEST_RR_DELTA )
203+ (result , failed ) = await self .issuer .revoke_credentials (
204+ REV_REG_ID , tails_file_path = "dummy" , cred_rev_ids = test_cred_rev_ids
205+ )
206+ assert json .loads (result ) == TEST_RR_DELTA
207+ assert not failed
208+ assert mock_indy_revoke_credential .call_count == 2
209+ mock_indy_merge_rr_deltas .assert_called_once ()
222210
223211 @async_mock .patch ("indy.anoncreds.issuer_create_credential" )
224212 @async_mock .patch .object (test_module , "create_tails_reader" , autospec = True )
@@ -267,73 +255,53 @@ async def test_create_revoke_credentials_x(
267255 test_offer ,
268256 test_request ,
269257 {},
270- "dummy-cxid" ,
271258 )
272259
273- with async_mock .patch .object (
274- test_module , "IssuerCredRevRecord" , async_mock .MagicMock ()
275- ) as mock_issuer_cr_rec :
276- mock_issuer_cr_rec .return_value .save = async_mock .CoroutineMock (
277- side_effect = test_module .StorageError (
278- "could not store" # not fatal; maximize coverage
279- )
280- )
281- mock_issuer_cr_rec .retrieve_by_ids = async_mock .CoroutineMock (
282- return_value = async_mock .MagicMock (
283- set_state = async_mock .CoroutineMock (
284- side_effect = test_module .StorageError (
285- "could not store" # not fatal; maximize coverage
286- )
287- ),
288- )
289- )
290-
291- (cred_json , cred_rev_id ) = await self .issuer .create_credential ( # main line
292- test_schema ,
293- test_offer ,
294- test_request ,
295- test_values ,
296- "dummy-cxid" ,
297- REV_REG_ID ,
298- "/tmp/tails/path/dummy" ,
299- )
300- mock_indy_create_credential .assert_called_once ()
301- (
302- call_wallet ,
303- call_offer ,
304- call_request ,
305- call_values ,
306- call_etc1 ,
307- call_etc2 ,
308- ) = mock_indy_create_credential .call_args [0 ]
309- assert call_wallet is self .wallet .handle
310- assert json .loads (call_offer ) == test_offer
311- assert json .loads (call_request ) == test_request
312- values = json .loads (call_values )
313- assert "attr1" in values
314-
315- def mock_revoke (_h , _t , _r , cred_rev_id ):
316- if cred_rev_id == "42" :
317- return json .dumps (TEST_RR_DELTA )
318- if cred_rev_id == "54" :
319- raise IndyError (
320- error_code = ErrorCode .AnoncredsInvalidUserRevocId ,
321- error_details = {"message" : "already revoked" },
322- )
260+ (cred_json , cred_rev_id ) = await self .issuer .create_credential ( # main line
261+ test_schema ,
262+ test_offer ,
263+ test_request ,
264+ test_values ,
265+ REV_REG_ID ,
266+ "/tmp/tails/path/dummy" ,
267+ )
268+ mock_indy_create_credential .assert_called_once ()
269+ (
270+ call_wallet ,
271+ call_offer ,
272+ call_request ,
273+ call_values ,
274+ call_etc1 ,
275+ call_etc2 ,
276+ ) = mock_indy_create_credential .call_args [0 ]
277+ assert call_wallet is self .wallet .handle
278+ assert json .loads (call_offer ) == test_offer
279+ assert json .loads (call_request ) == test_request
280+ values = json .loads (call_values )
281+ assert "attr1" in values
282+
283+ def mock_revoke (_h , _t , _r , cred_rev_id ):
284+ if cred_rev_id == "42" :
285+ return json .dumps (TEST_RR_DELTA )
286+ if cred_rev_id == "54" :
323287 raise IndyError (
324- error_code = ErrorCode .UnknownCryptoTypeError ,
325- error_details = {"message" : "truly an outlier " },
288+ error_code = ErrorCode .AnoncredsInvalidUserRevocId ,
289+ error_details = {"message" : "already revoked " },
326290 )
327-
328- mock_indy_revoke_credential .side_effect = mock_revoke
329- mock_indy_merge_rr_deltas .return_value = json .dumps (TEST_RR_DELTA )
330- (result , failed ) = await self .issuer .revoke_credentials (
331- REV_REG_ID , tails_file_path = "dummy" , cred_rev_ids = test_cred_rev_ids
291+ raise IndyError (
292+ error_code = ErrorCode .UnknownCryptoTypeError ,
293+ error_details = {"message" : "truly an outlier" },
332294 )
333- assert json .loads (result ) == TEST_RR_DELTA
334- assert failed == ["54" , "103" ]
335- assert mock_indy_revoke_credential .call_count == 3
336- mock_indy_merge_rr_deltas .assert_not_called ()
295+
296+ mock_indy_revoke_credential .side_effect = mock_revoke
297+ mock_indy_merge_rr_deltas .return_value = json .dumps (TEST_RR_DELTA )
298+ (result , failed ) = await self .issuer .revoke_credentials (
299+ REV_REG_ID , tails_file_path = "dummy" , cred_rev_ids = test_cred_rev_ids
300+ )
301+ assert json .loads (result ) == TEST_RR_DELTA
302+ assert failed == ["54" , "103" ]
303+ assert mock_indy_revoke_credential .call_count == 3
304+ mock_indy_merge_rr_deltas .assert_not_called ()
337305
338306 @async_mock .patch ("indy.anoncreds.issuer_create_credential" )
339307 @async_mock .patch .object (test_module , "create_tails_reader" , autospec = True )
@@ -358,25 +326,14 @@ async def test_create_credential_rr_full(
358326 error_code = ErrorCode .AnoncredsRevocationRegistryFullError
359327 )
360328
361- with async_mock .patch .object (
362- test_module , "IssuerCredRevRecord" , async_mock .MagicMock ()
363- ) as mock_issuer_cr_rec :
364- mock_issuer_cr_rec .return_value .save = async_mock .CoroutineMock ()
365- mock_issuer_cr_rec .retrieve_by_ids = async_mock .CoroutineMock (
366- return_value = async_mock .MagicMock (
367- set_state = async_mock .CoroutineMock (),
368- )
329+ with self .assertRaises (IndyIssuerRevocationRegistryFullError ):
330+ await self .issuer .create_credential (
331+ test_schema ,
332+ test_offer ,
333+ test_request ,
334+ test_values ,
369335 )
370336
371- with self .assertRaises (IndyIssuerRevocationRegistryFullError ):
372- await self .issuer .create_credential (
373- test_schema ,
374- test_offer ,
375- test_request ,
376- test_values ,
377- "dummy-cxid" ,
378- )
379-
380337 @async_mock .patch ("indy.anoncreds.issuer_create_credential" )
381338 @async_mock .patch .object (test_module , "create_tails_reader" , autospec = True )
382339 async def test_create_credential_x_indy (
@@ -401,25 +358,14 @@ async def test_create_credential_x_indy(
401358 error_code = ErrorCode .WalletInvalidHandle
402359 )
403360
404- with async_mock .patch .object (
405- test_module , "IssuerCredRevRecord" , async_mock .MagicMock ()
406- ) as mock_issuer_cr_rec :
407- mock_issuer_cr_rec .return_value .save = async_mock .CoroutineMock ()
408- mock_issuer_cr_rec .retrieve_by_ids = async_mock .CoroutineMock (
409- return_value = async_mock .MagicMock (
410- set_state = async_mock .CoroutineMock (),
411- )
361+ with self .assertRaises (test_module .IndyIssuerError ):
362+ await self .issuer .create_credential (
363+ test_schema ,
364+ test_offer ,
365+ test_request ,
366+ test_values ,
412367 )
413368
414- with self .assertRaises (test_module .IndyIssuerError ):
415- await self .issuer .create_credential (
416- test_schema ,
417- test_offer ,
418- test_request ,
419- test_values ,
420- "dummy-cxid" ,
421- )
422-
423369 @async_mock .patch ("indy.anoncreds.issuer_create_and_store_revoc_reg" )
424370 @async_mock .patch .object (test_module , "create_tails_writer" , autospec = True )
425371 async def test_create_and_store_revocation_registry (
0 commit comments