Skip to content

Reorganize AI integration-related test fixtures #5993

Description

@ericapisani

Context: #5937

Right now, a large number of our pytest fixtures live in the global conftest.py file. For maintainability reasons, it'd be better to move provider-specific (or just AI integration-specific) fixtures into separate conftest.py files and load them into the global conftest.py using pytest_plugins.

Activity

  1. linear-code commented on Apr 13, 2026

    @linear-code
  2. mizoz commented on Apr 28, 2026

    @mizoz

    Hi! I'd love to contribute. Could you assign this issue to me?

  3. moved this to Waiting for: Product Owner in GitHub Issues with 👀 3on Apr 28, 2026
  4. moved this from Waiting for: Product Owner to No status in GitHub Issues with 👀 3on May 12, 2026
  5. omribz156 commented on May 25, 2026

    @omribz156

    I traced the fixture cluster and this looks like a good small first split.

    The cleanest scoped pass I see is to move the MCP transport helpers and AI model response fixtures out of the global tests/conftest.py into the integrations layer, where the current users already live:

    • MCP/FastMCP helpers: stdio, json_rpc, json_rpc_sse, and the selector/payload helpers
    • AI response fixtures used by OpenAI, OpenAI Agents, LiteLLM, and LangChain tests

    That would leave the default behavior unchanged for integration tests while cutting down the global conftest surface. I also noticed the contribution guide asks for prior maintainer discussion before PR work, so I am checking here before opening anything.

    This would be Codex-assisted, with the final patch reviewed locally and kept to that fixture move only.

  6. moved this to Waiting for: Product Owner in GitHub Issues with 👀 3on May 25, 2026
  7. ericapisani commented on May 25, 2026

    @ericapisani
    MemberAuthor

    Hi @omribz156 ,

    Thanks for offering to take a look at this, the split that you've proposed looks good. I'll assign the issue to you, and don't hesitate to reach out if you have any questions as you dig into this.

  8. moved this from Waiting for: Product Owner to No status in GitHub Issues with 👀 3on May 25, 2026
  9. GautamThapa1 commented on Aug 2, 2026

    @GautamThapa1

    Hi @ericapisani, since there hasn't been any activity on this for a couple of months, I'd like to take over if that's okay.

    My plan is to move only the AI provider response fixtures to a new tests/integrations/conftest.py and load it via pytest_plugins in the root conftest.py. Specifically, I plan to move these 9 fixtures:

    get_model_response

    get_rate_limit_model_response

    streaming_chat_completions_model_response

    nonstreaming_chat_completions_model_response

    openai_embedding_model_response

    nonstreaming_responses_model_response

    nonstreaming_anthropic_model_response

    nonstreaming_google_genai_model_response

    responses_tool_call_model_responses

  10. moved this to Waiting for: Product Owner in GitHub Issues with 👀 3on Aug 2, 2026
  11. moved this from Waiting for: Product Owner to No status in GitHub Issues with 👀 3on Aug 5, 2026
  12. moved this to Waiting for: Product Owner in GitHub Issues with 👀 3on Sep 1, 2026
  13. moved this from Waiting for: Product Owner to No status in GitHub Issues with 👀 3on Sep 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions