QLDB (Quantum Ledger Database)

Implementation details for API qldb

Coverage Overview

Quantum Ledger Database (QLDB) is supported by LocalStack only in the pro image.

AvailabilityTesting*
OperationImplementedImageInternal Test SuiteExternal Test SuiteTerraform ValidatedAWS ValidatedSnapshot TestedDetails
CancelJournalKinesisStream
CreateLedger✔️pro✔️✔️✔️Show Tests
DeleteLedger✔️pro✔️✔️✔️Show Tests
DescribeJournalKinesisStream✔️pro
DescribeJournalS3Export✔️pro
DescribeLedger✔️pro✔️✔️✔️Show Tests
ExportJournalToS3✔️pro
GetBlock
GetDigest
GetRevision
ListJournalKinesisStreamsForLedger
ListJournalS3Exports
ListJournalS3ExportsForLedger
ListLedgers✔️pro✔️Show Tests
ListTagsForResource✔️pro
StreamJournalToKinesis✔️pro✔️Show Tests
TagResource✔️pro
UntagResource✔️pro
UpdateLedger✔️pro✔️✔️✔️Show Tests
UpdateLedgerPermissionsMode

Terminology

  • Internal Test Suite: tested by LocalStack's internal integration test suite
  • External Test Suite: covered by an external integration test suite, that runs against LocalStack
  • Terraform Validated: operation tested with Terraform
  • AWS Validated: the integration test that includes this operation call was validated against AWS
  • Snapshot Tested: the operation is part of a snapshot parity test, which verifies the responses by LocalStack and AWS are the same

Testing Details

This section gives an overview about the internal integration test suite and the specific test cases that recorded the API call.

How to read the test details?

For each operation we put up a list of the related integration test cases.
Those operation calls have been recorded during the exeuction of the outlined test cases. Some calls might be internal, i.e., they are not explicitly called in the test, but are triggered implicitly by the LocalStack framework.

  • Parameters: The tests are ordered by the parameters used, which are highlighted in bold.
  • Test Details: LocalStack Community or LocalStack Pro indicates where the test originates. For each test you see:
    • test name
    • status code returned (which is the expected one for the test case)
    • information about validation:
      • AWS validated the test is validated against AWS, meaning it run successfully against real AWS as well
      • Snapshot Tested this is a snapshot parity test, meaning the responses are validated against AWS


CreateLedger

Parameters: DeletionProtection, Name, PermissionsMode
  • LocalStack Pro
    • test_black_box LocalStack Pro: tests/aws/services/cloudformation/resource_providers/qldb/aws_qldb_ledger/test_basic.py::TestBasicCRD::test_black_box HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_ledger_response[False] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[False] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_ledger_response[True] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[True] HTTP Status Code: 200 AWS validated Snapshot Tested
Parameters: Name, PermissionsMode
  • LocalStack Pro
    • test_query_history LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history_with_start_end_timestamps LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history_with_start_end_timestamps HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history_with_updates LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history_with_updates HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_complex_insert LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_complex_insert HTTP Status Code: 200
    • test_create_ledger_response[None] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[None] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_describe_and_delete_ledger LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_describe_and_delete_ledger HTTP Status Code: 200
    • test_insert_multiple_docs LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_insert_multiple_docs HTTP Status Code: 200
    • test_list_ledgers LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_ledgers HTTP Status Code: 200
    • test_list_tables LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_tables HTTP Status Code: 200
    • test_query_by_metadata LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_by_metadata HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_committed_views LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_committed_views HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_ion_timestamp LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_ion_timestamp HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_join_tables LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_join_tables HTTP Status Code: 200
    • test_query_with_parameters LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_with_parameters HTTP Status Code: 200
    • test_query_with_params_via_api LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_with_params_via_api HTTP Status Code: 200
    • test_stream_journal LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_stream_journal HTTP Status Code: 200
    • test_update_query_response LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_update_query_response HTTP Status Code: 200 AWS validated Snapshot Tested

DeleteLedger

