Skip to content

Conversation

@dlarocque
Copy link
Contributor

Added a grep flag to run_tests.ts.

We want to be able to filter tests when running run_tests.ts. Test filtering is done in Mocha using the --grep command line flag. Since run_tests.ts swallows all command line arguments and does not forward them all, we cannot pass additional flags.

This allows us to filter tests using regular expressions where we use run_tests.ts- specifically when testing Firestore Lite.

Example: yarn test:lite:prod --grep "aggregateQuerySnapshotEqual"

We want to be able to filter tests when running `run_tests.ts`.
Test filtering is done in Mocha using the `--grep` command line flag.
Since `run_tests.ts` swallows all command line arguments and does not
forward them all, we cannot pass additional flags.

Added parsing of `grep` flag to the script, and forwards it to the
tests.

This allows us to filter tests using regular expressions where we use
`run_tests.ts`- specifically when testing Firestore Lite.
@dlarocque dlarocque requested review from a team as code owners January 14, 2026 15:56
@changeset-bot
Copy link

changeset-bot bot commented Jan 14, 2026

⚠️ No Changeset found

Latest commit: 88cff3b

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @dlarocque, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request enhances the test execution utility for Firestore by enabling dynamic test filtering. It integrates a grep option into the run_tests.ts script, providing developers with the flexibility to execute a subset of tests based on regular expression patterns. This improvement streamlines the testing workflow, particularly for focused development and debugging, by allowing precise control over which tests are run without modifying the underlying test runner directly.

Highlights

  • Test Filtering: Introduced a --grep flag to packages/firestore/scripts/run-tests.ts, allowing users to filter tests by name using regular expressions. This addresses the limitation where run_tests.ts previously swallowed command-line arguments, preventing direct use of Mocha's --grep flag.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@dlarocque dlarocque requested a review from hsubox76 January 14, 2026 15:56
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a grep command-line argument to the run_tests.ts script. This is a valuable addition that allows developers to filter tests using regular expressions, which is particularly useful for running specific tests in Firestore Lite. The implementation is straightforward and correct: it adds a grep option to the yargs parser and then conditionally includes the --grep flag and its value in the arguments passed to the test runner. The code is clean, easy to understand, and effectively addresses the need described in the pull request. I have reviewed the changes and found no issues.

@dlarocque dlarocque marked this pull request as draft January 14, 2026 15:57
@dlarocque dlarocque marked this pull request as ready for review January 14, 2026 15:58
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