Skip to content

test({react,preact,solid,angular}-query): remove 'fromGenericOptionsQueryFn' duplicating 'fromGenericQueryFn' - #11463

Open
sukvvon wants to merge 1 commit into
mainfrom
test/remove-duplicate-generic-options-query-case
Open

test({react,preact,solid,angular}-query): remove 'fromGenericOptionsQueryFn' duplicating 'fromGenericQueryFn'#11463
sukvvon wants to merge 1 commit into
mainfrom
test/remove-duplicate-generic-options-query-case

Conversation

@sukvvon

@sukvvon sukvvon commented Sep 9, 2026

Copy link
Copy Markdown
Member

🎯 Changes

fromGenericOptionsQueryFn is character-for-character the same query as the fromGenericQueryFn declared right above it, with the same two assertions. Despite the name, it never calls queryOptions — so it does not cover the generic-options path either, and asserts nothing the previous case did not.

const fromGenericQueryFn = useQuery({ queryKey: key, queryFn: () => queryFn() })
expectTypeOf(fromGenericQueryFn.data).toEqualTypeOf<string | undefined>()
expectTypeOf(fromGenericQueryFn.error).toEqualTypeOf<Error | null>()

const fromGenericOptionsQueryFn = useQuery({ queryKey: key, queryFn: () => queryFn() })  // identical
expectTypeOf(fromGenericOptionsQueryFn.data).toEqualTypeOf<string | undefined>()
expectTypeOf(fromGenericOptionsQueryFn.error).toEqualTypeOf<Error | null>()

Nothing is lost by removing it:

  • Generic queryFn inference — still covered by fromGenericQueryFn, which stays and carries the identical assertions in all four adapters.
  • The queryOptions path — covered by each adapter's dedicated queryOptions.test-d (query-options.test-d.ts in angular), which has a should work when passed to useQuery / injectQuery case plus 9–28 further assertions. The removed block never exercised this path at all.

vue-query and svelte-query never had this case, and their queryOptions type tests are among the most thorough (32 and 21 assertions).

The angular copy also carried a // todo use query options? comment, dropped with it.

Suites pass unchanged: 583 / 540 / 351 / 252, no type errors.

✅ Checklist

  • I have followed the steps in the Contributing guide.
  • I have tested code changes locally with pnpm run test:pr, or these tests do not apply to this pull request.
  • I fully understand the code in this pull request, including any code generated with AI assistance.

🚀 Release Impact

  • This change affects published code, and I have generated a changeset.
  • This change is docs/CI/dev-only (no release).

Summary by CodeRabbit

  • Tests
    • Removed redundant type-inference test cases across Angular, Preact, React, and Solid integrations.
    • Existing coverage for generic query-function type inference remains in place.

@coderabbitai

coderabbitai Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: db87b239-3cd6-4677-a724-15fd48f374da

📥 Commits

Reviewing files that changed from the base of the PR and between c07c1f5 and c51e5e2.

📒 Files selected for processing (4)
  • packages/angular-query-experimental/src/__tests__/inject-query.test-d.ts
  • packages/preact-query/src/__tests__/useQuery.test-d.tsx
  • packages/react-query/src/__tests__/useQuery.test-d.tsx
  • packages/solid-query/src/__tests__/useQuery.test-d.tsx
💤 Files with no reviewable changes (4)
  • packages/react-query/src/tests/useQuery.test-d.tsx
  • packages/solid-query/src/tests/useQuery.test-d.tsx
  • packages/preact-query/src/tests/useQuery.test-d.tsx
  • packages/angular-query-experimental/src/tests/inject-query.test-d.ts

Included review availability: Your plan provides up to 10 included reviews per hour; 7 remain after this review.


📝 Walkthrough

Walkthrough

The change removes duplicated generic query-function inference tests from Angular, Preact, React, and Solid. Existing direct generic query-function tests remain.

Changes

Generic query test cleanup

Layer / File(s) Summary
Remove duplicate inference tests
packages/angular-query-experimental/src/__tests__/inject-query.test-d.ts, packages/preact-query/src/__tests__/useQuery.test-d.tsx, packages/react-query/src/__tests__/useQuery.test-d.tsx, packages/solid-query/src/__tests__/useQuery.test-d.tsx
Removed redundant options-based generic query-function type tests and their data and error assertions. Existing direct generic query-function coverage remains.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~2 minutes

Merge Risk: ⚪ Minimal · up to c51e5

This removes redundant type tests while retaining the existing generic query-function and queryOptions coverage. No current merge-blocking risk is identified.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description check ✅ Passed The description uses all required template sections. It explains the duplicate test removal, confirms retained coverage, reports test results, and marks the change as dev/test-only with no release imp…
Title check ✅ Passed The title clearly identifies the affected query adapters and the removal of the duplicate fromGenericOptionsQueryFn test.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch test/remove-duplicate-generic-options-query-case

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sukvvon sukvvon self-assigned this Sep 9, 2026
@nx-cloud

nx-cloud Bot commented Sep 9, 2026

Copy link
Copy Markdown

View your CI Pipeline Execution ↗ for commit c51e5e2

