apache / apache/beam

[Task][Java SDK]: Increase PubsubWriteSchemaTransformProvider integration test coverage

Open
#24,462 0 comments 0 reactions 0 assignees View on GitHub
gcp io java P3 task
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.