codemie-test-harness 0.1.167__tar.gz → 0.1.168__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (357) hide show
  1. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/PKG-INFO +2 -2
  2. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/base_page.py +24 -24
  3. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/components/__init__.py +2 -2
  4. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/components/execution_history_row.py +3 -3
  5. codemie_test_harness-0.1.167/codemie_test_harness/tests/ui/pageobject/components/header.py → codemie_test_harness-0.1.168/codemie_test_harness/tests/ui/pageobject/components/menu.py +57 -111
  6. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/components/pop_up.py +2 -2
  7. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/components/workflow_card.py +7 -10
  8. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/components/workflow_execution_history_item.py +9 -9
  9. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/components/workflow_execution_state.py +1 -1
  10. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/components/workflow_sidebar.py +16 -16
  11. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/base_workflow_form_page.py +32 -65
  12. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/create_workflow_page.py +4 -4
  13. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/edit_workflow_page.py +6 -4
  14. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_details_page.py +32 -61
  15. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_executions_page.py +17 -23
  16. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_template_details.py +5 -11
  17. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/workflow_templates_page.py +5 -2
  18. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/workflows_page.py +3 -5
  19. {codemie_test_harness-0.1.167/codemie_test_harness/tests/ui → codemie_test_harness-0.1.168/codemie_test_harness/tests/ui/workflows}/test_create_workflow.py +12 -33
  20. {codemie_test_harness-0.1.167/codemie_test_harness/tests/ui → codemie_test_harness-0.1.168/codemie_test_harness/tests/ui/workflows}/test_edit_workflow.py +14 -34
  21. {codemie_test_harness-0.1.167/codemie_test_harness/tests/ui → codemie_test_harness-0.1.168/codemie_test_harness/tests/ui/workflows}/test_workflow_details.py +11 -11
  22. {codemie_test_harness-0.1.167/codemie_test_harness/tests/ui → codemie_test_harness-0.1.168/codemie_test_harness/tests/ui/workflows}/test_workflow_executions_page.py +0 -2
  23. {codemie_test_harness-0.1.167/codemie_test_harness/tests/ui → codemie_test_harness-0.1.168/codemie_test_harness/tests/ui/workflows}/test_workflow_templates.py +0 -2
  24. {codemie_test_harness-0.1.167/codemie_test_harness/tests/ui → codemie_test_harness-0.1.168/codemie_test_harness/tests/ui/workflows}/test_workflows.py +8 -6
  25. codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs/__init__.py +0 -0
  26. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/pyproject.toml +2 -2
  27. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/README.md +0 -0
  28. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/.env +0 -0
  29. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/__init__.py +0 -0
  30. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/cli/__init__.py +0 -0
  31. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/cli/cli.py +0 -0
  32. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/cli/commands/__init__.py +0 -0
  33. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/cli/commands/config_cmd.py +0 -0
  34. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/cli/commands/run_cmd.py +0 -0
  35. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/cli/constants.py +0 -0
  36. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/cli/runner.py +0 -0
  37. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/cli/utils.py +0 -0
  38. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/pytest.ini +0 -0
  39. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/__init__.py +0 -0
  40. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/__init__.py +0 -0
  41. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/datasource/__init__.py +0 -0
  42. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/datasource/test_code_datasource.py +0 -0
  43. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/datasource/test_confluence_datasource.py +0 -0
  44. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/datasource/test_file_indexing.py +0 -0
  45. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/datasource/test_google_datasource.py +0 -0
  46. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/datasource/test_jira_datasource.py +0 -0
  47. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/default_integrations/__init__.py +0 -0
  48. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool.py +0 -0
  49. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
  50. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
  51. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/test_assistants.py +0 -0
  52. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/__init__.py +0 -0
  53. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/access_management/__init__.py +0 -0
  54. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/access_management/test_keycloak_tool.py +0 -0
  55. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/ado/__init__.py +0 -0
  56. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_test_plan_tools.py +0 -0
  57. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_wiki_tools.py +0 -0
  58. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_work_item_tools.py +0 -0
  59. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/cloud/__init__.py +0 -0
  60. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/cloud/test_cloud_tools.py +0 -0
  61. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/codebase/__init__.py +0 -0
  62. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/codebase/test_codebase_tools.py +0 -0
  63. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/datamanagement/__init__.py +0 -0
  64. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/datamanagement/test_assistant_with_data_management_tools.py +0 -0
  65. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/filemanagement/__init__.py +0 -0
  66. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/filemanagement/test_assistant_with_file_management_tools.py +0 -0
  67. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/git/__init__.py +0 -0
  68. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/git/test_assistant_with_git_tools.py +0 -0
  69. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/mcp/__init__.py +0 -0
  70. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/mcp/test_cli_mcp_server.py +0 -0
  71. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/mcp/test_mcp_servers.py +0 -0
  72. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/mcp/test_single_assistant_dual_time_plugins.py +0 -0
  73. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/notification/__init__.py +0 -0
  74. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/notification/test_assistant_notification_tools.py +0 -0
  75. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/openapi/__init__.py +0 -0
  76. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/openapi/test_assistant_with_open_api_tools.py +0 -0
  77. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/plugin/__init__.py +0 -0
  78. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/plugin/test_assistant_with_development_plugin.py +0 -0
  79. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/plugin/test_assistant_with_plugin_and_mcp_servers.py +0 -0
  80. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/project_management/__init__.py +0 -0
  81. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/project_management/test_assistant_pm_tools.py +0 -0
  82. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/report_portal/__init__.py +0 -0
  83. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/report_portal/test_assistant_report_portal_tools.py +0 -0
  84. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/research/__init__.py +0 -0
  85. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/research/test_assistant_research_tools.py +0 -0
  86. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/servicenow/__init__.py +0 -0
  87. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/servicenow/test_servicenow_tools.py +0 -0
  88. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/vcs/__init__.py +0 -0
  89. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/assistant/tools/vcs/test_assistant_with_vcs_tools.py +0 -0
  90. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/conftest.py +0 -0
  91. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/conversations/__init__.py +0 -0
  92. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/conversations/test_conversations_endpoints.py +0 -0
  93. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/e2e/__init__.py +0 -0
  94. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/e2e/test_e2e.py +0 -0
  95. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/enums/__init__.py +0 -0
  96. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/enums/environment.py +0 -0
  97. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/enums/integrations.py +0 -0
  98. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/enums/model_types.py +0 -0
  99. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/enums/tools.py +0 -0
  100. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/integrations/__init__.py +0 -0
  101. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/integrations/project/__init__.py +0 -0
  102. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/integrations/project/test_default_integrations.py +0 -0
  103. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/integrations/project/test_project_integrations.py +0 -0
  104. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/integrations/user/__init__.py +0 -0
  105. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/integrations/user/test_default_integrations.py +0 -0
  106. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/integrations/user/test_user_integrations.py +0 -0
  107. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/llm/__init__.py +0 -0
  108. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/llm/assistants/__init__.py +0 -0
  109. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/llm/assistants/test_lite_llm.py +0 -0
  110. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/llm/assistants/test_llm.py +0 -0
  111. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/providers/__init__.py +0 -0
  112. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/providers/test_providers_endpoints.py +0 -0
  113. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/search/__init__.py +0 -0
  114. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/search/test_search_assistant.py +0 -0
  115. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/search/test_search_datasource.py +0 -0
  116. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/search/test_search_integration.py +0 -0
  117. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/search/test_search_workflow.py +0 -0
  118. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/__init__.py +0 -0
  119. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/test_assistant_service.py +0 -0
  120. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/test_datasource_service.py +0 -0
  121. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/test_integration_service.py +0 -0
  122. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/test_llm_service.py +0 -0
  123. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/test_task_service.py +0 -0
  124. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/test_user_service.py +0 -0
  125. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/test_workflow_execution_service.py +0 -0
  126. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/service/test_workflow_service.py +0 -0
  127. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/__init__.py +0 -0
  128. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/ado_test_plan_tools_test_data.py +0 -0
  129. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/ado_wiki_tools_test_data.py +0 -0
  130. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/ado_work_item_tools_test_data.py +0 -0
  131. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/cloud_tools_test_data.py +0 -0
  132. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/codebase_tools_test_data.py +0 -0
  133. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/data_management_tools_test_data.py +0 -0
  134. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/__init__.py +0 -0
  135. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/ado_test_plan_tools_test_data.py +0 -0
  136. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/ado_wiki_tools_test_data.py +0 -0
  137. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/ado_work_item_tools_test_data.py +0 -0
  138. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/cloud_tools_test_data.py +0 -0
  139. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/codebase_tools_test_data.py +0 -0
  140. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/data_management_tools_test_data.py +0 -0
  141. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/direct_tools_test_data.py +0 -0
  142. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/file_management_tools_test_data.py +0 -0
  143. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/keycloak_tool_test_data.py +0 -0
  144. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/notification_tools_test_data.py +0 -0
  145. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/open_api_tools_test_data.py +0 -0
  146. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/project_management_tools_test_data.py +0 -0
  147. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/report_portal_tools_test_data.py +0 -0
  148. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/research_tools_test_data.py +0 -0
  149. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/servicenow_tools_test_data.py +0 -0
  150. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/direct_tools/vcs_tools_test_data.py +0 -0
  151. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/file_management_tools_test_data.py +0 -0
  152. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/file_test_data.py +0 -0
  153. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/large-files/large_file.txt +0 -0
  154. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/provider_payload.json +0 -0
  155. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.csv +0 -0
  156. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.docx +0 -0
  157. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.gif +0 -0
  158. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.ini +0 -0
  159. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.jpeg +0 -0
  160. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.jpg +0 -0
  161. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.json +0 -0
  162. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.pdf +0 -0
  163. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.png +0 -0
  164. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.pptx +0 -0
  165. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.txt +0 -0
  166. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.vtt +0 -0
  167. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.xlsx +0 -0
  168. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.xml +0 -0
  169. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/files/test.yaml +0 -0
  170. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/git_tools_test_data.py +0 -0
  171. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/google_datasource_test_data.py +0 -0
  172. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/index_test_data.py +0 -0
  173. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/integrations_test_data.py +0 -0
  174. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/keycloak_tool_test_data.py +0 -0
  175. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/llm_test_data.py +0 -0
  176. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/mcp_server_test_data.py +0 -0
  177. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/notification_tools_test_data.py +0 -0
  178. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/open_api_tools_test_data.py +0 -0
  179. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/openapi.json +0 -0
  180. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/output_schema_test_data.py +0 -0
  181. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/plugin_tools_test_data.py +0 -0
  182. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/pm_tools_test_data.py +0 -0
  183. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/project_management_test_data.py +0 -0
  184. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/report_portal_tools_test_data.py +0 -0
  185. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/research_tools_test_data.py +0 -0
  186. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/servicenow_tools_test_data.py +0 -0
  187. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/vcs_tools_test_data.py +0 -0
  188. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_assistant_id.yaml +0 -0
  189. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_assistant_in_state.yaml +0 -0
  190. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_data_source.yaml +0 -0
  191. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_state.yaml +0 -0
  192. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_tool.yaml +0 -0
  193. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_yaml.yaml +0 -0
  194. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/invalid_yaml_format.yaml +0 -0
  195. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_assistant_id.yaml +0 -0
  196. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_assistant_tools_name.yaml +0 -0
  197. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_backoff_factor.yaml +0 -0
  198. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_initial_interval.yaml +0 -0
  199. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_max_attempts.yaml +0 -0
  200. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_retry_max_interval.yaml +0 -0
  201. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states.yaml +0 -0
  202. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_id.yaml +0 -0
  203. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next.yaml +0 -0
  204. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_expression.yaml +0 -0
  205. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_otherwise.yaml +0 -0
  206. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_condition_then.yaml +0 -0
  207. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases.yaml +0 -0
  208. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases_condition.yaml +0 -0
  209. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_cases_state_id.yaml +0 -0
  210. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_next_switch_default.yaml +0 -0
  211. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_backoff_factor.yaml +0 -0
  212. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_initial_interval.yaml +0 -0
  213. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_max_attempts.yaml +0 -0
  214. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_states_retry_max_interval.yaml +0 -0
  215. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_system_prompt.yaml +0 -0
  216. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_tools_id.yaml +0 -0
  217. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow/invalid_config/missing_required_tools_name.yaml +0 -0
  218. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/test_data/workflow_validation_messages.py +0 -0
  219. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/__init__.py +0 -0
  220. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/conftest.py +0 -0
  221. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/__init__.py +0 -0
  222. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/assistants/__init__.py +0 -0
  223. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/assistants/assistants_page.py +0 -0
  224. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/components/workflow_state_card.py +0 -0
  225. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/login_page.py +0 -0
  226. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/ui/pageobject/workflows/__init__.py +0 -0
  227. {codemie_test_harness-0.1.167/codemie_test_harness/tests/utils → codemie_test_harness-0.1.168/codemie_test_harness/tests/ui/workflows}/__init__.py +0 -0
  228. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow → codemie_test_harness-0.1.168/codemie_test_harness/tests/utils}/__init__.py +0 -0
  229. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/assistant_utils.py +0 -0
  230. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/aws_parameters_store.py +0 -0
  231. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/base_utils.py +0 -0
  232. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/client_factory.py +0 -0
  233. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/constants.py +0 -0
  234. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/conversation_utils.py +0 -0
  235. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/credentials_manager.py +0 -0
  236. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/datasource_utils.py +0 -0
  237. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/env_resolver.py +0 -0
  238. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/env_utils.py +0 -0
  239. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/file_utils.py +0 -0
  240. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/gitbud_utils.py +0 -0
  241. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/http_utils.py +0 -0
  242. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/integration_utils.py +0 -0
  243. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/json_utils.py +0 -0
  244. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/llm_utils.py +0 -0
  245. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/logger_util.py +0 -0
  246. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/notification_utils.py +0 -0
  247. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/provider_utils.py +0 -0
  248. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/pytest_utils.py +0 -0
  249. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/search_utils.py +0 -0
  250. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/similarity_check.py +0 -0
  251. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/user_utils.py +0 -0
  252. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/workflow_utils.py +0 -0
  253. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/utils/yaml_utils.py +0 -0
  254. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow}/__init__.py +0 -0
  255. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/access_management → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools}/__init__.py +0 -0
  256. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/ado → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/access_management}/__init__.py +0 -0
  257. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/access_management/test_workflow_with_assistant_with_keycloak_tool.py +0 -0
  258. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/cloud → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/ado}/__init__.py +0 -0
  259. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_test_plan_tools.py +0 -0
  260. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_wiki_tools.py +0 -0
  261. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_work_item_tools.py +0 -0
  262. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/codebase → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/cloud}/__init__.py +0 -0
  263. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/cloud/test_workflow_with_assistant_cloud_tools.py +0 -0
  264. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/data_management → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/codebase}/__init__.py +0 -0
  265. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/codebase/test_worfklow_with_assistant_codebase_tools.py +0 -0
  266. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/default_integrations → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/data_management}/__init__.py +0 -0
  267. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/data_management/test_workflow_with_assistant_with_data_management_tools.py +0 -0
  268. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/git → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/default_integrations}/__init__.py +0 -0
  269. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool.py +0 -0
  270. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
  271. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
  272. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/file_management/__init__.py +0 -0
  273. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/file_management/test_workflow_with_assistant_with_file_management_tools.py +0 -0
  274. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/mcp → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/git}/__init__.py +0 -0
  275. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/git/test_workflow_with_assistant_git_tools.py +0 -0
  276. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/notification → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/mcp}/__init__.py +0 -0
  277. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/mcp/test_workflow_with_assistant_with_mcp_server.py +0 -0
  278. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/plugin → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/notification}/__init__.py +0 -0
  279. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/notification/test_workflow_with_assistant_notification_tools.py +0 -0
  280. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/open_api/__init__.py +0 -0
  281. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/open_api/test_workflow_with_assistant_with_open_api_tools.py +0 -0
  282. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/project_management → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/plugin}/__init__.py +0 -0
  283. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/plugin/test_workflow_with_assistant_with_development_plugin.py +0 -0
  284. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/plugin/test_workflow_with_assistant_with_plugin_and_mcp_servers.py +0 -0
  285. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/report_portal → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/project_management}/__init__.py +0 -0
  286. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/project_management/test_workflow_with_assistant_pm_tools.py +0 -0
  287. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/research → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/report_portal}/__init__.py +0 -0
  288. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/report_portal/test_workflow_with_assistant_with_report_portal_tools.py +0 -0
  289. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/servicenow → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/research}/__init__.py +0 -0
  290. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/research/test_workflow_with_assistant_research_tools.py +0 -0
  291. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/assistant_tools/vcs → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/servicenow}/__init__.py +0 -0
  292. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/servicenow/test_workflow_with_servicenow_tools.py +0 -0
  293. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/config_validation → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/assistant_tools/vcs}/__init__.py +0 -0
  294. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/assistant_tools/vcs/workflow_with_assistant_vcs_tools.py +0 -0
  295. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/direct_tools_calling → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/config_validation}/__init__.py +0 -0
  296. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/config_validation/test_config_validation.py +0 -0
  297. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/direct_tools_calling}/__init__.py +0 -0
  298. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations}/__init__.py +0 -0
  299. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/test_default_integrations_for_tool.py +0 -0
  300. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
  301. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_access_management_tool.py +0 -0
  302. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_test_plan_tools.py +0 -0
  303. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_wiki_tools.py +0 -0
  304. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_work_item_tools.py +0 -0
  305. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_cloud_tools.py +0 -0
  306. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_codebase_tools.py +0 -0
  307. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_data_management_tools_elastic.py +0 -0
  308. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_data_management_tools_sql.py +0 -0
  309. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_file_management_tools.py +0 -0
  310. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_notification_tools.py +0 -0
  311. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_open_api_tools.py +0 -0
  312. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_plugin_tools.py +0 -0
  313. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_project_management_tools.py +0 -0
  314. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_report_portal_tools.py +0 -0
  315. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_research_tools.py +0 -0
  316. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_servicenow_tools.py +0 -0
  317. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_vcs_tools.py +0 -0
  318. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/test_workflows.py +0 -0
  319. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/access_management → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools}/__init__.py +0 -0
  320. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/access_management}/__init__.py +0 -0
  321. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/access_management/test_workflow_with_keycloak_tool.py +0 -0
  322. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/cloud → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado}/__init__.py +0 -0
  323. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_test_plan_tools.py +0 -0
  324. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_wiki_tools.py +0 -0
  325. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_work_item_tools.py +0 -0
  326. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/cloud}/__init__.py +0 -0
  327. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/cloud/test_workflow_with_cloud_tools.py +0 -0
  328. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/codebase/__init__.py +0 -0
  329. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/codebase/test_workflow_with_codebase_tools.py +0 -0
  330. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/data_management/__init__.py +0 -0
  331. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/data_management/test_workflow_with_data_management_tools.py +0 -0
  332. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/git → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations}/__init__.py +0 -0
  333. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool.py +0 -0
  334. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool_kit.py +0 -0
  335. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool_with_datasource.py +0 -0
  336. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/file_management/__init__.py +0 -0
  337. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/file_management/test_workflow_with_file_management_tools.py +0 -0
  338. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/mcp → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/git}/__init__.py +0 -0
  339. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/git/test_workflow_with_git_tools.py +0 -0
  340. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/mcp}/__init__.py +0 -0
  341. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/mcp/test_workflow_with_mcp_server.py +0 -0
  342. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/notification/__init__.py +0 -0
  343. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/notification/test_workflow_with_notification_tools.py +0 -0
  344. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/open_api/__init__.py +0 -0
  345. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/open_api/test_workflow_with_open_api_tools.py +0 -0
  346. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/report_portal → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin}/__init__.py +0 -0
  347. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/test_workflow_with_development_plugin.py +0 -0
  348. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/test_workflow_with_plugin_and_mcp_servers.py +0 -0
  349. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/project_management/__init__.py +0 -0
  350. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/project_management/test_workflow_with_project_management_tools.py +0 -0
  351. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/research → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/report_portal}/__init__.py +0 -0
  352. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/report_portal/test_workflow_with_report_portal_tool.py +0 -0
  353. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/research}/__init__.py +0 -0
  354. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/research/test_workflow_with_research_tools.py +0 -0
  355. {codemie_test_harness-0.1.167/codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs → codemie_test_harness-0.1.168/codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow}/__init__.py +0 -0
  356. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow/test_workflow_with_servicenow_tools.py +0 -0
  357. {codemie_test_harness-0.1.167 → codemie_test_harness-0.1.168}/codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs/test_workflow_with_vcs_tools.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: codemie-test-harness