Command Status Duration Result
nx affected --targets=test:sherif,test:knip,tes... ✅ Succeeded 7m 31s View ↗
nx run-many --target=build --exclude=examples/*... ✅ Succeeded 20s View ↗

☁️ Nx Cloud last updated this comment at 2026-09-09 15:49:40 UTC

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

🚀 Changeset Version Preview

2 package(s) bumped directly, 23 bumped as dependents.

🟨 Minor bumps

Package Version Reason
@tanstack/query-core 5.102.8 → 5.103.0 Changeset
@tanstack/svelte-query 6.1.48 → 6.2.0 Changeset
@tanstack/angular-query-experimental 5.102.8 → 5.103.0 Dependent
@tanstack/angular-query-persist-client 5.102.8 → 5.103.0 Dependent
@tanstack/eslint-plugin-query 5.102.8 → 5.103.0 Dependent
@tanstack/preact-query 5.102.8 → 5.103.0 Dependent
@tanstack/preact-query-devtools 5.102.8 → 5.103.0 Dependent
@tanstack/preact-query-persist-client 5.102.8 → 5.103.0 Dependent
@tanstack/query-async-storage-persister 5.102.8 → 5.103.0 Dependent
@tanstack/query-broadcast-client-experimental 5.102.8 → 5.103.0 Dependent
@tanstack/query-devtools 5.102.8 → 5.103.0 Dependent
@tanstack/query-persist-client-core 5.102.8 → 5.103.0 Dependent
@tanstack/query-sync-storage-persister 5.102.8 → 5.103.0 Dependent
@tanstack/react-query 5.102.8 → 5.103.0 Dependent
@tanstack/react-query-devtools 5.102.8 → 5.103.0 Dependent
@tanstack/react-query-next-experimental 5.102.8 → 5.103.0 Dependent
@tanstack/react-query-persist-client 5.102.8 → 5.103.0 Dependent
@tanstack/solid-query 5.102.8 → 5.103.0 Dependent
@tanstack/solid-query-devtools 5.102.8 → 5.103.0 Dependent
@tanstack/solid-query-persist-client 5.102.8 → 5.103.0 Dependent
@tanstack/svelte-query-devtools 6.1.48 → 6.2.0 Dependent
@tanstack/svelte-query-persist-client 6.1.48 → 6.2.0 Dependent
@tanstack/vue-query 5.102.8 → 5.103.0 Dependent
@tanstack/vue-query-devtools 6.1.48 → 6.2.0 Dependent

🟩 Patch bumps

Package Version Reason
@tanstack/lit-query 0.2.20 → 0.2.21 Dependent

@pkg-pr-new

pkg-pr-new Bot commented Sep 9, 2026

Copy link
Copy Markdown
More templates

@tanstack/angular-query-experimental

npm i https://pkg.pr.new/@tanstack/angular-query-experimental@11463

@tanstack/eslint-plugin-query

npm i https://pkg.pr.new/@tanstack/eslint-plugin-query@11463

@tanstack/lit-query

npm i https://pkg.pr.new/@tanstack/lit-query@11463

@tanstack/preact-query

npm i https://pkg.pr.new/@tanstack/preact-query@11463

@tanstack/preact-query-devtools

npm i https://pkg.pr.new/@tanstack/preact-query-devtools@11463

@tanstack/preact-query-persist-client

npm i https://pkg.pr.new/@tanstack/preact-query-persist-client@11463

@tanstack/query-async-storage-persister

npm i https://pkg.pr.new/@tanstack/query-async-storage-persister@11463

@tanstack/query-broadcast-client-experimental

npm i https://pkg.pr.new/@tanstack/query-broadcast-client-experimental@11463

@tanstack/query-core

npm i https://pkg.pr.new/@tanstack/query-core@11463

@tanstack/query-devtools

npm i https://pkg.pr.new/@tanstack/query-devtools@11463

@tanstack/query-persist-client-core

npm i https://pkg.pr.new/@tanstack/query-persist-client-core@11463

@tanstack/query-sync-storage-persister

npm i https://pkg.pr.new/@tanstack/query-sync-storage-persister@11463

@tanstack/react-query

npm i https://pkg.pr.new/@tanstack/react-query@11463

@tanstack/react-query-devtools

npm i https://pkg.pr.new/@tanstack/react-query-devtools@11463

@tanstack/react-query-next-experimental

npm i https://pkg.pr.new/@tanstack/react-query-next-experimental@11463

@tanstack/react-query-persist-client

npm i https://pkg.pr.new/@tanstack/react-query-persist-client@11463

@tanstack/solid-query

npm i https://pkg.pr.new/@tanstack/solid-query@11463

@tanstack/solid-query-devtools

npm i https://pkg.pr.new/@tanstack/solid-query-devtools@11463

@tanstack/solid-query-persist-client

npm i https://pkg.pr.new/@tanstack/solid-query-persist-client@11463

@tanstack/svelte-query

npm i https://pkg.pr.new/@tanstack/svelte-query@11463

@tanstack/svelte-query-devtools

npm i https://pkg.pr.new/@tanstack/svelte-query-devtools@11463

@tanstack/svelte-query-persist-client

npm i https://pkg.pr.new/@tanstack/svelte-query-persist-client@11463

@tanstack/vue-query

npm i https://pkg.pr.new/@tanstack/vue-query@11463

@tanstack/vue-query-devtools

npm i https://pkg.pr.new/@tanstack/vue-query-devtools@11463

commit: c51e5e2

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

size-limit report 📦

Path Size
react full 11.85 KB (0%)
react minimal 8.84 KB (0%)

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