Commit graph

22 commits

Author SHA1 Message Date
Gabriel Luiz Freitas Almeida
54dd81a681
chore: removes Poetry references from pyproject.toml and updates the project metadata (#4019)
* Remove Poetry references from pyproject.toml and update project metadata

* Remove '--no-update' flag from 'uv lock' commands in Makefile

* Add script metadata with Python version and dependencies

* Remove Poetry references and integrate UV setup in CI workflow

* Remove Poetry setup and installation from integration tests workflow

* Remove Poetry references and update workflow to use custom setup action

* Remove references to Poetry from configuration files
2024-10-04 17:24:55 +00:00
Yuqi Tang
34ef5f5964
Add undo/redo check (#3893)
* add check for other browsers

* [autofix.ci] apply automated fixes

* add command + zand y test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-09-23 21:12:59 -03:00
Lucas Oliveira
06ea6c408b
refactor: modular navigation and custom api calls (#3613)
* Added customization files

* Added custom API headers and changed logout mutation

* Changed mutationLogout on authGuard

* Renamed feature flags

* Changed auto login to run after primary loading

* Removed unused code

* Added undefined on mutationfunctiontype to have options

* Changed logout to mutationLogout

* Return data on getConfig

* Added custom wrapper

* changed hasStore to be the constant by default

* Added custom header

* Added customParam feature flag

* Fix routes and custom link and navigate to consider absolute and relative paths

* Fixed regex on  tabs search component

* Added CustomNavigate

* Added basename and ports and URLs config

* [autofix.ci] apply automated fixes

* Update config-constants.ts

* Update index.tsx

* Fixed path comparations

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-08-29 15:05:23 +00:00
Cristhian Zanforlin Lousa
ae096a3167
test: add new tests based on new basic examples + vector store tests (#2879)
* 🔧 (.github/workflows/typescript_test.yml): add BRAVE_SEARCH_API_KEY secret to workflow environment variables
 (frontend/src/modals/IOModal/components/chatView/chatMessage/index.tsx): add data-testid attribute to div element for testing purposes
 (frontend/tests/end-to-end/Hierarchical Tasks Agent.spec.ts): add end-to-end test for Hierarchical Tasks Agent
 (frontend/tests/end-to-end/Sequential Tasks Agent.spec.ts): add end-to-end test for Sequential Tasks Agent

* updating hierarchical task json

* 🔧 (.github/workflows/typescript_test.yml): add secrets for ASTRA_DB_APPLICATION_TOKEN and ASTRA_DB_API_ENDPOINT
♻️ (playwright.config.ts): refactor timeout value to 3 minutes
📝 (Complex Agent.spec.ts): update test to use BRAVE_SEARCH_API_KEY instead of OPENAI_API_KEY
📝 (Complex Agent.spec.ts): update test to use "apple" instead of "agile"
📝 (Hierarchical Tasks Agent.spec.ts): update test to use "langflow" instead of "agile"
📝 (Sequential Tasks Agent.spec.ts): update test to use waitForTimeout instead of isVisible

 (Vector Store.spec.ts): Add checks to skip tests if required environment variables are not set
🔧 (Vector Store.spec.ts): Update test logic to fill in required environment variables before running tests to ensure proper test execution
2024-07-22 21:30:30 +00:00
cristhianzl
5d58e796d4 add tests improvements 2024-07-01 13:53:55 -03:00
cristhianzl
aaff06316e (playwright.config.ts): update retries and workers configuration for CI
💡 (textAreaWrapper): add data-testid attribute for better test targeting
 (actionsMainPage.spec.ts): add waitForSelector for better test stability
 (basicExamples.spec.ts): replace waitForTimeout with waitForSelector
 (basicExamples.spec.ts): use data-testid for chat input for consistency
 (memoryChatbot.spec.ts): replace waitForTimeout with waitForSelector
 (memoryChatbot.spec.ts): use data-testid for chat input for consistency
 (documentQA.spec.ts): replace waitForTimeout with waitForSelector
 (documentQA.spec.ts): use data-testid for chat input for consistency
 (vectorStoreRAG.spec.ts): replace waitForTimeout with waitForSelector
 (vectorStoreRAG.spec.ts): use data-testid for chat input for consistency

 (tests): add waitForSelector to ensure elements are loaded before interaction

 (tests): add waitForSelector for 'fit view' button in end-to-end tests
2024-07-01 13:53:38 -03:00
cristhianzl
4e62f95a2a ♻️ (playwright.config.ts): increase workers from 1 to 3 to improve test parallelism
 (basicExamples.spec.ts): add waitForSelector for 'fit view' to ensure element is loaded

 (basicExamples.spec.ts): add waitForSelector for 'built successfully' to ensure element is loaded

 (chatInputOutput.spec.ts): add waitForSelector for 'extended-disclosure' to ensure element is loaded

 (codeAreaModalComponent.spec.ts): add waitForSelector for 'extended-disclosure' to ensure element is loaded

 (dropdownComponent.spec.ts): add waitForSelector for 'extended-disclosure' to ensure element is loaded

 (fileUploadComponent.spec.ts): add waitForSelector for 'extended-disclosure' to ensure element is loaded

 (filterEdge.spec.ts): add waitForSelector for 'extended-disclosure' to ensure element is loaded

 (filterEdge.spec.ts): update test expectations for 'disclosure-agents' to be visible

 (floatComponent.spec.ts): add waitForSelector for 'extended-disclosure' to ensure element is loaded

 (flowPage.spec.ts): add waitForSelector for 'extended-disclosure' to ensure element is loaded

 (folders.spec.ts): add waitForSelector for 'icon-ChevronLeft' to ensure element is loaded

 (folders.spec.ts): update folder name input and visibility check to improve reliability

 (generalBugs.spec.ts): add waitForSelector for 'extended-disclosure' to ensure element is loaded

 (tests): replace waitForTimeout with waitForSelector in end-to-end tests

Replace `waitForTimeout` with `waitForSelector` to improve test reliability and reduce flakiness.
2024-07-01 13:53:38 -03:00
cristhianzl
778abd7bdb ♻️ (playwright.config.ts): disable fullyParallel and reduce workers to 1 for stability
♻️ (playwright.config.ts): comment out headless option for Chrome
♻️ (playwright.config.ts): comment out Firefox configuration for simplicity
 (chatInputOutputUser.spec.ts): update test assertions for better readability and accuracy

 (flowSettings.spec.ts, store.spec.ts): add steps to close modal after saving settings to ensure proper test flow and cleanup
2024-06-05 14:04:49 -03:00
cristhianzl
999ce405c4 ♻️ (playwright.config.ts): increase workers to 10 for faster parallel tests
♻️ (playwright.config.ts): set headless to false for better debugging

♻️ (addNewVariableButton.tsx): add data-testid to save button for testing
🐛 (addNewVariableButton.tsx): fix optional chaining in error handling

♻️ (sideBarFolderButtons/index.tsx): add data-testid to input for testing
♻️ (sideBarFolderButtons/index.tsx): remove unnecessary commas

🐛 (api.tsx): fix duplicate request check to include method "get"
♻️ (api.tsx): remove unnecessary commas in function calls

♻️ (index.tsx): reorder import statements for better readability
💡 (index.tsx): remove trailing commas to adhere to coding standards
 (chatInputOutput.spec.ts): update file path for ChatTest.json for consistency
🐛 (darkStore.ts): add null check for GitHub stars to prevent potential errors

 (tests): update chatInputOutputUser.spec.ts to add new test for output inspection
🔧 (tests): fix path for collection.json in dragAndDrop.spec.ts

 (filterEdge.spec.ts): fix locator strings and remove redundant code
 (floatComponent.spec.ts): correct checkbox state expectations and remove redundant tests

 (folders.spec.ts): update folder creation and editing flow for consistency
 (globalVariables.spec.ts): remove redundant 'Save Variable' click action
 (inputComponent.spec.ts): fix incorrect locator for server port and improve readability

 (intComponent.spec.ts): add additional test steps for more options modal
 (saveComponents.spec.ts): update file path for flow_group_test.json
2024-06-03 14:52:03 -03:00
Cristhian Zanforlin Lousa
47aad8aa87
Resolve Test Failures Post-Dev Merge (#1742)
* 🔧 (playwright.config.ts): set workers to 1 to avoid parallel tests on CI
 (chat_io.spec.ts): refactor code to wait for modal to appear before clicking on the new project button
 (codeAreaModalComponent.spec.ts): refactor code to wait for modal to appear before clicking on the new project button, update code assertions
 (curl_api_generation.spec.ts): refactor code to wait for modal to appear before clicking on the new project button
 (dragAndDrop.spec.ts): refactor code to handle the case when generic node is not present
 (dropdownComponent.spec.ts): refactor code to wait for modal to appear before clicking on the new project button

 (filterEdge.spec.ts): add support for dynamic waiting for modal to appear before interacting with it
🐛 (filterEdge.spec.ts): remove redundant clicks on buttons and improve code readability
♻️ (filterEdge.spec.ts): refactor code to use loop instead of repetitive code for zooming out and waiting for timeout
 (filterEdge.spec.ts): update assertions to match changes in the application UI

 (floatComponent.spec.ts): refactor floatComponent test to use getByTitle instead of complex locators for button clicks
 (flowPage.spec.ts): refactor flowPage test to use getByTitle instead of complex locators for button clicks
 (group.spec.ts): refactor group test to use getByTestId instead of complex locators for button clicks and add loop to handle modal loading
 (inputComponent.spec.ts): refactor inputComponent test to use getByTitle instead of complex locators for button clicks

 (inputListComponent.spec.ts): add support for dynamic modal count to handle asynchronous modal loading
🐛 (inputListComponent.spec.ts): fix search query in inputListComponent test
♻️ (inputListComponent.spec.ts): refactor repetitive code for zooming out in inputListComponent test
 (intComponent.spec.ts): add support for dynamic modal count to handle asynchronous modal loading
♻️ (intComponent.spec.ts): refactor repetitive code for zooming out in intComponent test

 (keyPairListComponent.spec.ts): add support for dynamic modal count to handle modal loading delay
 (keyPairListComponent.spec.ts): update search input value to "amazon bedrock" for more accurate search results
 (keyPairListComponent.spec.ts): update node locator to "model_specsAmazon Bedrock" for more accurate node selection
 (keyPairListComponent.spec.ts): update zoom out action to use "zoom out" title for better readability
 (keyPairListComponent.spec.ts): update keypair verification locator to "editNodekeypair0" for more accurate verification
 (keyPairListComponent.spec.ts): update showcache checkbox locator to "showcache" for better readability
 (keyPairListComponent.spec.ts): update showcredentials_profile_name checkbox locator to "showcredentials_profile_name" for better readability
 (keyPairListComponent.spec.ts): update elementCountNode variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCount variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocator variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCount variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocatorNode variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCountNode variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocator variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCount variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocatorNode variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCountNode variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocator variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCount variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocatorNode variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCountNode variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocator variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCount variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocatorNode variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCountNode variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocator variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCount variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plusButtonLocatorNode variable to handle nullability
 (keyPairListComponent.spec.ts): update elementCountNode variable to handle nullability
 (keyPairListComponent.spec.ts): update keyPairVerification variable to handle nullability
 (keyPairListComponent.spec.ts): update elementKeyCount variable to handle nullability
 (keyPairListComponent.spec.ts): update plus

 (promptModalComponent.spec.ts): add support for dynamic modal count to handle asynchronous modal rendering
 (python_api_generation.spec.ts): add support for dynamic modal count to handle asynchronous modal rendering
 (saveComponents.spec.ts): add support for dynamic modal count to handle asynchronous modal rendering
 (store.spec.ts): add support for dynamic icon count to handle asynchronous rendering
 (textAreaModalComponent.spec.ts): add support for dynamic modal count to handle asynchronous modal rendering

 (toggleComponent.spec.ts): add support for dynamic waiting for modal to appear before interacting with it
🐛 (toggleComponent.spec.ts): fix typo in element locator for dataDirectory
♻️ (toggleComponent.spec.ts): refactor repetitive code for zooming out
 (toggleComponent.spec.ts): add assertions for checking toggle state and button clicks
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggleComponent.spec.ts): refactor repetitive code for toggling and checking toggle state
♻️ (toggle

* 🔧 (frontend/package.json): add dotenv package as a dependency to enable environment variable configuration
🔧 (frontend/playwright.config.ts): add dotenv configuration to read environment variables from .env file
♻️ (frontend/src/modals/IOModal/components/chatView/chatMessage/index.tsx): refactor code to add data-testid attribute to span element for sender name to improve testability
 (frontend/tests/end-to-end/chatInputOutput.spec.ts): add end-to-end test for user interaction with chat input/output functionality
 (frontend/tests/end-to-end/chat_io_teste.spec.ts): add end-to-end test for chat input/output functionality with file upload

 (chat_io.spec.ts): remove chat_io.spec.ts test file as it is no longer needed
 (textInputOutput.spec.ts): add new test file textInputOutput.spec.ts to test the functionality of text input and output components in the application

* 📝 (typescript_test.yml): remove unnecessary comments and unused code related to Playwright browser binaries caching and installation
🔧 (typescript_test.yml): refactor setup of Python and Poetry versions to use a custom GitHub action for caching and setting up the environment efficiently

*  (globalVariables.spec.ts): add end-to-end test for global variables functionality in the frontend
 (textInputOutput.spec.ts): rename test from "CodeAreaModalComponent" to "TextInputOutputComponent" to improve clarity and accuracy

* 📝 (chatInputOutput.spec.ts): update test URL to use relative path instead of absolute path for better test portability
📝 (filterEdge.spec.ts): update test URL to use relative path instead of absolute path for better test portability
📝 (inputListComponent.spec.ts): update test URL to use relative path instead of absolute path for better test portability
📝 (store.spec.ts): update test URL to use relative path instead of absolute path for better test portability
📝 (textAreaModalComponent.spec.ts): update test URL to use relative path instead of absolute path for better test portability

* 🚀 (typescript_test.yml): add uvicorn command to run the app with Playwright tests
🔧 (typescript_test.yml): configure uvicorn to use the langflow.main:create_app factory function, listen on all interfaces, use port 7860, enable auto-reload, read environment variables from .env file, and use asyncio event loop

* 🔧 (typescript_test.yml): fix path to .env file in the uvicorn command to correctly load environment variables

* 🔧 (typescript_test.yml): fix path to .env file in uvicorn command to correctly locate the file

* 🐛 (typescript_test.yml): remove unnecessary --env-file flag from uvicorn command to fix an issue with loading environment variables

* 🔧 (typescript_test.yml): run uvicorn command in the background and add a 2-second sleep to allow the server to start before running Playwright tests

*  (typescript_test.yml): update Playwright test command to use a single worker (--workers=1) to avoid race conditions and improve stability during test execution

*  (.github/workflows/typescript_test.yml): remove unnecessary flags from the Playwright test command to simplify the command and improve readability

* 🔧 (typescript_test.yml): add command to install Playwright dependencies before running Playwright tests to ensure all required dependencies are installed

* ⬆️ (typescript_test.yml): upgrade Playwright installation command to use 'npm install' instead of 'npx playwright install --with-deps' to simplify the installation process

*  (typescript_test.yml): add npm start command before running the tests to ensure the frontend server is running during the tests

* 🔧 (typescript_test.yml): run 'npm start' command in the background to allow the next step to execute concurrently
 (typescript_test.yml): add step to upload blob report to GitHub Actions Artifacts for easier access and analysis

*  (typescript_test.yml): update Playwright test command to include shard index and total for parallel test execution

* 🔧 (playwright.config.ts): add conditional dotenv configuration based on process.env.CI to prevent loading .env file in CI environment

* 🔧 (playwright.config.ts): update dotenv configuration to only load .env file when not running in a CI environment
📝 (playwright.config.ts): add comment explaining the purpose of the dotenv configuration and providing a link to the Playwright documentation for test configuration

* ♻️ (playwright.config.ts): comment out dotenv.config() calls to improve performance and remove unnecessary code

* 📝 (playwright.config.ts): comment out the forbidOnly and retries options to disable them
📝 (playwright.config.ts): change the reporter option to always use the "blob" reporter
📝 (playwright.config.ts): comment out the globalTeardown option to disable it
📝 (playwright.config.ts): set the reuseExistingServer option to always be true

* ♻️ (playwright.config.ts): refactor fullyParallel option to be set to false instead of true to disable running tests in parallel

*  (.github/workflows/typescript_test.yml): remove shardIndex and shardTotal arguments from the Playwright test command to simplify the command and avoid unnecessary complexity

* 🐛 (playwright.config.ts): add --loop asyncio flag to uvicorn command to fix asyncio event loop issue

* 📝 (playwright.config.ts): add support for reading environment variables from a .env file
♻️ (playwright.config.ts): refactor code to use path module instead of importing it from @playwright/test
 (playwright.config.ts): enable forbidOnly option to fail the build on CI if test.only is accidentally left in the source code
 (playwright.config.ts): enable retries option to retry tests on CI 2 times
♻️ (playwright.config.ts): refactor code to use globalTeardown option to specify the path to globalTeardown.ts file

* 🔧 (typescript_test.yml): run Playwright tests in the background using the '&' operator to improve workflow efficiency
♻️ (playwright.config.ts): refactor workers configuration to use 10 workers on CI and 1 worker otherwise to optimize test execution
🐛 (darkStore.tsx): fix issue where stars and lastUpdated values were not being refreshed correctly on CI environment

* ♻️ (darkStore.tsx): remove unnecessary empty line to improve code readability

* 🔧 (typescript_test.yml): remove unnecessary ampersand (&) at the end of the 'npx playwright test' command to prevent running the command in the background

* 📝 (darkStore.tsx): set "githubStars" to "0" in localStorage when running in CI environment to ensure consistent test results
🐛 (filterEdge.spec.ts): update test assertions to match changes in the application UI

* 📝 (api.tsx): add condition to reject promise if error occurs during API request to GitHub to prevent auto-login flow
📝 (auto_login.spec.ts): update page.goto() URLs to use relative paths instead of absolute URLs
📝 (chatInputOutput.spec.ts): move dotenv.config() call after page.goto() to ensure proper environment variable loading
📝 (codeAreaModalComponent.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (curl_api_generation.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (dragAndDrop.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (dropdownComponent.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (floatComponent.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (flowPage.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (globalVariables.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (group.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (inputComponent.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (intComponent.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (keyPairListComponent.spec.ts): update page.goto() URL to use relative path instead of absolute URL
📝 (langflowShortcuts.spec.ts): update page.goto() URL to use relative path instead of absolute URL

📝 (nestedComponent.spec.ts): update page URL to use relative path instead of absolute path for better portability and flexibility
📝 (promptModalComponent.spec.ts): update page URL to use relative path instead of absolute path for better portability and flexibility
📝 (saveComponents.spec.ts): update page URL to use relative path instead of absolute path for better portability and flexibility
📝 (textInputOutput.spec.ts): update page URL to use relative path instead of absolute path for better portability and flexibility
📝 (toggleComponent.spec.ts): update page URL to use relative path instead of absolute path for better portability and flexibility

* 🔧 (playwright.config.ts): set workers to a fixed value of 10 to improve test performance and avoid parallel tests on CI
🐛 (group.spec.ts): move page.goto("/") inside the test function to ensure the page is properly loaded before running the test

*  (chatInputOutput.spec.ts): add dotenv configuration to load environment variables before running the test
🐛 (chatInputOutput.spec.ts): fix issue where the test was not waiting for the page to load before interacting with it
 (curl_api_generation.spec.ts): add dotenv configuration to load environment variables before running the test
🐛 (curl_api_generation.spec.ts): fix issue where the test was not waiting for the page to load before interacting with it

* 🔧 (playwright.config.ts): update number of workers based on the value of the CI environment variable
🐛 (chatInputOutput.spec.ts): fix potential null reference error when getting modal count
🐛 (codeAreaModalComponent.spec.ts): fix potential null reference error when getting modal count
🐛 (curl_api_generation.spec.ts): fix potential null reference error when getting modal count
🐛 (dropdownComponent.spec.ts): fix potential null reference error when getting modal count
🐛 (filterEdge.spec.ts): fix potential null reference error when getting modal count
🐛 (globalVariables.spec.ts): fix potential null reference error when getting modal count
🐛 (group.spec.ts): fix potential null reference error when getting modal count
🐛 (inputComponent.spec.ts): fix potential null reference error when getting modal count
🐛 (inputListComponent.spec.ts): fix potential null reference error when getting modal count
🐛 (intComponent.spec.ts): fix potential null reference error when getting modal count
🐛 (keyPairListComponent.spec.ts): fix potential null reference error when getting modal count
🐛 (langflowShortcuts.spec.ts): fix potential null reference error when getting modal count
🐛 (nestedComponent.spec.ts): fix potential null reference error when getting modal count

🐛 (promptModalComponent.spec.ts): fix potential null pointer exception when accessing page object
🐛 (python_api_generation.spec.ts): fix potential null pointer exception when accessing page object
🐛 (saveComponents.spec.ts): fix potential null pointer exception when accessing page object
🐛 (textAreaModalComponent.spec.ts): fix potential null pointer exception when accessing page object
🐛 (textInputOutput.spec.ts): fix potential null pointer exception when accessing page object
🐛 (toggleComponent.spec.ts): fix potential null pointer exception when accessing page object
🐛 (tweaks_test.spec.ts): fix potential null pointer exception when accessing page object

* 🔧 (playwright.config.ts): update workers configuration to use 10 workers on CI and default to an empty value otherwise
🔧 (playwright.config.ts): update reporter configuration to use "blob" reporter on CI and "html" reporter otherwise

* 🔧 (playwright.config.ts): update workers configuration to use a default value of 5 when not running on CI environment, to improve test performance and resource usage

*  (playwright.config.ts): enable fully parallel test execution to improve test performance
🐛 (chatInputOutput.spec.ts): handle potential error when counting modal titles to prevent test failures
🐛 (codeAreaModalComponent.spec.ts): handle potential error when counting modal titles to prevent test failures
🐛 (curl_api_generation.spec.ts): handle potential error when counting modal titles to prevent test failures
🐛 (dragAndDrop.spec.ts): handle potential error when counting modal titles to prevent test failures
🐛 (dropdownComponent.spec.ts): handle potential error when counting modal titles to prevent test failures
🐛 (filterEdge.spec.ts): handle potential error when counting modal titles to prevent test failures
🐛 (flowPage.spec.ts): handle potential error when counting modal titles to prevent test failures
🐛 (globalVariables.spec.ts): handle potential error when counting modal titles to prevent test failures

🐛 (group.spec.ts): Fix bug in group and ungroup updating values test where modalCount was not correctly initialized
🐛 (inputComponent.spec.ts): Fix bug in InputComponent test where modalCount was not correctly initialized
🐛 (inputListComponent.spec.ts): Fix bug in InputListComponent test where modalCount was not correctly initialized
🐛 (intComponent.spec.ts): Fix bug in IntComponent test where modalCount was not correctly initialized
🐛 (keyPairListComponent.spec.ts): Fix bug in KeypairListComponent test where modalCount was not correctly initialized
🐛 (langflowShortcuts.spec.ts): Fix bug in LangflowShortcuts test where modalCount was not correctly initialized
🐛 (nestedComponent.spec.ts): Fix bug in NestedComponent test where modalCount was not correctly initialized
🐛 (promptModalComponent.spec.ts): Fix bug in PromptTemplateComponent test where modalCount was not correctly initialized
🐛 (python_api_generation.spec.ts): Fix bug in python_api_generation test where modalCount was not correctly initialized
🐛 (saveComponents.spec.ts): Fix bug in save group component tests where modalCount was not correctly initialized
🐛 (textAreaModalComponent.spec.ts): Fix bug in TextAreaModalComponent test where modalCount was not correctly initialized

 (textInputOutput.spec.ts): handle error when getting modal title element and set modalCount to 0 in case of error
 (toggleComponent.spec.ts): handle error when getting modal title element and set modalCount to 0 in case of error
 (tweaks_test.spec.ts): handle error when getting modal title element and set modalCount to 0 in case of error

* ⬆️ (playwright.config.ts): downgrade the number of workers from 10 to 5 to reduce resource usage and improve test stability

* ⬆️ (playwright.config.ts): decrease the number of workers to 1 to avoid parallel tests on CI
📝 (playwright.config.ts): comment out the workers configuration and add a new line with a single worker to clarify the intention
 (playwright.config.ts): add a new file "temp" to the frontend directory

* 📝 (chatInputOutput.spec.ts): add support for loading environment variables from .env file for local development and CI/CD environments
📝 (textInputOutput.spec.ts): add support for loading environment variables from .env file for local development and CI/CD environments

* 🔧 (typescript_test.yml): add step to create .env file and populate it with secret environment variables
🚀 (typescript_test.yml): run Playwright tests after creating .env file to ensure tests have access to necessary environment variables

*  (dragAndDrop.spec.ts): add a test to close the modal by clicking on the "Close" button

* 🔧 (typescript_test.yml): update Playwright test command to include shard index and total for distributed test execution
♻️ (playwright.config.ts): refactor workers configuration to use environment variable CI to determine the number of workers for parallel tests

* ⬆️ (playwright.config.ts): downgrade the number of workers to 1 to avoid parallel tests on CI environment

* 📝 (filterEdge.spec.ts): remove unnecessary click on element with id 'headlessui-disclosure-button-:rld:'
♻️ (filterEdge.spec.ts): remove redundant assertions for elements with ids 'saved_componentsBasic RAG' and 'saved_componentsGroup'
♻️ (floatComponent.spec.ts): refactor code to handle modal dynamically by checking for modal title element and waiting for it to appear before clicking on 'new-project-btn' element

* 🔧 (playwright.config.ts): update number of workers to 5 when running on CI to improve test parallelization
🐛 (filterEdge.spec.ts): add a 2-second delay before asserting visibility of tooltips to ensure they are fully rendered before checking visibility

* 📝 (index.tsx): add data-testid attribute to the flow name element for easier testing and querying
📝 (index.tsx): add data-testid attribute to the public checkbox for easier testing and querying
📝 (test_file.txt): add a test file for end-to-end testing purposes
📝 (fileUploadComponent.spec.ts): add end-to-end test for file upload functionality

 (flowSettings.spec.ts): add end-to-end test for flow settings functionality
 (store.spec.ts): add end-to-end test for sharing a component with the share button

* 🔧 (playwright.config.ts): set workers to 1 to avoid parallel tests execution and improve stability
📝 (test_file.txt): remove newline at the end of the file for consistency
♻️ (flowPage.spec.ts): refactor code to remove unnecessary lines and commented out code
♻️ (flowSettings.spec.ts): refactor code to generate a random flow name instead of hardcoding it

* 🔧 (typescript_test.yml): remove shardIndex and shardTotal arguments from the 'npx playwright test' command to simplify the command and remove unnecessary complexity
🐛 (textInputOutput.spec.ts): change 'textContent()' to 'inputValue()' to correctly retrieve the value of the input field

* ♻️ (typescript_test.yml): refactor test workflow to remove unnecessary matrix configuration for shardIndex and shardTotal
 (typescript_test.yml): update test workflow to run tests on a single shard instead of multiple shards for simplicity and efficiency

* 🔧 (playwright.config.ts): add clipboard permissions for chromium and firefox projects to enable clipboard read and write functionality
🔧 (curl_api_generation.spec.ts): remove unnecessary context permission grant for clipboard read and write
🔧 (python_api_generation.spec.ts): remove unnecessary context permission grant for clipboard read and write
🔧 (tweaks_test.spec.ts): remove unnecessary context permission grant for clipboard read and write

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@logspace.ai>
2024-04-19 09:11:30 -03:00
cristhianzl
276dc09926 (playwright.config.ts): increase the number of workers from 2 to 3 to improve test parallelization
📝 (auto_login.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (chat_io.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (codeAreaModalComponent.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (dragAndDrop.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (flowPage.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (inputComponent.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (keyPairListComponent.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (nestedComponent.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (promptModalComponent.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (saveComponents.spec.ts): remove unnecessary beforeEach hook and commented code
📝 (toggleComponent.spec.ts): remove unnecessary beforeEach hook and commented code
2024-04-08 12:58:00 -03:00
cristhianzl
120c4687ee (playwright.config.ts): decrease the number of workers from 3 to 2 to improve test performance
🐛 (chat_io.spec.ts): remove unnecessary wait and fix typo in test name
🐛 (codeAreaModalComponent.spec.ts): remove unnecessary click action
🐛 (curl_api_generation.spec.ts): fix the URL in page.goto() to include the protocol
🐛 (dropdownComponent.spec.ts): remove unnecessary click actions
🐛 (inputListComponent.spec.ts): remove duplicate click action
🐛 (python_api_generation.spec.ts): fix the test name in getByRole() function
🐛 (tweaks_test.spec.ts): fix the test name in getByRole() function
2024-04-01 21:28:06 -03:00
cristhianzl
c660c1e945 ⬆️ (playwright.config.ts): upgrade number of workers from 2 to 3 to improve test parallelization and speed up test execution 2024-03-27 17:06:08 -03:00
cristhianzl
a99612af3b (playwright.config.ts): set the number of workers to 2 to improve test parallelization
📝 (API/index.ts): remove conditional return of 100 for getRepoStars function to ensure accurate retrieval of stargazers count from GitHub API
📝 (API/index.ts): remove conditional return of example data for getExamples function to ensure accurate retrieval of examples from GitHub API
📝 (auto_login.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (codeAreaModalComponent.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (dragAndDrop.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (dropdownComponent.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (floatComponent.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (flowPage.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (group.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (inputComponent.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (intComponent.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (keyPairListComponent.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (langflowShortcuts.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (nestedComponent.spec.ts): update page.goto URLs to include the protocol to fix navigation issues
📝 (promptModalComponent.spec.ts): update page.goto URLs to include the protocol to fix navigation issues

 (saveComponents.spec.ts): update page.goto() URL to include the correct protocol and port for the frontend app
 (toggleComponent.spec.ts): update page.goto() URL to include the correct protocol and port for the frontend app
2024-03-27 17:04:19 -03:00
Gabriel Luiz Freitas Almeida
f19c449f15
Add Frontend Tests (#1571)
* Add TypeScript test workflow

* Update follow-redirects and katex versions

* Add Python setup and Poetry installation for backend

* Update Poetry version and setup Python in workflows

* Add Poetry installation step to GitHub Actions workflow

* Add Playwright report artifact upload and improve test script

* Update Playwright test configuration and add global teardown script

* Update path for playwright-report directory

* Update timeout value in playwright.config.ts

* Update page URLs in end-to-end tests

* Update GitHub Actions workflow and Playwright configuration

* Update TypeScript test workflow

* Add pattern and merge-multiple options to artifact download

* Update TypeScript test workflow to install Poetry

* Add cache steps for Playwright and Poetry

* Update PLAYWRIGHT_BROWSERS_PATH in TypeScript test workflow

* Add 'stuff/' to .gitignore

* Remove caching of Poetry virtualenv

* Update frontend tests to use Playwright for UI testing

* Add global teardown for removing temp database

* Add cache-hit condition to setup-node and setup-python steps

* Add new file to .gitignore and update ignored files

* Update playwright cache key in TypeScript test workflow

* Update path for blob-report in GitHub workflow

* Update path for playwright cache

* Update dependency installation in workflows

* Update baseURL in playwright.config.ts

* Update baseURL in playwright.config.ts

* Refactor test timeouts

* Remove playwright-report index.html file

* Add npm run start command to playwright.config.ts

* Update npm start command in playwright.config.ts

* Update Playwright browser caching and installation

* Update playwright cache path

* Update playwright cache path

* Update actions/cache version to v4

* Update Playwright cache key to use package-lock.json

* Update Playwright cache and install dependencies

* Fix typo in Playwright installation command

* Fix npm ci command in TypeScript test workflow

* Update TypeScript test workflow
2024-03-27 14:27:40 -03:00
cristhianzl
92aa159f39 add configuration to run all tests 2024-03-11 19:07:43 -03:00
Gabriel Luiz Freitas Almeida
392b81b519 Reapply "Refactor state management to use Zustand, migrate components to CustomComponent and other fixes"
This reverts commit f3b3d2cf68.
2024-02-05 19:02:34 -03:00
Gabriel Luiz Freitas Almeida
f3b3d2cf68
Revert "Refactor state management to use Zustand, migrate components to CustomComponent and other fixes" 2024-02-05 18:29:03 -03:00
anovazzi1
6fcc754704 Update Playwright configuration and fix Select component 2024-02-05 17:32:43 -03:00
anovazzi1
f7534516ef create shell scripts to run frontend test 2023-10-09 17:04:07 -03:00
anovazzi1
d419fd6ee4 first shell script to run frontend tests 2023-10-09 12:35:19 -03:00
anovazzi1
b2f14793e3 migrate progress and install playwrite 2023-09-20 19:53:25 -03:00