3
- Version: 0.1.167
3
+ Version: 0.1.168
4
4
  Summary: Autotest for CodeMie backend and UI
5
5
  Author: Anton Yeromin
6
6
  Author-email: anton_yeromin@epam.com
@@ -13,7 +13,7 @@ Requires-Dist: aws-assume-role-lib (>=2.10.0,<3.0.0)
13
13
  Requires-Dist: boto3 (>=1.39.8,<2.0.0)
14
14
  Requires-Dist: click (>=8.1.7,<9.0.0)
15
15
  Requires-Dist: codemie-plugins (>=0.1.123,<0.2.0)
16
- Requires-Dist: codemie-sdk-python (==0.1.167)
16
+ Requires-Dist: codemie-sdk-python (==0.1.168)
17
17
  Requires-Dist: pytest (>=8.4.1,<9.0.0)
18
18
  Requires-Dist: pytest-playwright (>=0.7.0,<0.8.0)
19
19
  Requires-Dist: pytest-reportportal (>=5.5.2,<6.0.0)
@@ -4,7 +4,7 @@ from playwright.sync_api import expect
4
4
  from reportportal_client import step
5
5
 
6
6
  from codemie_test_harness.tests.ui.pageobject.components.pop_up import PopUp
7
- from codemie_test_harness.tests.ui.pageobject.components.header import Header
7
+ from codemie_test_harness.tests.ui.pageobject.components.menu import Menu
8
8
 
