pipe-cd / pipe-cd/pipecd

Add Firestore integration tests for application datastore

Open
#7,076 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

kind/enhancement
Dominant language
Go
Stars
1.4k
Forks
364
Avg merge
1d 4h
Merged PRs (30d)
84

Description

What would you like to be added:
Add integration test coverage for the Firestore-backed application datastore, under test/integration/datastore/firestore/application_test.go.

The tests should verify the main application datastore operations against Firestore, such as creating an application, retrieving it by ID, listing applications, updating application configuration, and deleting or disabling application records where applicable. The coverage should follow the existing datastore integration test style used for other Firestore stores in the repository.

Why is this needed:
Application data is one of the core pieces of PipeCD’s datastore layer, but without Firestore integration tests it is harder to catch regressions that only appear when the datastore implementation talks to Firestore.

Unit tests can validate small pieces of logic, but they may miss Firestore-specific behavior such as document structure, query filters, ordering, update semantics, missing records, or serialization differences. Adding these tests would give maintainers more confidence that application datastore behavior works correctly in the real Firestore-backed environment and remains consistent as the implementation evolves.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with test/integration/datastore/firestore/application_test.go and compare the existing Firestore datastore integration test style in the repository. Cover creating, retrieving by ID, listing, updating configuration, and deleting or disabling application records where applicable. Run the relevant Firestore integration tests and confirm the main application datastore operations pass against a real Firestore-backed environment.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
databases
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.