[Task][Java SDK]: Increase PubsubWriteSchemaTransformProvider integration test coverage
- Dominant language
- Java
- Stars
- 8.7k
- Forks
- 4.7k
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 205
Description
## What work does this Task describe?
This task extends the work of #24443 by increasing coverage of `PubsubWriteSchemaTransformProviderIT`. The #24443 PR began this task by completing tests that detect errors in writing simple bytes only payload to a non-schema defined Pub/Sub topic within an integration testing context. However, prior to the PR's submission, attempts failed at validating the same for serialized Avro formatted payload Rows written to an Avro schema containing Pub/Sub topic.
## What value may result from this Task's output?
While #24443 covers on a unit test level cases addressed in this task, integration testing provides harder empirical measures of code errors that additionally signal gaps in unit test level coverage. End users will be using the code from #24443 from real Google Cloud Pub/Sub and not mocked resources as achieved in that PR.
## Ready and Done Measures
### Ready
The following are blockers for beginning this task.
- [ ] Review/Merge of #24443
### Done
The following are measures that define this task as complete.
**Within an integration testing context, tests detect errors when:**
- [ ] serializing an Avro formatted Row payload and writing to a Pub/Sub topic lacking a schema definition
- [ ] serializing a Json formatted Row payload and writing to a Pub/Sub topic lacking a schema definition
- [ ] forwarding the proto not supported when attempting to write to a Pub/Sub topic containing PROTOCOL_BUFFER schema
- [ ] forwarding Schema mismatch between the Row payload and the Pub/Sub topic Avro schema
- [ ] serializing a Json formatted Row and writing to a Pub/Sub topic Avro schema
### Issue Priority
Priority: 3
### Issue Component
Component: io-java-gcp
Contributor guide
Research direction
Review #24443 first, then inspect the PubsubWriteSchemaTransformProviderIT integration test. Add coverage for the listed Avro and JSON serialization cases, missing topic schemas, protocol-buffer handling, and schema mismatches; the task is done when these scenarios detect the specified errors in an integration context.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- google-cloud, java
- Domain
- cloud, testing
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100