9
9
 
10
10
  class BasePage:
@@ -16,7 +16,7 @@ class BasePage:
16
16
  # Component properties using @property decorator
17
17
  @property
18
18
  def back_button(self):
19
- """Back button in the header."""
19
+ """Back button in the menu."""
20
20
  return self.page.locator(
21
21
  '//div[not(contains(@class,"justify-end"))]/button[contains(@class,"secondary medium")]'
22
22
  ).first
@@ -27,9 +27,9 @@ class BasePage:
27
27
  return PopUp(self.page)
28
28
 
29
29
  @property
30
- def header(self):
31
- """Header component instance."""
32
- return Header(self.page)
30
+ def menu(self):
31
+ """Menu component instance."""
32
+ return Menu(self.page)
33
33
 
34
34
  # Common page elements
35
35
  @property
@@ -55,44 +55,44 @@ class BasePage:
55
55
  # Navigation methods
56
56
  @step
57
57
  def go_to_workflows_page(self):
58
- """Navigate to workflows page using header navigation."""
59
- self.header.navigate_to_workflows()
58
+ """Navigate to workflows page using menu navigation."""
59
+ self.menu.navigate_to_workflows()
60
60
  return self
61
61
 
62
62
  @step
63
63
  def go_to_assistants_page(self):
64
- """Navigate to assistants page using header navigation."""
65
- self.header.navigate_to_assistants()
64
+ """Navigate to assistants page using menu navigation."""
65
+ self.menu.navigate_to_assistants()
66
66
  return self
