Commit Graph

603 Commits

Author SHA1 Message Date
Nick Sweeting ffea60ad79 lint fixes 2025-06-16 15:48:13 -07:00
Nick Sweeting b141958455 Merge branch 'main' into hot-fix/file-upload 2025-06-16 11:25:17 -07:00
claude[bot] c16bfa4f65 Add comprehensive tests for find_file_upload_element_by_index method
This commit adds extensive test coverage for the file upload element finding
functionality in BrowserSession. Tests cover all codepaths including:

- Success cases: finding inputs on current node, descendants, siblings, ancestors  
- Parameter variations: max_height and max_descendant_depth limits
- Edge cases: missing indices, no inputs found, exception handling
- DOM structures: complex nesting, case sensitivity, attribute validation

The 17 test methods ensure robust validation of the enhanced DOM traversal
logic introduced in the file upload improvements.

Co-authored-by: Nick Sweeting <pirate@users.noreply.github.com>
2025-06-16 17:48:26 +00:00
Nick Sweeting 66fbb8b282 Merge branch 'main' into eventbus 2025-06-14 01:19:15 -07:00
Nick Sweeting 4fbb199089 fix storage_state setup 2025-06-14 00:11:25 -07:00
Nick Sweeting 7628274790 fix start_browser_session test 2025-06-13 18:04:59 -07:00
Nick Sweeting 749a46854c fix registry test 2025-06-13 18:02:20 -07:00
Nick Sweeting a404158253 centralize LLM mocking for tests into mocks.py 2025-06-13 17:06:31 -07:00
Nick Sweeting 7f49b4aa1d centralize LLM mocking for tests into mocks.py 2025-06-13 17:05:48 -07:00
Nick Sweeting 06488e11ba fix clickaction error handling test 2025-06-11 00:05:58 -07:00
Nick Sweeting d5d341f229 dont raise exception from click action 2025-06-10 23:57:41 -07:00
Nick Sweeting 656a129fba include original LLM status_code in raised exception 2025-06-10 05:33:08 -07:00
Nick Sweeting 1d244960c4 move __del__ monkeypatch to init 2025-06-10 03:47:27 -07:00
Nick Sweeting 1c57d36211 attemp alternative approach where we creaet a dedicated loop for shudown 2025-06-10 03:43:53 -07:00
Nick Sweeting fa6fc98783 silence __del__ event loop closed errors on exit 2025-06-10 03:40:58 -07:00
Nick Sweeting 2631c4c03f also stop playwright at the end of the test 2025-06-10 03:38:45 -07:00
Nick Sweeting e143d079af stop playwright node subprocess when session.kill is called 2025-06-10 03:32:52 -07:00
Nick Sweeting ed2a503f0d fix multiprocessing tests 2025-06-10 03:18:28 -07:00
Nick Sweeting 1e57f0de6c add tests for parallelism 2025-06-10 03:04:04 -07:00
Nick Sweeting a65e43b07e update test best practices 2025-06-10 03:03:16 -07:00
Nick Sweeting 50cb5d858c Update tests/ci/test_registry.py
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2025-06-10 05:21:37 -04:00
Nick Sweeting af85850b41 fix registry test fixture scopes 2025-06-10 00:25:41 -07:00
Nick Sweeting 930a7aa4de use self.logger for timing log lines 2025-06-10 00:24:50 -07:00
Nick Sweeting 02bba49ff6 fix older test_browser_session_parameter_issue test 2025-06-09 22:34:34 -07:00
Nick Sweeting 2ebb9db6f1 tweak logging and emoji 2025-06-09 21:18:04 -07:00
Nick Sweeting fa974d6e2f fix early Path.resolve call and other cubic comments 2025-06-09 20:25:39 -07:00
Nick Sweeting b5ab4c6492 fix BrowserSession reuse in tests 2025-06-09 20:14:26 -07:00
Nick Sweeting b8f7b7cae2 tweak actions used in mock LLM responses 2025-06-09 18:52:17 -07:00
Nick Sweeting 921da7cb22 fix downloads timing tests 2025-06-09 18:51:15 -07:00
Nick Sweeting 15bd78cf0f add tests for all of the Re-Use a Browser examples 2025-06-09 18:39:14 -07:00
Nick Sweeting 68b033a8ff clarify docs that session must be started and stopped manually when keep_alive=True 2025-06-09 18:38:24 -07:00
Nick Sweeting b0ed680419 use patchright for stealth tests 2025-06-09 15:29:37 -07:00
Nick Sweeting bd349e922f stop playwright at the end of test 2025-06-09 15:28:58 -07:00
Magnus Müller eaab9f04d7 Enhance GitHub Actions workflow and evaluate_tasks.py to include detailed task evaluation results. The workflow now captures and displays detailed results in a structured format, while the Python script outputs detailed results as JSON for better integration with GitHub Actions. This improves visibility and understanding of task outcomes in the evaluation process. 2025-06-07 13:39:16 +02:00
Magnus Müller e6171e0fc1 Disable Chromium sandbox in BrowserProfile for CI environment in evaluate_tasks.py to improve compatibility with GitHub Actions. 2025-06-07 12:59:22 +02:00
Magnus Müller 43d96da06c Enhance error handling and debugging in evaluate_tasks.py by adding browser and LLM test calls. Capture and log errors during browser session initiation and agent execution, improving overall troubleshooting capabilities. 2025-06-07 12:53:14 +02:00
Magnus Müller 9899262186 Add additional debug logging in evaluate_tasks.py to track task execution flow and subprocess outputs. Enhance error reporting by capturing and displaying full stdout and stderr for better troubleshooting during agent execution. 2025-06-07 12:48:04 +02:00
Magnus Müller 54226c7b51 Add detailed debug logging in evaluate_tasks.py to capture agent execution steps and outputs. Enhance error reporting for subprocess failures and improve output handling when no agent output is provided. 2025-06-07 12:43:51 +02:00
Magnus Müller 592b9afbce Refactor evaluate_tasks.py to run agent tasks in separate subprocesses, enhancing isolation and error handling. Introduce argparse for task selection and improve logging management during task execution. 2025-06-07 12:37:07 +02:00
Magnus Müller 8246bcd299 Refactor run_task in evaluate_tasks.py to create a dedicated BrowserSession for each agent, improving session management and ensuring headless execution with --no-sandbox argument. 2025-06-07 11:58:01 +02:00
Magnus Müller 38cfa86738 Update browser_use_pip.yaml to simplify output requirements and refactor run_task in evaluate_tasks.py to remove shared profile parameter, enhancing browser session management with a dedicated profile. 2025-06-07 11:50:30 +02:00
Magnus Müller bf13dbb452 Refactor run_task function in evaluate_tasks.py to accept a shared profile for consistent browser sessions across tasks 2025-06-07 11:40:19 +02:00
Magnus Müller d50581e87c Remove --no-sandbox argument from BrowserProfile in evaluate_tasks.py to simplify configuration 2025-06-07 11:28:46 +02:00
Magnus Müller df14af7f00 Add --no-sandbox argument to BrowserProfile in evaluate_tasks.py for enhanced security during task execution 2025-06-07 11:20:26 +02:00
Magnus Müller b29dbe5f2a Remove keep_alive option from BrowserProfile in evaluate_tasks.py to streamline session management 2025-06-07 11:10:51 +02:00
Magnus Müller 576519ee40 Enhance CI workflow by adding agent tasks evaluation step and updating evaluate_tasks.py to output evaluation results 2025-06-07 10:59:24 +02:00
Magnus Müller 412904dc65 Add keep_alive option to BrowserProfile in evaluate_tasks.py for improved session persistence 2025-06-07 10:53:58 +02:00
Magnus Müller 3666d2b077 Add agent tasks evaluation script and update CI workflow to include it 2025-06-07 10:49:03 +02:00
Magnus Müller 9ef3d6198a Update test_agent_real_tasks to enable headless mode for BrowserProfile, enhancing browser session management 2025-06-07 10:13:18 +02:00
Magnus Müller b04d110d57 Refactor test_agent_real_tasks to utilize BrowserProfile for session management and improve browser session handling 2025-06-07 10:05:19 +02:00