Repository navigation
test(storage): Add RCU Bidi Read and Bidi Write integration tests - #14531
nidhiii-27 wants to merge 6 commits into
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces comprehensive integration tests for bidirectional reading and writing (ITRcuBidiWriteTest and ITRcuBidiReadTest), along with additional test coverage for redirect counter resets on response in fake tests. Feedback on the changes includes ensuring all test blob deletions are attempted in ITRcuBidiReadTest's cleanup by wrapping each in its own try-catch block, moving the non-parameterized empty object test out of the parameterized ITRcuBidiWriteTest class to avoid redundant skipped runs, standardizing arbitrary timeout values, and using the more idiomatic Google Truth 'isAnyOf' assertion.
Dhriti07
left a comment
There was a problem hiding this comment.
The RCU Read IT test is in the folder it and the RCU Write IT test is in storage not inside it. Can we have both the tests at the same directory level.
|
Moved Co-authored by AI Agent |
Dhriti07
left a comment
There was a problem hiding this comment.
The PR Description mentions: ITRcuBidiReadTest The file does not exist in the changes in this PR. Can you update accordingly
| .build(); | ||
|
|
||
| // 3. Reconnect to routingToken1 | ||
| BidiWriteObjectRequest reconnect_token1 = |
There was a problem hiding this comment.
The five hand-built reconnect_tokenN requests repeat what bidiWriteObjectRedirectedError_maxAttempts already does with BidiUploadTestUtils.withRedirectToken(base, token). Can we reuse it ?
There was a problem hiding this comment.
Done. Reused BidiUploadTestUtils.withRedirectToken(base, token) for reconnect_token1 through reconnect_token5.
Co-authored by AI Agent
c373147 to
ef549a8
Compare
Adds comprehensive integration tests and fake server tests for Rapid Cache Ultra (RCU) Bidi Read and Bidi Write streams in the Google Cloud Storage Java SDK. Includes: - ITAppendableUploadFakeTest: Verifies redirect counter resets on bidi write streams upon receiving an OK response. - ITObjectReadSessionFakeTest: Verifies redirect counter resets on bidi read sessions and audits x-goog-request-params routing tokens. - ITRcuBidiWriteTest: Parameterized integration test suite covering empty objects, chunked byte writes, flushes, and takeover finalization with CRC32C validation. - ITRcuBidiReadTest: Integration test suite covering stream close during read, zero-copy range reads, multiple concurrent ranged reads, and out-of-range error propagation. [Generated-by: AI]
[Generated-by: AI]
… tests 1. Clean up test blobs individually in ITRcuBidiReadTest tearDownClass. 2. Standardize readAllBytes timeouts to 5 seconds in ITRcuBidiWriteTest. 3. Use isAnyOf assertion in ITRcuBidiReadTest for 404/403 status codes. [Generated-by: AI]
[Generated-by: AI]
…Test 1. Add LocationType.ZONAL_RAPID and LocationType.REGIONAL_RAPID to ITObjectReadSessionTest and remove duplicate ITRcuBidiReadTest. 2. Remove unnecessary req_j_finish alias in ITAppendableUploadFakeTest. [Generated-by: AI]
[Generated-by: AI]
ef549a8 to
7069088
Compare
Adds integration and fake tests for Rapid Cache Ultra (RCU) bidirectional read and write streams (stacked on #14530):
ITAppendableUploadTest): ExtendsITAppendableUploadTestto parameterize overlocations = {LocationType.ZONAL_RAPID, LocationType.REGIONAL_RAPID}(REGIONAL_RAPIDskipped via@CrossRun.Ignoreuntil RCU is enabled in prod), using dynamic bucket provisioning perLocationTypeand settingStorageClass.valueOf("RAPID")on test objects.ITObjectReadSessionTest): ExtendsITObjectReadSessionTestto parameterize overlocations = {LocationType.ZONAL_RAPID, LocationType.REGIONAL_RAPID}(REGIONAL_RAPIDskipped via@CrossRun.Ignoreuntil RCU is enabled in prod), using dynamic bucket provisioning perLocationTypeand settingStorageClass.valueOf("RAPID")on test objects.ITAppendableUploadFakeTest,ITObjectReadSessionFakeTest): Verifies Bidi Write and Bidi Read redirect counters reset on successful responses and validatesrouting_tokenheader propagation.