67
67
 
68
68
  @step
69
69
  def go_to_chats_page(self):
70
- """Navigate to chats page using header navigation."""
71
- self.header.navigate_to_chats()
70
+ """Navigate to chats page using menu navigation."""
71
+ self.menu.navigate_to_chats()
72
72
  return self
73
73
 
74
74
  @step
75
75
  def go_to_applications_page(self):
76
- """Navigate to applications page using header navigation."""
77
- self.header.navigate_to_applications()
76
+ """Navigate to applications page using menu navigation."""
77
+ self.menu.navigate_to_applications()
78
78
  return self
79
79
 
80
80
  @step
81
81
  def go_to_integrations_page(self):
82
- """Navigate to integrations page using header navigation."""
83
- self.header.navigate_to_integrations()
82
+ """Navigate to integrations page using menu navigation."""
83
+ self.menu.navigate_to_integrations()
84
84
  return self
85
85
 
86
86
  @step
87
87
  def go_to_data_sources_page(self):
88
- """Navigate to data sources page using header navigation."""
89
- self.header.navigate_to_data_sources()
88
+ """Navigate to data sources page using menu navigation."""
89
+ self.menu.navigate_to_data_sources()
90
90
  return self
91
91
 
92
92
  @step
93
93
  def go_to_help_page(self):