Parameters: Name
  • LocalStack Pro
    • test_black_box LocalStack Pro: tests/aws/services/cloudformation/resource_providers/qldb/aws_qldb_ledger/test_basic.py::TestBasicCRD::test_black_box HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history_with_start_end_timestamps LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history_with_start_end_timestamps HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history_with_updates LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history_with_updates HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_complex_insert LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_complex_insert HTTP Status Code: 200
    • test_create_ledger_response[False] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[False] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_ledger_response[None] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[None] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_ledger_response[True] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[True] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_describe_and_delete_ledger LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_describe_and_delete_ledger HTTP Status Code: 200
    • test_insert_multiple_docs LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_insert_multiple_docs HTTP Status Code: 200
    • test_list_ledgers LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_ledgers HTTP Status Code: 200
    • test_list_tables LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_tables HTTP Status Code: 200
    • test_query_by_metadata LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_by_metadata HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_committed_views LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_committed_views HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_ion_timestamp LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_ion_timestamp HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_join_tables LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_join_tables HTTP Status Code: 200
    • test_query_with_parameters LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_with_parameters HTTP Status Code: 200
    • test_query_with_params_via_api LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_with_params_via_api HTTP Status Code: 200
    • test_stream_journal LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_stream_journal HTTP Status Code: 200
    • test_update_query_response LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_update_query_response HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_black_box LocalStack Pro: tests/aws/services/cloudformation/resource_providers/qldb/aws_qldb_ledger/test_basic.py::TestBasicCRD::test_black_box HTTP Status Code: 404 (ResourceNotFoundException) AWS validated Snapshot Tested
    • test_describe_and_delete_ledger LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_describe_and_delete_ledger HTTP Status Code: 412 (ResourcePreconditionNotMetException)

DescribeLedger

Parameters: Name
  • LocalStack Pro
    • test_black_box LocalStack Pro: tests/aws/services/cloudformation/resource_providers/qldb/aws_qldb_ledger/test_basic.py::TestBasicCRD::test_black_box HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_black_box LocalStack Pro: tests/aws/services/cloudformation/resource_providers/qldb/aws_qldb_ledger/test_basic.py::TestBasicCRD::test_black_box HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history_with_start_end_timestamps LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history_with_start_end_timestamps HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history_with_updates LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history_with_updates HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_complex_insert LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_complex_insert HTTP Status Code: 200
    • test_create_ledger_response[False] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[False] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_ledger_response[None] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[None] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_ledger_response[True] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[True] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_describe_and_delete_ledger LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_describe_and_delete_ledger HTTP Status Code: 200
    • test_insert_multiple_docs LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_insert_multiple_docs HTTP Status Code: 200
    • test_list_ledgers LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_ledgers HTTP Status Code: 200
    • test_list_tables LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_tables HTTP Status Code: 200
    • test_query_by_metadata LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_by_metadata HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_committed_views LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_committed_views HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_ion_timestamp LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_ion_timestamp HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_join_tables LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_join_tables HTTP Status Code: 200
    • test_query_with_parameters LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_with_parameters HTTP Status Code: 200
    • test_query_with_params_via_api LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_with_params_via_api HTTP Status Code: 200
    • test_stream_journal LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_stream_journal HTTP Status Code: 200
    • test_update_query_response LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_update_query_response HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_black_box LocalStack Pro: tests/aws/services/cloudformation/resource_providers/qldb/aws_qldb_ledger/test_basic.py::TestBasicCRD::test_black_box HTTP Status Code: 404 (ResourceNotFoundException) AWS validated Snapshot Tested
    • test_describe_and_delete_ledger LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_describe_and_delete_ledger HTTP Status Code: 404 (ResourceNotFoundException)

ListLedgers

Parameters: - (without any parameters)
  • LocalStack Pro
    • test_list_ledgers LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_ledgers HTTP Status Code: 200

StreamJournalToKinesis

Parameters: InclusiveStartTime, KinesisConfiguration, LedgerName, RoleArn, StreamName
  • LocalStack Pro
    • test_stream_journal LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_stream_journal HTTP Status Code: 200

UpdateLedger

Parameters: DeletionProtection, Name
  • LocalStack Pro
    • test_query_history LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history_with_start_end_timestamps LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history_with_start_end_timestamps HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_history_with_updates LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestHistoryQueries::test_query_history_with_updates HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_complex_insert LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_complex_insert HTTP Status Code: 200
    • test_create_ledger_response[None] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[None] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_create_ledger_response[True] LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_create_ledger_response[True] HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_describe_and_delete_ledger LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_describe_and_delete_ledger HTTP Status Code: 200
    • test_insert_multiple_docs LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_insert_multiple_docs HTTP Status Code: 200
    • test_list_ledgers LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_ledgers HTTP Status Code: 200
    • test_list_tables LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_list_tables HTTP Status Code: 200
    • test_query_by_metadata LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_by_metadata HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_committed_views LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_committed_views HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_ion_timestamp LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_ion_timestamp HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_query_join_tables LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_join_tables HTTP Status Code: 200
    • test_query_with_parameters LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_with_parameters HTTP Status Code: 200
    • test_query_with_params_via_api LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_query_with_params_via_api HTTP Status Code: 200
    • test_stream_journal LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_stream_journal HTTP Status Code: 200
    • test_update_query_response LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_update_query_response HTTP Status Code: 200 AWS validated Snapshot Tested
    • test_describe_and_delete_ledger LocalStack Pro: tests/aws/services/qldb/test_qldb.py::TestQLDB::test_describe_and_delete_ledger HTTP Status Code: 404 (ResourceNotFoundException)


Last modified March 20, 2023: improve Coverage Docs (#505) (46f2fb0c0)