langflow icon indicating copy to clipboard operation
langflow copied to clipboard

Ensuring Stability: Component Unit Testing for Langflow PRs

Open edwinjosechittilappilly opened this issue 1 year ago • 2 comments

Feature Request

I would like to propose the following:

  • Define a set of prebuilt components with definite unit test cases.
  • When a pull request (PR) is created:
    • Run the test cases for each of these components.
    • At a minimum, run the test cases for the components whose files have been modified.

Benefits:

  • Ensures consistency in our development process.
  • Reduces the risk of breaking components after each update.
  • Instills confidence in developers to push to production.

Suggestion:

  • Implement this practice for basic components initially, even if not for all components.

Thank you for considering this suggestion.

Motivation

Motivation:

  • While developing a production-ready app, I encountered frequent issues where basic components broke in many of the builds.
  • I started my development before version 1.0.0, so I have witnessed the transition and observed that some basic components often break after certain PRs.

Your Contribution

I could help if in creating the unit tests for each basic components.

edwinjosechittilappilly avatar Jul 25 '24 20:07 edwinjosechittilappilly

Sounds good! If you could just wait the PR #2928, I think your work would be much easier to create the individual tests, since the IDs of the components are changing and they're being rendered by a generic component now. Thanks for the collaboration!

lucaseduoli avatar Jul 25 '24 20:07 lucaseduoli

Thanks @lucaseduoli for the update.I shall wait for the PR. Yeah is the component ID getting updated wrt any uuid right now ? cause when we export the flow we could see certain Random ID for each components being different for each flows.

edwinjosechittilappilly avatar Jul 29 '24 15:07 edwinjosechittilappilly

fix: https://github.com/langflow-ai/langflow/pull/2928

carlosrcoelho avatar Aug 13 '24 14:08 carlosrcoelho