94
- """Navigate to help page using header navigation."""
95
- self.header.navigate_to_help()
94
+ """Navigate to help page using menu navigation."""
95
+ self.menu.navigate_to_help()
96
96
  return self
97
97
 
98
98
  # Pop-up interaction methods
@@ -164,10 +164,10 @@ class BasePage:
164
164
  """Verify that the new release popup is visible with expected content."""
165
165
  expect(self.pop_up.cancel).to_have_text("Got It, Thanks!")
166
166
  expect(self.pop_up.submit).to_have_text("Tell Me More")
167
- expect(self.pop_up.header).to_have_text("New CodeMie Release")
167
+ expect(self.pop_up.menu).to_have_text("New CodeMie Release")
168
168
  expect(self.pop_up.body).to_have_text(
169
169
  re.compile(
170
- r"Great news! We've rolled out new CodeMie version 1.\d.\d+ to enhance your experience. Take a moment to "
170
+ r"Great news! We've rolled out new CodeMie version 2.\d.\d+ to enhance your experience. Take a moment to "
171
171
  "explore what's new and discover how these changes can benefit you! Please review Release Notes!"
172
172
  )
173
173
  )
@@ -182,9 +182,9 @@ class BasePage:
182
182
 
183
183
  # Common verification methods
184
184
  @step
185
- def should_have_header_visible(self):
186
- """Verify that the header is visible."""
187
- self.header.should_be_visible()
185
+ def should_have_menu_visible(self):
186
+ """Verify that the menu is visible."""
187
+ self.menu.should_be_visible()
188
188
  return self
189
189
 
190
190
  @step
@@ -1,6 +1,6 @@
1
1
  from .workflow_card import WorkflowCard
2
2
  from .pop_up import PopUp
3
- from .header import Header
3
+ from .menu import Menu
4
4
  from .workflow_sidebar import WorkflowSidebar
5
5
  from .execution_history_row import ExecutionHistoryRow
6
6
  from .workflow_state_card import WorkflowStateCard
