|
24 | 24 | simple_key_dict,
|
25 | 25 | )
|
26 | 26 | from ...requests import (
|
27 |
| - basic_batch_execute_statement_request_ddb, |
28 |
| - basic_batch_execute_statement_request_dict, |
29 | 27 | basic_batch_get_item_request_ddb,
|
30 | 28 | basic_batch_get_item_request_dict,
|
31 | 29 | basic_batch_write_item_delete_request_ddb,
|
|
34 | 32 | basic_batch_write_item_put_request_dict,
|
35 | 33 | basic_delete_item_request_ddb,
|
36 | 34 | basic_delete_item_request_dict,
|
37 |
| - basic_execute_statement_request_ddb, |
38 |
| - basic_execute_statement_request_dict, |
39 |
| - basic_execute_transaction_request_ddb, |
40 |
| - basic_execute_transaction_request_dict, |
41 | 35 | basic_get_item_request_ddb,
|
42 | 36 | basic_get_item_request_dict,
|
43 | 37 | basic_put_item_request_ddb,
|
|
54 | 48 | basic_transact_write_item_put_request_dict,
|
55 | 49 | basic_update_item_request_ddb,
|
56 | 50 | basic_update_item_request_dict,
|
| 51 | + basic_execute_statement_request, |
| 52 | + basic_execute_transaction_request, |
| 53 | + basic_batch_execute_statement_request, |
57 | 54 | )
|
58 | 55 | from . import sort_dynamodb_json_lists
|
59 | 56 |
|
@@ -386,85 +383,86 @@ def test_GIVEN_valid_transact_write_and_get_requests_WHEN_transact_write_and_get
|
386 | 383 | @pytest.fixture
|
387 | 384 | def update_item_request(expect_standard_dictionaries, test_item):
|
388 | 385 | if expect_standard_dictionaries:
|
389 |
| - return basic_update_item_request_dict(test_item) |
| 386 | + return {**basic_update_item_request_dict(test_item), "TableName": INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME} |
390 | 387 | return basic_update_item_request_ddb(test_item)
|
391 | 388 |
|
392 | 389 |
|
393 |
| -def test_WHEN_update_item_THEN_raises_DynamoDbEncryptionTransformsException(): |
| 390 | +def test_WHEN_update_item_THEN_raises_DynamoDbEncryptionTransformsException( |
| 391 | + client, update_item_request, encrypted, |
| 392 | +): |
394 | 393 | """Test that update_item raises DynamoDbEncryptionTransformsException."""
|
| 394 | + if not encrypted: |
| 395 | + pytest.skip("Skipping negative test for plaintext client") |
| 396 | + |
395 | 397 | # Given: Encrypted client and update item parameters
|
396 | 398 | # Then: DynamoDbEncryptionTransformsException is raised
|
397 | 399 | with pytest.raises(DynamoDbEncryptionTransformsException):
|
398 | 400 | # When: Calling update_item
|
399 |
| - encrypted_client(expect_standard_dictionaries=False).update_item( |
400 |
| - TableName=INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME, |
401 |
| - Key={"partition_key": {"S": "test-key"}, "sort_key": {"N": "1"}}, |
402 |
| - UpdateExpression="SET attribute1 = :val", |
403 |
| - ExpressionAttributeValues={":val": {"S": "new value"}}, |
| 401 | + client.update_item( |
| 402 | + **update_item_request |
404 | 403 | )
|
405 | 404 |
|
406 | 405 |
|
407 | 406 | @pytest.fixture
|
408 |
| -def execute_statement_request(expect_standard_dictionaries, test_item): |
409 |
| - if expect_standard_dictionaries: |
410 |
| - return basic_execute_statement_request_dict(test_item) |
411 |
| - return basic_execute_statement_request_ddb(test_item) |
| 407 | +def execute_statement_request(): |
| 408 | + return basic_execute_statement_request() |
412 | 409 |
|
413 | 410 |
|
414 |
| -def test_WHEN_execute_statement_THEN_raises_DynamoDbEncryptionTransformsException(): |
| 411 | +def test_WHEN_execute_statement_THEN_raises_DynamoDbEncryptionTransformsException( |
| 412 | + client, execute_statement_request, encrypted, |
| 413 | +): |
415 | 414 | """Test that execute_statement raises DynamoDbEncryptionTransformsException."""
|
| 415 | + if not encrypted: |
| 416 | + pytest.skip("Skipping negative test for plaintext client") |
| 417 | + |
416 | 418 | # Given: Encrypted client and update item parameters
|
417 | 419 | # Then: DynamoDbEncryptionTransformsException is raised
|
418 | 420 | with pytest.raises(DynamoDbEncryptionTransformsException):
|
419 | 421 | # When: Calling update_item
|
420 |
| - encrypted_client(expect_standard_dictionaries=False).execute_statement( |
421 |
| - Statement="SELECT * FROM " + INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME, |
| 422 | + client.execute_statement( |
| 423 | + **execute_statement_request |
422 | 424 | )
|
423 | 425 |
|
424 | 426 |
|
425 | 427 | @pytest.fixture
|
426 |
| -def execute_transaction_request(expect_standard_dictionaries, test_item): |
427 |
| - if expect_standard_dictionaries: |
428 |
| - return basic_execute_transaction_request_dict(test_item) |
429 |
| - return basic_execute_transaction_request_ddb(test_item) |
| 428 | +def execute_transaction_request(): |
| 429 | + return basic_execute_transaction_request() |
430 | 430 |
|
431 | 431 |
|
432 |
| -def test_WHEN_execute_transaction_THEN_raises_DynamoDbEncryptionTransformsException(): |
| 432 | +def test_WHEN_execute_transaction_THEN_raises_DynamoDbEncryptionTransformsException( |
| 433 | + client, execute_transaction_request, encrypted, |
| 434 | +): |
433 | 435 | """Test that execute_transaction raises DynamoDbEncryptionTransformsException."""
|
| 436 | + if not encrypted: |
| 437 | + pytest.skip("Skipping negative test for plaintext client") |
| 438 | + |
434 | 439 | # Given: Encrypted client and update item parameters
|
435 | 440 | # Then: DynamoDbEncryptionTransformsException is raised
|
436 | 441 | with pytest.raises(DynamoDbEncryptionTransformsException):
|
437 | 442 | # When: Calling update_item
|
438 |
| - encrypted_client(expect_standard_dictionaries=False).execute_transaction( |
439 |
| - TransactStatements=[ |
440 |
| - { |
441 |
| - "Statement": "SELECT * FROM " + INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME, |
442 |
| - "Parameters": [], |
443 |
| - } |
444 |
| - ], |
| 443 | + client.execute_transaction( |
| 444 | + **execute_transaction_request |
445 | 445 | )
|
446 | 446 |
|
447 | 447 |
|
448 | 448 | @pytest.fixture
|
449 |
| -def batch_execute_statement_request(expect_standard_dictionaries, test_item): |
450 |
| - if expect_standard_dictionaries: |
451 |
| - return basic_batch_execute_statement_request_dict(test_item) |
452 |
| - return basic_batch_execute_statement_request_ddb(test_item) |
| 449 | +def batch_execute_statement_request(): |
| 450 | + return basic_batch_execute_statement_request() |
453 | 451 |
|
454 | 452 |
|
455 |
| -def test_WHEN_batch_execute_statement_THEN_raises_DynamoDbEncryptionTransformsException(): |
| 453 | +def test_WHEN_batch_execute_statement_THEN_raises_DynamoDbEncryptionTransformsException( |
| 454 | + client, batch_execute_statement_request, encrypted, |
| 455 | +): |
456 | 456 | """Test that batch_execute_statement raises DynamoDbEncryptionTransformsException."""
|
| 457 | + if not encrypted: |
| 458 | + pytest.skip("Skipping negative test for plaintext client") |
| 459 | + |
457 | 460 | # Given: Encrypted client and update item parameters
|
458 | 461 | # Then: DynamoDbEncryptionTransformsException is raised
|
459 | 462 | with pytest.raises(DynamoDbEncryptionTransformsException):
|
460 | 463 | # When: Calling update_item
|
461 |
| - encrypted_client(expect_standard_dictionaries=False).batch_execute_statement( |
462 |
| - Statements=[ |
463 |
| - { |
464 |
| - "Statement": "SELECT * FROM " + INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME, |
465 |
| - "Parameters": [], |
466 |
| - } |
467 |
| - ], |
| 464 | + client.batch_execute_statement( |
| 465 | + **batch_execute_statement_request |
468 | 466 | )
|
469 | 467 |
|
470 | 468 |
|
|
0 commit comments