Commit graph

14 commits

Author SHA1 Message Date
45d588ad2b E2E test improvements: auto-start services, use Brave browser
- Add BotServerInstance::start_with_main_stack() for using real LLM
- Update E2E tests to auto-start BotServer and BotUI if not running
- Prefer Brave browser over Chrome/Chromium for CDP testing
- Upgrade chromiumoxide to 0.8
- Add browser window position/size for visibility
- Fix chat tests to require BotUI for chat interface
- Add browser_service.rs for CDP-based browser management
- Remove chromedriver dependency (use CDP directly)
2025-12-15 13:57:05 -03:00
ca7408d1f4 fix: use snap chromium actual binary path 2025-12-14 17:18:49 -03:00
cf720936d2 fix: use Chromium for better chromedriver compatibility 2025-12-14 17:11:13 -03:00
1ae6c6e5c7 fix: use actual Brave binary path, not wrapper script 2025-12-14 17:07:52 -03:00
c4e59e8c71 fix: use correct chat URL /chat/chat.html 2025-12-14 16:50:22 -03:00
e96b01cfc8 fix: connect to existing stack without starting new processes
- Add existing() constructors for BotServerInstance and BotUIInstance
- Use BOTSERVER_URL and BOTUI_URL env vars with sensible defaults
- Fix database defaults for existing stack mode (gbuser/gbuser)
2025-12-14 16:44:29 -03:00
126abe2d10 feat: default to USE_EXISTING_STACK for faster e2e tests
Use FULL_BOOTSTRAP=1 to run full bootstrap instead
2025-12-14 16:40:07 -03:00
af41ecbdb0 feat: add BotUI orchestration for e2e browser tests
- Add BotUIInstance struct to start botui alongside botserver
- Update E2ETestContext to start botui and use its URL as base_url
- Add start_botui() method to TestContext
- Fix harness to use env vars BOTUI_PORT and BOTSERVER_URL for botui
- Update harness to use debug build by default
- Add SKIP_LLM_SERVER env var to skip local LLM server in tests
- Make stack_path absolute and canonicalize botserver paths
2025-12-14 15:59:07 -03:00
3476080ac6 Update harness and chat tests 2025-12-12 16:39:45 -03:00
9f7844580d refactor: improve test harness and browser automation
- Update harness.rs, main.rs, ports.rs
- Add chromedriver service module
- Update browser automation in web/browser.rs
- Update e2e test module
2025-12-07 02:14:37 -03:00
8fdd3b7be8 Fix test harness and e2e tests
- PostgresService: Find PostgreSQL from system paths or botserver-stack
- MinioService: Find MinIO from system paths or botserver-stack
- BotServerInstance: Pass --stack-path to create clean test stack
- Fix test_mock_services_available to only check enabled services
- Fix test_full_harness_has_all_services for current config
- Fix test_botserver_startup to skip if botserver not available
- All 41 e2e tests now pass
2025-12-06 14:55:59 -03:00
fe4c58d155 Fix compilation errors and unused imports in bottest
- Fix platform_flow.rs to use correct Browser API methods:
  - navigate -> goto
  - wait_for_element -> wait_for(Locator::css(...))
  - fill_input -> fill(Locator::css(...), text)
  - click(selector, timeout) -> click(Locator::css(selector))
  - get_current_url(timeout) -> current_url()
  - get_text -> text(Locator::css(...))
  - press_key -> input.send_keys()
- Fix e2e test imports (auth_flow, chat, dashboard)
- Remove unused pub use statements in bot/mod.rs and web/mod.rs
- Remove duplicate check_webdriver_available function
2025-12-06 13:38:54 -03:00
de58bc16a0 Add comprehensive E2E testing framework with platform flow
- Create platform_flow.rs with complete user journey test (load → botserver → login → chat → logout)
- Add TEMP_STACK_SETUP.md guide for using temporary isolated stacks
- Add E2E_TESTING_PLAN.md with architecture and implementation strategy
- Update e2e mod.rs to include new platform_flow module
- Include helpers for: platform loading, botserver verification, login, chat, logout
- Support for headless and headed browser testing
- Environment variable configuration for WebDriver, timeouts, logging
2025-12-06 11:15:14 -03:00
157a727334 - Initial import. 2025-12-06 11:05:57 -03:00