@@ -10,7 +10,7 @@ from .workflow_execution_state import WorkflowExecutionState
10
10
  __all__ = [
11
11
  "WorkflowCard",
12
12
  "PopUp",
13
- "Header",
13
+ "Menu",
14
14
  "WorkflowSidebar",
15
15
  "ExecutionHistoryRow",
16
16
  "WorkflowStateCard",
@@ -122,7 +122,7 @@ class ExecutionHistoryRow:
122
122
  self.should_have_status("In Progress")
123
123
  expect(self.status_badge).to_have_class("bg-in-progress-secondary")
124
124
  expect(self.status_badge).to_have_class("text-in-progress-main")
125
- expect(self.status_badge).to_have_class("border-in-progress-main")
125
+ expect(self.status_badge).to_have_class("border-in-progress-border")
126
126
  expect(self.status_dot).to_have_class("animate-pulse")
127
127
 
128
128
  @step
@@ -131,7 +131,7 @@ class ExecutionHistoryRow:
131
131
  self.should_have_status("Succeeded")
132
132
  expect(self.status_badge).to_contain_class("bg-success-secondary")
133
133
  expect(self.status_badge).to_contain_class("text-success-main")
134
- expect(self.status_badge).to_contain_class("border-success-main")
134
+ expect(self.status_badge).to_contain_class("border-success-border")
135
135
 
136
136
  @step
137
137
  def should_have_failed_status(self):
@@ -139,7 +139,7 @@ class ExecutionHistoryRow:
139
139
  self.should_have_status("Failed")
140
140
  expect(self.status_badge).to_contain_class("bg-error-secondary")
141
141
  expect(self.status_badge).to_contain_class("text-error-main")
142
- expect(self.status_badge).to_contain_class("border-error-main")
142
+ expect(self.status_badge).to_contain_class("border-error-border")
143
143
 
144
144
  @step
145
145
  def should_have_prompt(self, expected_prompt: str):
@@ -1,5 +1,5 @@
1
1
  """
2
- Header component page object for the main navigation header.
2
+ Menu component page object for the main navigation menu.
3
3
  Contains methods for interacting with navigation links, logo, and user profile.
4
4
  """
5
5
 
@@ -7,23 +7,23 @@ from reportportal_client import step
7
7
  from playwright.sync_api import expect
8
8
 
9
9
 
10
- class Header:
11
- """Header component with property-based element locators."""
10
+ class Menu:
11
+ """Menu component with property-based element locators."""
12
12
 
13
13
  def __init__(self, page):
14
14
  self.page = page
15
15
 
16
- # Header elements using @property decorator
16
+ # Menu elements using @property decorator
17
17
  @property
18
- def header_container(self):
19
- """Main header container."""
18
+ def menu_container(self):
19
+ """Main menu container."""
20
20
  return self.page.locator("//body//header")
21
21
 
22
22
  @property
23
23
  def logo_link(self):
24
24
  """Logo link element."""
25
- return self.header_container.locator(
26
- '//a[@href="#/assistants"][span[text()="EPAM AI/Run"]]'
25
+ return self.menu_container.locator(
26
+ "a.h-12.flex.grow.gap-4.items-center.relative.select-none.text-nowrap.cursor-pointer.group"
27
27
  )
28
28
 
29
29
  @property
@@ -33,13 +33,13 @@ class Header:
33
33
 
34
34
  @property
35
35
  def logo_tooltip(self):
36
- """Logo tooltip text."""
37
- return self.page.locator('span:has-text("EPAM AI/Run")')
36
+ """Logo tooltip text whn menu is expanded."""
37
+ return self.page.locator('a:has-text("EPAM AI/RUN"):has-text("CodeMie")')
38
38
 
39
39
  @property
40
40
  def top_nav(self):
41
41
  """Top navigation container."""
42
- return self.header_container.locator('nav[aria-label="top-nav-links"]')
42
+ return self.menu_container.locator('nav[aria-label="top-nav-links"]')
43
43
 
44
44
  @property
45
45
  def chats_link(self):
@@ -64,7 +64,7 @@ class Header:
64
64
  @property
65
65
  def secondary_nav(self):
66
66
  """Secondary navigation container."""
67
- return self.header_container.locator('nav[aria-label="secondary-nav-links"]')
67
+ return self.menu_container.locator('nav[aria-label="secondary-nav-links"]')
68
68
 
69
69
  @property
70
70
  def integrations_link(self):
@@ -79,73 +79,51 @@ class Header:
79
79
  @property
80
80
  def bottom_nav(self):
81
81
  """Bottom navigation container."""
82
- return self.header_container.locator('nav[aria-label="bottom-nav-links"]')
82
+ return self.menu_container.locator('nav[aria-label="bottom-nav-links"]')
83
83
 
84
84
  @property
85
- def help_link(self):
86
- """Help navigation link."""
87
- return self.bottom_nav.locator('a[href="#/help"]')
88
-
89
- @property
90
- def user_profile_container(self):
91
- """User profile container."""
92
- return self.header_container.locator("//span[text()='User Profile']/..")
93
-
94
- @property
95
- def user_profile_button(self):
96
- """User profile button."""
97
- return self.user_profile_container.locator("button")
98
-
99
- @property
100
- def user_avatar(self):
101
- """User avatar image."""
102
- return self.user_profile_button.locator('img[alt="User profile"]')
103
-
104
- @property
105
- def user_profile_tooltip(self):
106
- """User profile tooltip text."""
107
- return self.page.locator('span:has-text("User Profile")')
108
-
109
- # Navigation link tooltips
110
- @property
111
- def chats_tooltip(self):
112
- """Chats tooltip text."""
113
- return self.page.locator('span:has-text("Chats")')
85
+ def faq_assistant_link(self):
86
+ """FAQ assistant navigation link."""
87
+ return self.bottom_nav.locator(
88
+ 'a[href="#/assistants/codemie-onboarding/start"]'
89
+ )
114
90
 
115
91
  @property
116
- def assistants_tooltip(self):
117
- """Assistants tooltip text."""
118
- return self.page.locator('span:has-text("Assistants")')
92
+ def prompt_assistant_link(self):
93
+ """Prompt Engineer assistant navigation link."""
94
+ return self.bottom_nav.locator('a[href="#/assistants/prompt-engineer/start"]')
119
95
 
120
96
  @property
121
- def workflows_tooltip(self):
122
- """Workflows tooltip text."""
123
- return self.page.locator('span:has-text("Workflows")')
97
+ def switch_new_codemie(self):
98
+ """Switch to new CodeMie."""
99
+ return self.menu_container.locator(".switch")
124
100
 
125
101
  @property
126
- def applications_tooltip(self):
127
- """Applications tooltip text."""
128
- return self.page.locator('span:has-text("Applications")')
102
+ def hide_expand_menu_button(self):
103
+ """Hide/Expand menu button."""
104
+ return self.menu_container.locator(
105
+ 'button[type="button"].rounded-lg.flex.items-center'
106
+ )
129
107
 
130
108
  @property
131
- def integrations_tooltip(self):
132
- """Integrations tooltip text."""
133
- return self.page.locator('span:has-text("Integrations")')
109
+ def help_link(self):
110
+ """Help navigation link."""
111
+ return self.bottom_nav.locator('a[href="#/help"]')
134
112
 
135
113
  @property
136
- def data_sources_tooltip(self):
137
- """Data Sources tooltip text."""
138
- return self.page.locator('span:has-text("Data Sources")')
114
+ def user_profile_button(self):
115
+ """User profile button."""
116
+ return self.menu_container.locator("button.cursor-pointer.group")
139
117
 
140
118
  @property
141
- def help_tooltip(self):
142
- """Help tooltip text."""
143
- return self.page.locator('span:has-text("Help")')
119
+ def user_avatar(self):
120
+ """User avatar image."""
121
+ return self.user_profile_button.locator("img")
144
122
 
145
123
  # Action methods
146
124
  @step
147
125
  def click_logo(self):
148
- """Click on the EPAM AI/Run logo to navigate to assistants page."""
126
+ """Click on the EPAM AI/Run logo to navigate to new chat."""
149
127
  self.logo_link.click()
150
128
  return self
151
129
 
@@ -197,46 +175,6 @@ class Header:
197
175
  self.user_profile_button.click()
198
176
  return self
199
177
 
200
- @step
201
- def hover_over_navigation_item(self, navigation_item: str):
202
- """
203
- Hover over a navigation item to display its tooltip.
204
-
205
- Args:
206
- navigation_item (str): The navigation item to hover over
207
- ('chats', 'assistants', 'workflows', 'applications',
208
- 'integrations', 'data_sources', 'help', 'logo', 'user_profile')
209
- """
210
- navigation_items = {
211
- "chats": self.chats_link,
212
- "assistants": self.assistants_link,
213
- "workflows": self.workflows_link,
214
- "applications": self.applications_link,
215
- "integrations": self.integrations_link,
216
- "data_sources": self.data_sources_link,
217
- "help": self.help_link,
218
- "logo": self.logo_link,
219
- "user_profile": self.user_profile_button,
220
- }
221
-
222
- if navigation_item in navigation_items:
223
- navigation_items[navigation_item].hover()
224
- else:
225
- raise ValueError(f"Unknown navigation item: {navigation_item}")
226
- return self
227
-
228
- @step
229
- def wait_for_tooltip_to_appear(self, tooltip_text: str):
230
- """
231
- Wait for a specific tooltip to appear.
232
-
233
- Args:
234
- tooltip_text (str): The text of the tooltip to wait for
235
- """
236
- tooltip = self.page.locator(f'span:has-text("{tooltip_text}")')
237
- tooltip.wait_for(state="visible")
238
- return self
239
-
240
178
  # Utility methods
241
179
  @step
242
180
  def get_active_navigation_item(self):
@@ -244,7 +182,7 @@ class Header:
244
182
  Get the currently active navigation item.
245
183
  Returns the href of the active navigation link.
246
184
  """
247
- active_link = self.header_container.locator("a.bg-new-panel-secondary")
185
+ active_link = self.menu_container.locator("a.bg-new-panel-secondary")
248
186
  if active_link.is_visible():
249
187
  return active_link.get_attribute("href")
250
188
  return None
@@ -257,8 +195,8 @@ class Header:
257
195
  # Verification methods
258
196
  @step
259
197
  def should_be_visible(self):
260
- """Verify that the header is visible."""
261
- expect(self.header_container).to_be_visible()
198
+ """Verify that the menu is visible."""
199
+ expect(self.menu_container).to_be_visible()
262
200
  return self
263
201
 
264
202
  @step
@@ -293,12 +231,12 @@ class Header:
293
231
  Verify that all main navigation elements are present and visible.
294
232
  """
295
233
  navigation_structure = {
296
- "header": self.header_container,
234
+ "menu": self.menu_container,
297
235
  "logo": self.logo_link,
298
236
  "top_nav": self.top_nav,
299
237
  "secondary_nav": self.secondary_nav,
300
238
  "bottom_nav": self.bottom_nav,
301
- "user_profile": self.user_profile_container,
239
+ "user_profile": self.user_profile_button,
302
240
  "chats_link": self.chats_link,
303
241
  "assistants_link": self.assistants_link,
304
242
  "workflows_link": self.workflows_link,
@@ -306,6 +244,10 @@ class Header:
306
244
  "integrations_link": self.integrations_link,
307
245
  "data_sources_link": self.data_sources_link,
308
246
  "help_link": self.help_link,
247
+ "faq_assistant_link": self.faq_assistant_link,
248
+ "prompt_assistant_link": self.prompt_assistant_link,
249
+ "switch_to_new_codemie": self.switch_new_codemie,
250
+ "hide_expand_menu": self.hide_expand_menu_button,
309
251
  }
310
252
 
311
253
  for element_name, element in navigation_structure.items():
@@ -322,9 +264,9 @@ class Header:
322
264
 
323
265
  # Legacy methods for backward compatibility
324
266
  @step
325
- def is_header_visible(self):
326
- """Check if the header is visible on the page."""
327
- return self.header_container.is_visible()
267
+ def is_menu_visible(self):
268
+ """Check if the menu is visible on the page."""
269
+ return self.menu_container.is_visible()
328
270
 
329
271
  @step
330
272
  def is_logo_visible(self):
@@ -359,12 +301,12 @@ class Header:
359
301
  dict: A dictionary with the visibility status of each navigation section
360
302
  """
361
303
  return {
362
- "header_visible": self.header_container.is_visible(),
304
+ "menu_visible": self.menu_container.is_visible(),
363
305
  "logo_visible": self.logo_link.is_visible(),
364
306
  "top_nav_visible": self.top_nav.is_visible(),
365
307
  "secondary_nav_visible": self.secondary_nav.is_visible(),
366
308
  "bottom_nav_visible": self.bottom_nav.is_visible(),
367
- "user_profile_visible": self.user_profile_container.is_visible(),
309
+ "user_profile_visible": self.user_profile_button.is_visible(),
368
310
  "chats_link_visible": self.chats_link.is_visible(),
369
311
  "assistants_link_visible": self.assistants_link.is_visible(),
370
312
  "workflows_link_visible": self.workflows_link.is_visible(),
@@ -372,4 +314,8 @@ class Header:
372
314
  "integrations_link_visible": self.integrations_link.is_visible(),
373
315
  "data_sources_link_visible": self.data_sources_link.is_visible(),
374
316
  "help_link_visible": self.help_link.is_visible(),
317
+ "faq_assistant_link_visible": self.faq_assistant_link.is_visible(),
318
+ "prompt_assistant_link_visible": self.prompt_assistant_link.is_visible(),
319
+ "switch_to_new_codemie_visible": self.switch_new_codemie.is_visible(),
320
+ "hide_expand_menu_visible": self.hide_expand_menu_button.is_visible(),
375
321
  }
@@ -15,8 +15,8 @@ class PopUp:
15
15
  return self.page.locator(".popup")
16
16
 
17
17
  @property
18
- def header(self):
19
- """Pop-up header text."""
18
+ def menu(self):
19
+ """Pop-up menu text."""
20
20
  return self.pop_up.locator(".popup-header")
21
21
 
22
22
  @property
@@ -26,17 +26,17 @@ class WorkflowCard:
26
26
  @property
27
27
  def title(self):
28
28
  """Workflow title element."""
29
- return self.card.locator(".flex-row .flex-col > div:not([class])")
29
+ return self.card.locator(".whitespace-nowrap.truncate.font-semibold")
30
30
 
31
31
  @property
32
32
  def author(self):
33
33
  """Workflow author element."""
34
- return self.card.locator(".text-sm.text-text-gray-300")
34
+ return self.card.locator(".text-xs.text-text-gray-300")
35
35
 
36
36
  @property
37
37
  def description(self):
38
38
  """Workflow description element."""
39
- return self.card.locator("p.text-text-gray-100")
39
+ return self.card.locator(".flex-row p.text-xs")
40
40
 
41
41
  @property
42
42
  def description_tooltip(self):
@@ -48,7 +48,7 @@ class WorkflowCard:
48
48
  @property
49
49
  def run_button(self):
50
50
  """Run workflow button."""
51
- return self.card.locator("button.button.secondary")
51
+ return self.card.locator("button.gradient.medium")
52
52
 
53
53
  @property
54
54
  def menu_button(self):
@@ -137,20 +137,17 @@ class WorkflowCard:
137
137
  @step
138
138
  def should_have_title(self, expected_title: str):
139
139
  """Verify the workflow has the expected title."""
140
- expect(self.title).to_have_text(expected_title)
141
- return self
140
+ return self.get_title() == expected_title
142
141
 
143
142
  @step
144
143
  def should_have_author(self, expected_author: str):
145
144
  """Verify the workflow has the expected author."""
146
- expect(self.author).to_contain_text(expected_author)
147
- return self
145
+ return self.get_author() == expected_author
148
146
 
149
147
  @step
150
148
  def should_have_description(self, expected_description: str):
151
149
  """Verify the workflow has the expected description."""
152
- expect(self.description).to_have_text(expected_description)
153
- return self
150
+ return self.get_description() == expected_description
154
151
 
155
152
  @step
156
153
  def should_be_shared_with_project(self):
@@ -25,12 +25,12 @@ class WorkflowExecutionHistoryItem:
25
25
  @property
26
26
  def status_badge(self):
27
27
  """Status badge (Succeeded/Failed/Running)."""
28
- return self.item.locator(".flex.flex-row.items-center.gap-1")
28
+ return self.item.locator(".flex.flex-row.items-center.border")
29
29
 
30
30
  @property
31
31
  def status_dot(self):
32
32
  """Status indicator dot."""
33
- return self.status_badge.locator(".rounded-full.w-2.h-2")
33
+ return self.status_badge.locator(".rounded-full.inline-block")
34
34
 
35
35
  @property
36
36
  def timestamp(self):
@@ -38,8 +38,8 @@ class WorkflowExecutionHistoryItem:
38
38
  return self.item.locator(".text-text-tertiary.text-xs span")
39
39
 
40
40
  @property
41
- def execution_id(self):
42
- """Execution ID text element."""
41
+ def execution_body(self):
42
+ """Execution body text element."""
43
43
  return self.item.locator(
44
44
  ".truncate.overflow-hidden.whitespace-nowrap.min-w-0.text-sm"
45
45
  )
@@ -47,7 +47,7 @@ class WorkflowExecutionHistoryItem:
47
47
  @property
48
48
  def menu_button(self):
49
49
  """Three dots menu button."""
50
- return self.item.locator('button:has(svg path[fill="#A1A1A1"])')
50
+ return self.item.locator("button.tertiary.medium.m-1")
51
51
 
52
52
  # Utility methods
53
53
  @step
@@ -58,7 +58,7 @@ class WorkflowExecutionHistoryItem:
58
58
  @step
59
59
  def get_execution_id_text(self) -> str:
60
60
  """Get execution ID text."""
61
- return self.execution_id.text_content().strip()
61
+ return self.execution_body.text_content().strip()
62
62
 
63
63
  @step
64
64
  def get_timestamp_text(self) -> str:
@@ -162,13 +162,13 @@ class WorkflowExecutionHistoryItem:
162
162
  @step
163
163
  def should_have_execution_id(self, expected_id: str):
164
164
  """Verify the execution ID."""
165
- expect(self.execution_id).to_have_text(expected_id)
165
+ expect(self.execution_body).to_have_text(expected_id)
166
166
  return self
167
167
 
168
168
  @step
169
169
  def should_have_execution_id_pattern(self, pattern: str):
170
170
  """Verify the execution ID matches a pattern (regex)."""
171
- expect(self.execution_id).to_match(pattern)
171
+ expect(self.execution_body).to_match(pattern)
172
172
  return self
173
173
 
174
174
  @step
@@ -213,7 +213,7 @@ class WorkflowExecutionHistoryItem:
213
213
  """Verify all main elements are visible."""
214
214
  expect(self.container).to_be_visible()
215
215
  expect(self.status_badge).to_be_visible()
216
- expect(self.execution_id).to_be_visible()
216
+ expect(self.execution_body).to_be_visible()
217
217
  expect(self.timestamp).to_be_visible()
218
218
  expect(self.menu_button).to_be_visible()
219
219
  return self
@@ -97,7 +97,7 @@ class WorkflowExecutionState:
97
97
  @property
98
98
  def expanded_content(self):
99
99
  """Expanded content container (when state is expanded)."""
100
- return self.state.locator("div.wrapper")
100
+ return self.state.locator("div.markdown")
101
101
 
102
102
  @property
103
103
  def expanded_message(self):