Skip to content

feat(storage): Support GCS RCU Bidirectional Read Integration Tests - DRAFT - #9

Draft
xlai20 wants to merge 6 commits into
mainfrom
integration-tests-bidi-read
Draft

xlai20 wants to merge 6 commits into
mainfrom
integration-tests-bidi-read

Conversation

@xlai20

@xlai20 xlai20 commented Sep 21, 2026

Copy link
Copy Markdown
Owner

DRAFT: DO NOT REVIEW YET

Description

Implements live cloud integration tests for Test Suite 1: Bidirectional Read targeting Rapid Cache Ultra (RCU) / Rapid Storage in tests/storage/src/bidi_read.rs.

Key Test Cases Added

  • Test 1 (test_multiple_ranged_read): Tests concurrent downloads across 4 non-overlapping segments (512 KiB total) over an open bidi read session using tokio::try_join!, verifying chunk data, total length, and CRC32C checksums.
  • Test 2 (test_read_post_stream_close): Verifies stream lifecycle, EOF idempotency (next() == None), and cancellation/abort isolation when dropping an in-flight reader.
  • Test 3 (test_zero_copy_read): Tests zero-copy buffer access using bytes::Bytes chunks across concurrent range readers.
  • Test 4 (test_non_existent_bucket_read): Asserts appropriate NotFound or PermissionDenied error status when attempting to open a stream on a non-existent bucket.
  • Test 5 (test_out_of_range): Verifies valid range read on open descriptor, followed by out-of-bounds offset reading returning OUT_OF_RANGE.
  • Preserved Existing Tests: Maintained existing send, send_and_read, send_and_read_full, send_and_read_md5, and send_and_read_gzip test cases.
  • Custom Endpoint Configuration: Added GOOGLE_CLOUD_TEST_STORAGE_ENDPOINT support to allow targeting preprod or emulator environments.

Verification

  • cargo fmt --all -- --check & rustfmt --edition 2024 passed.
  • cargo clippy --package integration-tests-storage --test driver --features run-integration-tests -- -D warnings passed cleanly.
  • cargo test --package google-cloud-storage --test open_object_grpc passed (4 passed, 0 failed).
  • cargo test --package integration-tests-storage --test driver --features run-integration-tests run_storage_bidi passed against live GCP project rust-sdk-testing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant