codemie-test-harness 0.1.178__py3-none-any.whl → 0.1.180__py3-none-any.whl
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.
Potentially problematic release.
This version of codemie-test-harness might be problematic. Click here for more details.
- codemie_test_harness/cli/cli.py +2 -0
- codemie_test_harness/cli/commands/marks_cmd.py +39 -0
- codemie_test_harness/cli/marks_utils.py +338 -0
- codemie_test_harness/cli/runner.py +40 -0
- codemie_test_harness/tests/assistant/datasource/test_code_datasource.py +3 -3
- codemie_test_harness/tests/assistant/datasource/test_confluence_datasource.py +3 -3
- codemie_test_harness/tests/assistant/datasource/test_file_indexing.py +5 -5
- codemie_test_harness/tests/assistant/datasource/test_google_datasource.py +3 -3
- codemie_test_harness/tests/assistant/datasource/test_jira_datasource.py +3 -3
- codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool.py +8 -8
- codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_kit.py +10 -10
- codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_with_datasource.py +8 -8
- codemie_test_harness/tests/assistant/test_assistants.py +22 -22
- codemie_test_harness/tests/assistant/tools/access_management/test_keycloak_tool.py +1 -1
- codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_test_plan_tools.py +2 -2
- codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_wiki_tools.py +2 -2
- codemie_test_harness/tests/assistant/tools/ado/test_assistant_for_ado_work_item_tools.py +2 -2
- codemie_test_harness/tests/assistant/tools/cloud/test_cloud_tools.py +1 -1
- codemie_test_harness/tests/assistant/tools/codebase/test_codebase_tools.py +2 -2
- codemie_test_harness/tests/assistant/tools/datamanagement/test_assistant_with_data_management_tools.py +2 -2
- codemie_test_harness/tests/assistant/tools/filemanagement/test_assistant_with_file_management_tools.py +4 -4
- codemie_test_harness/tests/assistant/tools/git/test_assistant_with_git_tools.py +7 -7
- codemie_test_harness/tests/assistant/tools/mcp/test_cli_mcp_server.py +2 -2
- codemie_test_harness/tests/assistant/tools/mcp/test_mcp_servers.py +2 -2
- codemie_test_harness/tests/assistant/tools/notification/test_assistant_notification_tools.py +2 -2
- codemie_test_harness/tests/assistant/tools/openapi/test_assistant_with_open_api_tools.py +1 -1
- codemie_test_harness/tests/assistant/tools/plugin/test_assistant_with_development_plugin.py +2 -2
- codemie_test_harness/tests/assistant/tools/plugin/test_assistant_with_plugin_and_mcp_servers.py +2 -2
- codemie_test_harness/tests/assistant/tools/{mcp → plugin}/test_single_assistant_dual_time_plugins.py +1 -1
- codemie_test_harness/tests/assistant/tools/project_management/test_assistant_pm_tools.py +6 -6
- codemie_test_harness/tests/assistant/tools/report_portal/test_assistant_report_portal_tools.py +1 -1
- codemie_test_harness/tests/assistant/tools/research/test_assistant_research_tools.py +2 -2
- codemie_test_harness/tests/assistant/tools/servicenow/test_servicenow_tools.py +1 -1
- codemie_test_harness/tests/assistant/tools/vcs/test_assistant_with_vcs_tools.py +1 -1
- codemie_test_harness/tests/conversations/test_conversations_endpoints.py +5 -5
- codemie_test_harness/tests/e2e/test_e2e.py +6 -6
- codemie_test_harness/tests/integrations/project/test_default_integrations.py +14 -14
- codemie_test_harness/tests/integrations/project/test_project_integrations.py +9 -9
- codemie_test_harness/tests/integrations/user/test_default_integrations.py +14 -14
- codemie_test_harness/tests/integrations/user/test_user_integrations.py +12 -12
- codemie_test_harness/tests/llm/assistants/test_lite_llm.py +2 -2
- codemie_test_harness/tests/llm/assistants/test_llm.py +3 -3
- codemie_test_harness/tests/providers/test_providers_endpoints.py +11 -11
- codemie_test_harness/tests/search/test_search_assistant.py +1 -1
- codemie_test_harness/tests/search/test_search_datasource.py +5 -5
- codemie_test_harness/tests/search/test_search_integration.py +2 -2
- codemie_test_harness/tests/search/test_search_workflow.py +1 -1
- codemie_test_harness/tests/service/test_assistant_service.py +1 -1
- codemie_test_harness/tests/test_data/ado_work_item_tools_test_data.py +3 -3
- codemie_test_harness/tests/test_data/codebase_tools_test_data.py +11 -5
- codemie_test_harness/tests/ui/assistants/test_create_assistant.py +11 -11
- codemie_test_harness/tests/ui/datasource/test_create_datasource.py +19 -16
- codemie_test_harness/tests/ui/datasource/test_datasource_page.py +5 -5
- codemie_test_harness/tests/ui/datasource/test_edit_datasource.py +15 -11
- codemie_test_harness/tests/ui/datasource/test_view_datasource.py +11 -9
- codemie_test_harness/tests/ui/integrations/test_create_integration.py +9 -9
- codemie_test_harness/tests/ui/pageobject/datasources/create_edit_datasource_page.py +12 -5
- codemie_test_harness/tests/ui/pageobject/datasources/datasource_page.py +6 -2
- codemie_test_harness/tests/ui/pageobject/datasources/datasource_sidebar.py +2 -2
- codemie_test_harness/tests/ui/pageobject/datasources/view_datasource_page.py +3 -1
- codemie_test_harness/tests/ui/workflows/test_create_workflow.py +12 -12
- codemie_test_harness/tests/ui/workflows/test_edit_workflow.py +15 -15
- codemie_test_harness/tests/ui/workflows/test_workflow_details.py +19 -19
- codemie_test_harness/tests/ui/workflows/test_workflow_executions_page.py +36 -36
- codemie_test_harness/tests/ui/workflows/test_workflow_templates.py +8 -8
- codemie_test_harness/tests/ui/workflows/test_workflows.py +8 -8
- codemie_test_harness/tests/workflow/assistant_tools/access_management/test_workflow_with_assistant_with_keycloak_tool.py +1 -1
- codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_test_plan_tools.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_wiki_tools.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/ado/test_workflow_with_assistant_with_ado_work_item_tools.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/cloud/test_workflow_with_assistant_cloud_tools.py +1 -1
- codemie_test_harness/tests/workflow/assistant_tools/codebase/test_worfklow_with_assistant_codebase_tools.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/data_management/test_workflow_with_assistant_with_data_management_tools.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool.py +8 -8
- codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool_kit.py +10 -10
- codemie_test_harness/tests/workflow/assistant_tools/default_integrations/test_default_integrations_for_tool_with_datasource.py +8 -8
- codemie_test_harness/tests/workflow/assistant_tools/file_management/test_workflow_with_assistant_with_file_management_tools.py +5 -5
- codemie_test_harness/tests/workflow/assistant_tools/git/test_workflow_with_assistant_git_tools.py +7 -7
- codemie_test_harness/tests/workflow/assistant_tools/mcp/test_workflow_with_assistant_with_mcp_server.py +3 -3
- codemie_test_harness/tests/workflow/assistant_tools/notification/test_workflow_with_assistant_notification_tools.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/open_api/test_workflow_with_assistant_with_open_api_tools.py +1 -1
- codemie_test_harness/tests/workflow/assistant_tools/plugin/test_workflow_with_assistant_with_development_plugin.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/plugin/test_workflow_with_assistant_with_plugin_and_mcp_servers.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/project_management/test_workflow_with_assistant_pm_tools.py +1 -1
- codemie_test_harness/tests/workflow/assistant_tools/report_portal/test_workflow_with_assistant_with_report_portal_tools.py +1 -1
- codemie_test_harness/tests/workflow/assistant_tools/research/test_workflow_with_assistant_research_tools.py +2 -2
- codemie_test_harness/tests/workflow/assistant_tools/servicenow/test_workflow_with_servicenow_tools.py +1 -1
- codemie_test_harness/tests/workflow/assistant_tools/vcs/workflow_with_assistant_vcs_tools.py +1 -1
- codemie_test_harness/tests/workflow/config_validation/test_config_validation.py +1 -1
- codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/test_default_integrations_for_tool.py +8 -8
- codemie_test_harness/tests/workflow/direct_tools_calling/default_integrations/test_default_integrations_for_tool_kit.py +8 -8
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_access_management_tool.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_test_plan_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_wiki_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_ado_work_item_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_cloud_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_codebase_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_data_management_tools_elastic.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_data_management_tools_sql.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_file_management_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_notification_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_open_api_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_plugin_tools.py +4 -4
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_project_management_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_report_portal_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_research_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_servicenow_tools.py +3 -3
- codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_vcs_tools.py +5 -3
- codemie_test_harness/tests/workflow/test_workflows.py +1 -1
- codemie_test_harness/tests/workflow/virtual_assistant_tools/access_management/test_workflow_with_keycloak_tool.py +1 -1
- codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_test_plan_tools.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_wiki_tools.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/ado/test_workflow_with_ado_work_item_tools.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/cloud/test_workflow_with_cloud_tools.py +4 -4
- codemie_test_harness/tests/workflow/virtual_assistant_tools/codebase/test_workflow_with_codebase_tools.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/data_management/test_workflow_with_data_management_tools.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool.py +8 -8
- codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool_kit.py +10 -10
- codemie_test_harness/tests/workflow/virtual_assistant_tools/default_integrations/test_default_integrations_for_tool_with_datasource.py +8 -8
- codemie_test_harness/tests/workflow/virtual_assistant_tools/file_management/test_workflow_with_file_management_tools.py +5 -5
- codemie_test_harness/tests/workflow/virtual_assistant_tools/git/test_workflow_with_git_tools.py +7 -7
- codemie_test_harness/tests/workflow/virtual_assistant_tools/mcp/test_workflow_with_mcp_server.py +3 -3
- codemie_test_harness/tests/workflow/virtual_assistant_tools/notification/test_workflow_with_notification_tools.py +4 -4
- codemie_test_harness/tests/workflow/virtual_assistant_tools/open_api/test_workflow_with_open_api_tools.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/test_workflow_with_development_plugin.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/plugin/test_workflow_with_plugin_and_mcp_servers.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/project_management/test_workflow_with_project_management_tools.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/report_portal/test_workflow_with_report_portal_tool.py +1 -1
- codemie_test_harness/tests/workflow/virtual_assistant_tools/research/test_workflow_with_research_tools.py +2 -2
- codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow/test_workflow_with_servicenow_tools.py +1 -1
- codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs/test_workflow_with_vcs_tools.py +1 -1
- {codemie_test_harness-0.1.178.dist-info → codemie_test_harness-0.1.180.dist-info}/METADATA +8 -8
- {codemie_test_harness-0.1.178.dist-info → codemie_test_harness-0.1.180.dist-info}/RECORD +135 -133
- {codemie_test_harness-0.1.178.dist-info → codemie_test_harness-0.1.180.dist-info}/WHEEL +0 -0
- {codemie_test_harness-0.1.178.dist-info → codemie_test_harness-0.1.180.dist-info}/entry_points.txt +0 -0
|
@@ -134,12 +134,12 @@ ADO_WORK_ITEM_UPDATE = {
|
|
|
134
134
|
|
|
135
135
|
ADO_WORK_ITEM_LINK = {
|
|
136
136
|
"prompt_to_assistant": """
|
|
137
|
-
Run {{'source_id': {}, 'target_id':
|
|
138
|
-
link the Work Items with the ID
|
|
137
|
+
Run {{'source_id': {}, 'target_id': 5297, 'link_type': 'System.LinkTypes.Hierarchy-Reverse'}} to
|
|
138
|
+
link the Work Items with the ID 5297 to be the parent of Work Item with ID '{}' in
|
|
139
139
|
the project 'CodemieAnton'
|
|
140
140
|
""",
|
|
141
141
|
"expected_llm_answer": """
|
|
142
|
-
The Work Item with ID
|
|
142
|
+
The Work Item with ID 5297 has been successfully linked as the parent of the Work Item with ID `{}`
|
|
143
143
|
using the `System.LinkTypes.Hierarchy-Reverse` link type.
|
|
144
144
|
""",
|
|
145
145
|
}
|
|
@@ -24,16 +24,22 @@ as indicated by the file paths and extensions such as .java.""",
|
|
|
24
24
|
CodeBaseTool.READ_FILES_CONTENT_SUMMARY,
|
|
25
25
|
"Find build.gradle and say for what purpose we use the project, only one purpose",
|
|
26
26
|
"""
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
The project appears to be focused on automated testing,
|
|
28
|
+
particularly regression testing for APIs and UI components as well as featured run
|
|
29
|
+
""",
|
|
30
30
|
),
|
|
31
31
|
(
|
|
32
32
|
Toolkit.CODEBASE_TOOLS,
|
|
33
33
|
CodeBaseTool.SEARCH_CODE_REPO_BY_PATH,
|
|
34
34
|
"Find the file be path src/main/Test.java and return value which in file",
|
|
35
|
-
"""
|
|
36
|
-
|
|
35
|
+
"""
|
|
36
|
+
File contain only one method
|
|
37
|
+
public class TestClass {
|
|
38
|
+
public static void main(String[] args) {
|
|
39
|
+
System.out.println("Hello, World!");
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
""",
|
|
37
43
|
),
|
|
38
44
|
(
|
|
39
45
|
Toolkit.CODEBASE_TOOLS,
|
|
@@ -41,7 +41,7 @@ from codemie_test_harness.tests.ui.pageobject.assistants.create_assistant_page i
|
|
|
41
41
|
class TestCreateAssistantPageElements:
|
|
42
42
|
"""Test suite for Create Assistant page element visibility and structure."""
|
|
43
43
|
|
|
44
|
-
@pytest.mark.
|
|
44
|
+
@pytest.mark.assistant
|
|
45
45
|
@pytest.mark.ui
|
|
46
46
|
def test_create_assistant_page_elements_visibility(self, page):
|
|
47
47
|
"""
|
|
@@ -72,7 +72,7 @@ class TestCreateAssistantPageElements:
|
|
|
72
72
|
create_page.should_have_page_content_visible()
|
|
73
73
|
create_page.should_not_have_loading_indicator()
|
|
74
74
|
|
|
75
|
-
@pytest.mark.
|
|
75
|
+
@pytest.mark.assistant
|
|
76
76
|
@pytest.mark.ui
|
|
77
77
|
def test_create_assistant_navigation_from_assistants_page(self, page):
|
|
78
78
|
"""
|
|
@@ -98,7 +98,7 @@ class TestCreateAssistantPageElements:
|
|
|
98
98
|
create_page = CreateAssistantPage(page)
|
|
99
99
|
create_page.should_be_on_create_assistant_page()
|
|
100
100
|
|
|
101
|
-
@pytest.mark.
|
|
101
|
+
@pytest.mark.assistant
|
|
102
102
|
@pytest.mark.ui
|
|
103
103
|
def test_ai_generator_modal_visibility_and_handling(self, page):
|
|
104
104
|
"""
|
|
@@ -125,7 +125,7 @@ class TestCreateAssistantPageElements:
|
|
|
125
125
|
create_page.should_be_on_create_assistant_page()
|
|
126
126
|
create_page.should_have_all_form_fields_visible()
|
|
127
127
|
|
|
128
|
-
@pytest.mark.
|
|
128
|
+
@pytest.mark.assistant
|
|
129
129
|
@pytest.mark.ui
|
|
130
130
|
def test_ai_generator_modal_create_manually_workflow(self, page):
|
|
131
131
|
"""
|
|
@@ -166,7 +166,7 @@ class TestCreateAssistantPageElements:
|
|
|
166
166
|
class TestCreateAssistantFormInteractions:
|
|
167
167
|
"""Test suite for form field interactions and input validation."""
|
|
168
168
|
|
|
169
|
-
@pytest.mark.
|
|
169
|
+
@pytest.mark.assistant
|
|
170
170
|
@pytest.mark.ui
|
|
171
171
|
def test_create_assistant_form_field_interactions(self, page):
|
|
172
172
|
"""
|
|
@@ -216,7 +216,7 @@ class TestCreateAssistantFormInteractions:
|
|
|
216
216
|
create_page.fill_icon_url(test_icon_url)
|
|
217
217
|
create_page.should_have_icon_url_value(test_icon_url)
|
|
218
218
|
|
|
219
|
-
@pytest.mark.
|
|
219
|
+
@pytest.mark.assistant
|
|
220
220
|
@pytest.mark.ui
|
|
221
221
|
def test_create_assistant_default_field_values(self, page):
|
|
222
222
|
"""
|
|
@@ -255,7 +255,7 @@ class TestCreateAssistantCriticalHappyPath:
|
|
|
255
255
|
ensuring that the essential functionality works correctly for end users.
|
|
256
256
|
"""
|
|
257
257
|
|
|
258
|
-
@pytest.mark.
|
|
258
|
+
@pytest.mark.assistant
|
|
259
259
|
@pytest.mark.ui
|
|
260
260
|
def test_create_assistant_minimal_required_fields(self, page):
|
|
261
261
|
"""
|
|
@@ -288,7 +288,7 @@ class TestCreateAssistantCriticalHappyPath:
|
|
|
288
288
|
assistants_page = AssistantsPage(page)
|
|
289
289
|
assert_assistant_created_successfully(assistants_page, test_data.name)
|
|
290
290
|
|
|
291
|
-
@pytest.mark.
|
|
291
|
+
@pytest.mark.assistant
|
|
292
292
|
@pytest.mark.ui
|
|
293
293
|
def test_create_assistant_button_states_and_validation(self, page):
|
|
294
294
|
"""
|
|
@@ -318,7 +318,7 @@ class TestCreateAssistantCriticalHappyPath:
|
|
|
318
318
|
class TestCreateAssistantNavigation:
|
|
319
319
|
"""Test suite for navigation functionality within the Create Assistant workflow."""
|
|
320
320
|
|
|
321
|
-
@pytest.mark.
|
|
321
|
+
@pytest.mark.assistant
|
|
322
322
|
@pytest.mark.ui
|
|
323
323
|
def test_create_assistant_cancel_navigation(self, page):
|
|
324
324
|
"""
|
|
@@ -350,7 +350,7 @@ class TestCreateAssistantNavigation:
|
|
|
350
350
|
assistants_page = AssistantsPage(page)
|
|
351
351
|
assistants_page.should_be_on_assistants_page()
|
|
352
352
|
|
|
353
|
-
@pytest.mark.
|
|
353
|
+
@pytest.mark.assistant
|
|
354
354
|
@pytest.mark.ui
|
|
355
355
|
def test_create_assistant_back_button_navigation(self, page):
|
|
356
356
|
"""
|
|
@@ -403,6 +403,6 @@ def assert_assistant_created_successfully(
|
|
|
403
403
|
# ==================== PYTEST MARKERS AND CONFIGURATION ====================
|
|
404
404
|
|
|
405
405
|
pytestmark = [
|
|
406
|
-
pytest.mark.
|
|
406
|
+
pytest.mark.assistant, # Mark all tests in this module as assistant UI tests
|
|
407
407
|
pytest.mark.ui, # Mark all tests as UI tests
|
|
408
408
|
]
|
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import pytest
|
|
2
|
-
from tests import CredentialsManager, PROJECT, TEST_USER
|
|
3
|
-
from tests.test_data.google_datasource_test_data import
|
|
4
|
-
|
|
2
|
+
from codemie_test_harness.tests import CredentialsManager, PROJECT, TEST_USER
|
|
3
|
+
from codemie_test_harness.tests.test_data.google_datasource_test_data import (
|
|
4
|
+
GOOGLE_DOC_URL,
|
|
5
|
+
)
|
|
6
|
+
from codemie_test_harness.tests.ui._test_data.datasource_test_data import (
|
|
5
7
|
DataSourceType,
|
|
6
8
|
DataSourceFilterType,
|
|
7
9
|
DataSourceStatus,
|
|
8
|
-
)
|
|
9
|
-
from tests.ui._test_data.datasource_test_data import (
|
|
10
|
-
TITLE_CREATE_DATASOURCE,
|
|
11
10
|
SUBTITLE_CREATE_DATASOURCE,
|
|
11
|
+
TITLE_CREATE_DATASOURCE,
|
|
12
12
|
)
|
|
13
|
-
from tests.ui.pageobject.datasources.create_edit_datasource_page import (
|
|
13
|
+
from codemie_test_harness.tests.ui.pageobject.datasources.create_edit_datasource_page import (
|
|
14
14
|
CreateEditDatasourcePage,
|
|
15
15
|
)
|
|
16
|
-
|
|
17
|
-
from tests.
|
|
16
|
+
|
|
17
|
+
from codemie_test_harness.tests.ui.pageobject.datasources.datasource_page import (
|
|
18
|
+
DataSourcePage,
|
|
19
|
+
)
|
|
20
|
+
from codemie_test_harness.tests.utils.constants import FILES_PATH
|
|
18
21
|
|
|
19
22
|
|
|
20
|
-
@pytest.mark.
|
|
23
|
+
@pytest.mark.datasource
|
|
21
24
|
@pytest.mark.ui
|
|
22
25
|
def test_open_create_datasource_page_and_elements(page):
|
|
23
26
|
"""Open Create Datasource page and verify critical elements."""
|
|
@@ -46,7 +49,7 @@ def test_open_create_datasource_page_and_elements(page):
|
|
|
46
49
|
create_page.should_see_google_fields()
|
|
47
50
|
|
|
48
51
|
|
|
49
|
-
@pytest.mark.
|
|
52
|
+
@pytest.mark.datasource
|
|
50
53
|
@pytest.mark.ui
|
|
51
54
|
def test_datasource_creation_validation(page):
|
|
52
55
|
"""Test create datasource without data and observing errors."""
|
|
@@ -74,7 +77,7 @@ def test_datasource_creation_validation(page):
|
|
|
74
77
|
create_page.should_see_error_for_empty_google_fields()
|
|
75
78
|
|
|
76
79
|
|
|
77
|
-
@pytest.mark.
|
|
80
|
+
@pytest.mark.datasource
|
|
78
81
|
@pytest.mark.ui
|
|
79
82
|
def test_create_git_datasource(page, git_integration):
|
|
80
83
|
"""Test creating a new datasource with all required fields."""
|
|
@@ -98,7 +101,7 @@ def test_create_git_datasource(page, git_integration):
|
|
|
98
101
|
)
|
|
99
102
|
|
|
100
103
|
|
|
101
|
-
@pytest.mark.
|
|
104
|
+
@pytest.mark.datasource
|
|
102
105
|
@pytest.mark.ui
|
|
103
106
|
def test_create_confluence_datasource(page, confluence_integration):
|
|
104
107
|
"""Test creating a new datasource with all required fields."""
|
|
@@ -121,7 +124,7 @@ def test_create_confluence_datasource(page, confluence_integration):
|
|
|
121
124
|
)
|
|
122
125
|
|
|
123
126
|
|
|
124
|
-
@pytest.mark.
|
|
127
|
+
@pytest.mark.datasource
|
|
125
128
|
@pytest.mark.ui
|
|
126
129
|
def test_create_jira_datasource(page, jira_integration):
|
|
127
130
|
"""Test creating a new datasource with all required fields."""
|
|
@@ -144,7 +147,7 @@ def test_create_jira_datasource(page, jira_integration):
|
|
|
144
147
|
)
|
|
145
148
|
|
|
146
149
|
|
|
147
|
-
@pytest.mark.
|
|
150
|
+
@pytest.mark.datasource
|
|
148
151
|
@pytest.mark.ui
|
|
149
152
|
def test_create_file_datasource(page):
|
|
150
153
|
"""Test creating a new datasource with all required fields."""
|
|
@@ -166,7 +169,7 @@ def test_create_file_datasource(page):
|
|
|
166
169
|
)
|
|
167
170
|
|
|
168
171
|
|
|
169
|
-
@pytest.mark.
|
|
172
|
+
@pytest.mark.datasource
|
|
170
173
|
@pytest.mark.ui
|
|
171
174
|
def test_create_google_datasource(page):
|
|
172
175
|
"""Test creating a new datasource with all required fields."""
|
|
@@ -4,14 +4,14 @@ from codemie_test_harness.tests.ui.pageobject.datasources.datasource_page import
|
|
|
4
4
|
DataSourcePage,
|
|
5
5
|
)
|
|
6
6
|
from codemie_test_harness.tests.utils.base_utils import get_random_name
|
|
7
|
-
from tests import TEST_USER
|
|
8
|
-
from tests.ui._test_data.datasource_test_data import (
|
|
7
|
+
from codemie_test_harness.tests import TEST_USER
|
|
8
|
+
from codemie_test_harness.tests.ui._test_data.datasource_test_data import (
|
|
9
9
|
MAIN_TITLE_DATASOURCE,
|
|
10
10
|
MAIN_SUBTITLE_DATASOURCE,
|
|
11
11
|
)
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
@pytest.mark.
|
|
14
|
+
@pytest.mark.datasource
|
|
15
15
|
@pytest.mark.ui
|
|
16
16
|
def test_datasource_sidebar_interaction(page):
|
|
17
17
|
"""Test sidebar filters interactions."""
|
|
@@ -35,7 +35,7 @@ def test_datasource_sidebar_interaction(page):
|
|
|
35
35
|
datasource_page.sidebar.click_clear_all_button().should_see_cleared_filters()
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
@pytest.mark.
|
|
38
|
+
@pytest.mark.datasource
|
|
39
39
|
@pytest.mark.ui
|
|
40
40
|
def test_datasource_sidebar_hiding_elements(page):
|
|
41
41
|
"""Test sidebar filters hiding."""
|
|
@@ -48,7 +48,7 @@ def test_datasource_sidebar_hiding_elements(page):
|
|
|
48
48
|
datasource_page.sidebar.click_status_filter_hide_button().should_not_see_status_filters()
|
|
49
49
|
|
|
50
50
|
|
|
51
|
-
@pytest.mark.
|
|
51
|
+
@pytest.mark.datasource
|
|
52
52
|
@pytest.mark.ui
|
|
53
53
|
def test_datasource_page_elements_visibility(page):
|
|
54
54
|
"""Test DataSource index page and sidebar elements are visible."""
|
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import pytest
|
|
2
|
-
from tests import PROJECT, TEST_USER
|
|
3
|
-
from tests.test_data.google_datasource_test_data import
|
|
4
|
-
|
|
2
|
+
from codemie_test_harness.tests import PROJECT, TEST_USER
|
|
3
|
+
from codemie_test_harness.tests.test_data.google_datasource_test_data import (
|
|
4
|
+
GOOGLE_DOC_URL,
|
|
5
|
+
)
|
|
6
|
+
from codemie_test_harness.tests.ui._test_data.datasource_test_data import (
|
|
5
7
|
DataSourceStatus,
|
|
6
8
|
DataSourceFilterType,
|
|
7
9
|
UPDATE_SUBTITLE_DATASOURCE,
|
|
8
10
|
UPDATE_TITLE_DATASOURCE,
|
|
9
11
|
)
|
|
10
|
-
from tests.ui.pageobject.datasources.create_edit_datasource_page import (
|
|
12
|
+
from codemie_test_harness.tests.ui.pageobject.datasources.create_edit_datasource_page import (
|
|
11
13
|
CreateEditDatasourcePage,
|
|
12
14
|
)
|
|
13
|
-
from tests.ui.pageobject.datasources.datasource_page import
|
|
14
|
-
|
|
15
|
+
from codemie_test_harness.tests.ui.pageobject.datasources.datasource_page import (
|
|
16
|
+
DataSourcePage,
|
|
17
|
+
)
|
|
18
|
+
from codemie_test_harness.tests.utils.constants import FILES_PATH
|
|
15
19
|
|
|
16
20
|
|
|
17
|
-
@pytest.mark.
|
|
21
|
+
@pytest.mark.datasource
|
|
18
22
|
@pytest.mark.ui
|
|
19
23
|
def test_edit_git_datasource(
|
|
20
24
|
page, datasource_utils, git_integration, default_embedding_llm
|
|
@@ -50,7 +54,7 @@ def test_edit_git_datasource(
|
|
|
50
54
|
edit_page.should_see_save_reindex_button()
|
|
51
55
|
|
|
52
56
|
|
|
53
|
-
@pytest.mark.
|
|
57
|
+
@pytest.mark.datasource
|
|
54
58
|
@pytest.mark.ui
|
|
55
59
|
def test_edit_confluence_datasource(page, datasource_utils, confluence_integration):
|
|
56
60
|
"""Test that all main Edit Datasource page elements are visible."""
|
|
@@ -83,7 +87,7 @@ def test_edit_confluence_datasource(page, datasource_utils, confluence_integrati
|
|
|
83
87
|
edit_page.should_see_save_reindex_button()
|
|
84
88
|
|
|
85
89
|
|
|
86
|
-
@pytest.mark.
|
|
90
|
+
@pytest.mark.datasource
|
|
87
91
|
@pytest.mark.ui
|
|
88
92
|
def test_edit_jira_datasource(page, datasource_utils, jira_integration):
|
|
89
93
|
"""Test that all main Edit Datasource page elements are visible."""
|
|
@@ -116,7 +120,7 @@ def test_edit_jira_datasource(page, datasource_utils, jira_integration):
|
|
|
116
120
|
edit_page.should_see_save_reindex_button()
|
|
117
121
|
|
|
118
122
|
|
|
119
|
-
@pytest.mark.
|
|
123
|
+
@pytest.mark.datasource
|
|
120
124
|
@pytest.mark.ui
|
|
121
125
|
def test_edit_file_datasource(page, datasource_utils):
|
|
122
126
|
"""Test that all main Edit Datasource page elements are visible."""
|
|
@@ -147,7 +151,7 @@ def test_edit_file_datasource(page, datasource_utils):
|
|
|
147
151
|
edit_page.should_see_disabled_name_input(datasource.name)
|
|
148
152
|
|
|
149
153
|
|
|
150
|
-
@pytest.mark.
|
|
154
|
+
@pytest.mark.datasource
|
|
151
155
|
@pytest.mark.ui
|
|
152
156
|
def test_edit_google_datasource(page, datasource_utils):
|
|
153
157
|
"""Test that all main Edit Datasource page elements are visible."""
|
|
@@ -6,20 +6,22 @@ from codemie_test_harness.tests.ui.pageobject.datasources.view_datasource_page i
|
|
|
6
6
|
from codemie_test_harness.tests.ui.pageobject.datasources.datasource_page import (
|
|
7
7
|
DataSourcePage,
|
|
8
8
|
)
|
|
9
|
-
from tests import PROJECT, TEST_USER
|
|
10
|
-
from tests.test_data.google_datasource_test_data import
|
|
9
|
+
from codemie_test_harness.tests import PROJECT, TEST_USER
|
|
10
|
+
from codemie_test_harness.tests.test_data.google_datasource_test_data import (
|
|
11
|
+
GOOGLE_DOC_URL,
|
|
12
|
+
)
|
|
11
13
|
|
|
12
|
-
from tests.ui._test_data.datasource_test_data import (
|
|
14
|
+
from codemie_test_harness.tests.ui._test_data.datasource_test_data import (
|
|
13
15
|
TITLE_VIEW_DATASOURCE,
|
|
14
16
|
SUBTITLE_VIEW_DATASOURCE,
|
|
15
17
|
DataSourceStatus,
|
|
16
18
|
DataSourceType,
|
|
17
19
|
DataSourceFilterType,
|
|
18
20
|
)
|
|
19
|
-
from tests.utils.constants import FILES_PATH
|
|
21
|
+
from codemie_test_harness.tests.utils.constants import FILES_PATH
|
|
20
22
|
|
|
21
23
|
|
|
22
|
-
@pytest.mark.
|
|
24
|
+
@pytest.mark.datasource
|
|
23
25
|
@pytest.mark.ui
|
|
24
26
|
def test_view_git_datasource_page(
|
|
25
27
|
page, datasource_utils, git_integration, default_embedding_llm, client
|
|
@@ -60,7 +62,7 @@ def test_view_git_datasource_page(
|
|
|
60
62
|
view_page.should_open_and_see_processed_data()
|
|
61
63
|
|
|
62
64
|
|
|
63
|
-
@pytest.mark.
|
|
65
|
+
@pytest.mark.datasource
|
|
64
66
|
@pytest.mark.ui
|
|
65
67
|
def test_view_confluence_datasource_page(
|
|
66
68
|
page, datasource_utils, confluence_integration, default_embedding_llm, client
|
|
@@ -100,7 +102,7 @@ def test_view_confluence_datasource_page(
|
|
|
100
102
|
view_page.should_see_processed_data()
|
|
101
103
|
|
|
102
104
|
|
|
103
|
-
@pytest.mark.
|
|
105
|
+
@pytest.mark.datasource
|
|
104
106
|
@pytest.mark.ui
|
|
105
107
|
def test_view_jira_datasource_page(
|
|
106
108
|
page, datasource_utils, jira_integration, default_embedding_llm, client
|
|
@@ -140,7 +142,7 @@ def test_view_jira_datasource_page(
|
|
|
140
142
|
view_page.should_see_processed_data()
|
|
141
143
|
|
|
142
144
|
|
|
143
|
-
@pytest.mark.
|
|
145
|
+
@pytest.mark.datasource
|
|
144
146
|
@pytest.mark.ui
|
|
145
147
|
def test_view_file_datasource_page(
|
|
146
148
|
page, datasource_utils, default_embedding_llm, client
|
|
@@ -180,7 +182,7 @@ def test_view_file_datasource_page(
|
|
|
180
182
|
view_page.should_see_processed_data()
|
|
181
183
|
|
|
182
184
|
|
|
183
|
-
@pytest.mark.
|
|
185
|
+
@pytest.mark.datasource
|
|
184
186
|
@pytest.mark.ui
|
|
185
187
|
def test_view_google_datasource_page(
|
|
186
188
|
page, datasource_utils, default_embedding_llm, client
|
|
@@ -23,7 +23,7 @@ from codemie_test_harness.tests.ui.pageobject.integrations.integrations_page imp
|
|
|
23
23
|
class TestCreateIntegrationNavigation:
|
|
24
24
|
"""Test class for integration creation navigation and page access."""
|
|
25
25
|
|
|
26
|
-
@pytest.mark.
|
|
26
|
+
@pytest.mark.integration
|
|
27
27
|
@pytest.mark.ui
|
|
28
28
|
@pytest.mark.smoke
|
|
29
29
|
def test_navigate_to_integrations_via_menu(self, page):
|
|
@@ -46,7 +46,7 @@ class TestCreateIntegrationNavigation:
|
|
|
46
46
|
integrations_page.should_see_integration_type_switcher()
|
|
47
47
|
integrations_page.should_see_integrations_table()
|
|
48
48
|
|
|
49
|
-
@pytest.mark.
|
|
49
|
+
@pytest.mark.integration
|
|
50
50
|
@pytest.mark.ui
|
|
51
51
|
@pytest.mark.smoke
|
|
52
52
|
def test_navigate_to_create_integration_via_direct_url(self, page):
|
|
@@ -72,7 +72,7 @@ class TestCreateIntegrationNavigation:
|
|
|
72
72
|
# Assert
|
|
73
73
|
create_integration_page.should_be_on_create_project_integration_page()
|
|
74
74
|
|
|
75
|
-
@pytest.mark.
|
|
75
|
+
@pytest.mark.integration
|
|
76
76
|
@pytest.mark.ui
|
|
77
77
|
@pytest.mark.smoke
|
|
78
78
|
def test_navigate_to_create_integration_from_integrations_page(self, page):
|
|
@@ -105,7 +105,7 @@ class TestCreateIntegrationNavigation:
|
|
|
105
105
|
class TestIntegrationCreationPageElements:
|
|
106
106
|
"""Test class for integration creation page elements display."""
|
|
107
107
|
|
|
108
|
-
@pytest.mark.
|
|
108
|
+
@pytest.mark.integration
|
|
109
109
|
@pytest.mark.ui
|
|
110
110
|
@pytest.mark.smoke
|
|
111
111
|
@pytest.mark.parametrize(
|
|
@@ -163,7 +163,7 @@ class TestIntegrationCreationPageElements:
|
|
|
163
163
|
class TestIntegrationCreationWorkflow:
|
|
164
164
|
"""Test class for the complete integration creation workflow."""
|
|
165
165
|
|
|
166
|
-
@pytest.mark.
|
|
166
|
+
@pytest.mark.integration
|
|
167
167
|
@pytest.mark.ui
|
|
168
168
|
@pytest.mark.smoke
|
|
169
169
|
def test_create_git_integration_complete_workflow(self, page):
|
|
@@ -191,7 +191,7 @@ class TestIntegrationCreationWorkflow:
|
|
|
191
191
|
.should_see_specific_integration(integration_test_data.alias)
|
|
192
192
|
)
|
|
193
193
|
|
|
194
|
-
@pytest.mark.
|
|
194
|
+
@pytest.mark.integration
|
|
195
195
|
@pytest.mark.ui
|
|
196
196
|
@pytest.mark.smoke
|
|
197
197
|
def test_create_jira_integration_complete_workflow(self, page):
|
|
@@ -224,7 +224,7 @@ class TestIntegrationCreationWorkflow:
|
|
|
224
224
|
.should_see_specific_integration(integration_test_data.alias)
|
|
225
225
|
)
|
|
226
226
|
|
|
227
|
-
@pytest.mark.
|
|
227
|
+
@pytest.mark.integration
|
|
228
228
|
@pytest.mark.ui
|
|
229
229
|
@pytest.mark.smoke
|
|
230
230
|
def test_create_confluence_integration_complete_workflow(self, page):
|
|
@@ -262,7 +262,7 @@ class TestIntegrationCreationWorkflow:
|
|
|
262
262
|
class TestIntegrationFormUserExperience:
|
|
263
263
|
"""Test class for integration form user experience and usability."""
|
|
264
264
|
|
|
265
|
-
@pytest.mark.
|
|
265
|
+
@pytest.mark.integration
|
|
266
266
|
@pytest.mark.ui
|
|
267
267
|
@pytest.mark.smoke
|
|
268
268
|
def test_form_reset_and_cancel_functionality(self, page):
|
|
@@ -290,7 +290,7 @@ class TestIntegrationFormUserExperience:
|
|
|
290
290
|
# Verify the cancelled integration was not created
|
|
291
291
|
integrations_page.should_not_see_integration(cancelled_integration_alias)
|
|
292
292
|
|
|
293
|
-
@pytest.mark.
|
|
293
|
+
@pytest.mark.integration
|
|
294
294
|
@pytest.mark.ui
|
|
295
295
|
@pytest.mark.smoke
|
|
296
296
|
def test_alias_field_validation_message(self, page):
|
|
@@ -3,8 +3,11 @@ from typing import Optional
|
|
|
3
3
|
from codemie_test_harness.tests.ui.pageobject.base_page import BasePage
|
|
4
4
|
from playwright.sync_api import expect
|
|
5
5
|
from reportportal_client import step
|
|
6
|
-
from tests.test_data.google_datasource_test_data import
|
|
7
|
-
|
|
6
|
+
from codemie_test_harness.tests.test_data.google_datasource_test_data import (
|
|
7
|
+
GOOGLE_DOC_URL,
|
|
8
|
+
GOOGLE_GUIDE_URL,
|
|
9
|
+
)
|
|
10
|
+
from codemie_test_harness.tests.ui._test_data.datasource_test_data import (
|
|
8
11
|
DataSourceType,
|
|
9
12
|
SUMMARIZATION_METHODS_LIST,
|
|
10
13
|
EMBEDDING_MODELS_LIST,
|
|
@@ -21,9 +24,13 @@ from tests.ui._test_data.datasource_test_data import (
|
|
|
21
24
|
EMPTY_FILE_ERROR,
|
|
22
25
|
EMPTY_GOOGLE_LINK_ERROR,
|
|
23
26
|
)
|
|
24
|
-
from tests.ui.pageobject.components.project_selector import
|
|
25
|
-
|
|
26
|
-
|
|
27
|
+
from codemie_test_harness.tests.ui.pageobject.components.project_selector import (
|
|
28
|
+
ProjectSelector,
|
|
29
|
+
)
|
|
30
|
+
from codemie_test_harness.tests.ui.pageobject.datasources.datasource_sidebar import (
|
|
31
|
+
DataSourceSidebar,
|
|
32
|
+
)
|
|
33
|
+
from codemie_test_harness.tests.utils.base_utils import get_random_name
|
|
27
34
|
|
|
28
35
|
|
|
29
36
|
class CreateEditDatasourcePage(BasePage):
|
|
@@ -5,8 +5,12 @@ from reportportal_client import step
|
|
|
5
5
|
from playwright.sync_api import expect
|
|
6
6
|
|
|
7
7
|
from codemie_test_harness.tests.ui.pageobject.base_page import BasePage
|
|
8
|
-
from tests.ui._test_data.datasource_test_data import
|
|
9
|
-
|
|
8
|
+
from codemie_test_harness.tests.ui._test_data.datasource_test_data import (
|
|
9
|
+
DATAS_SOURCE_COLUMN_LIST,
|
|
10
|
+
)
|
|
11
|
+
from codemie_test_harness.tests.ui.pageobject.datasources.datasource_sidebar import (
|
|
12
|
+
DataSourceSidebar,
|
|
13
|
+
)
|
|
10
14
|
|
|
11
15
|
|
|
12
16
|
class DataSourcePage(BasePage):
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
from reportportal_client import step
|
|
2
2
|
from playwright.sync_api import expect
|
|
3
|
-
from tests.ui._test_data.datasource_test_data import (
|
|
3
|
+
from codemie_test_harness.tests.ui._test_data.datasource_test_data import (
|
|
4
4
|
DATA_SOURCE_FILTER_STATUSES_LIST,
|
|
5
5
|
DATA_SOURCE_FILTER_TYPES_LIST,
|
|
6
6
|
PROJECT_LABEL,
|
|
7
7
|
STATUS_LABEL,
|
|
8
8
|
)
|
|
9
|
-
from tests.ui.pageobject.base_page import BasePage
|
|
9
|
+
from codemie_test_harness.tests.ui.pageobject.base_page import BasePage
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
class DataSourceSidebar(BasePage):
|
|
@@ -3,7 +3,9 @@ from codemie_test_harness.tests.ui.pageobject.base_page import BasePage
|
|
|
3
3
|
from hamcrest import greater_than_or_equal_to, assert_that
|
|
4
4
|
from playwright.sync_api import expect
|
|
5
5
|
from reportportal_client import step
|
|
6
|
-
from tests.ui.pageobject.datasources.datasource_sidebar import
|
|
6
|
+
from codemie_test_harness.tests.ui.pageobject.datasources.datasource_sidebar import (
|
|
7
|
+
DataSourceSidebar,
|
|
8
|
+
)
|
|
7
9
|
|
|
8
10
|
|
|
9
11
|
class ViewDatasourcePage(BasePage):
|
|
@@ -11,7 +11,7 @@ from codemie_test_harness.tests.ui.pageobject.workflows.create_workflow_page imp
|
|
|
11
11
|
from codemie_test_harness.tests.utils.base_utils import get_random_name
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
@pytest.mark.
|
|
14
|
+
@pytest.mark.workflow
|
|
15
15
|
@pytest.mark.ui
|
|
16
16
|
def test_create_workflow_page_elements_visibility(page):
|
|
17
17
|
"""Test that all main elements are visible on Create Workflow page."""
|
|
@@ -34,7 +34,7 @@ def test_create_workflow_page_elements_visibility(page):
|
|
|
34
34
|
create_page.sidebar.should_have_workflows_title()
|
|
35
35
|
|
|
36
36
|
|
|
37
|
-
@pytest.mark.
|
|
37
|
+
@pytest.mark.workflow
|
|
38
38
|
@pytest.mark.ui
|
|
39
39
|
def test_create_workflow_form_interactions(page):
|
|
40
40
|
"""Test form field interactions and input validation."""
|
|
@@ -65,7 +65,7 @@ def test_create_workflow_form_interactions(page):
|
|
|
65
65
|
create_page.should_have_shared_switch_unchecked()
|
|
66
66
|
|
|
67
67
|
|
|
68
|
-
@pytest.mark.
|
|
68
|
+
@pytest.mark.workflow
|
|
69
69
|
@pytest.mark.ui
|
|
70
70
|
def test_create_workflow_dropdowns_interaction(page):
|
|
71
71
|
"""Test dropdown interactions for project."""
|
|
@@ -80,7 +80,7 @@ def test_create_workflow_dropdowns_interaction(page):
|
|
|
80
80
|
create_page.should_see_project_selected(os.getenv("PROJECT_NAME"))
|
|
81
81
|
|
|
82
82
|
|
|
83
|
-
@pytest.mark.
|
|
83
|
+
@pytest.mark.workflow
|
|
84
84
|
@pytest.mark.ui
|
|
85
85
|
def test_create_workflow_yaml_editor_functionality(page):
|
|
86
86
|
"""Test YAML editor functionality."""
|
|
@@ -102,7 +102,7 @@ def test_create_workflow_yaml_editor_functionality(page):
|
|
|
102
102
|
create_page.should_have_entered_yaml_configuration(test_yaml)
|
|
103
103
|
|
|
104
104
|
|
|
105
|
-
@pytest.mark.
|
|
105
|
+
@pytest.mark.workflow
|
|
106
106
|
@pytest.mark.ui
|
|
107
107
|
def test_create_workflow_visualization_section(page):
|
|
108
108
|
"""Test workflow visualization section functionality."""
|
|
@@ -119,7 +119,7 @@ def test_create_workflow_visualization_section(page):
|
|
|
119
119
|
create_page.should_have_visualization_section_visible()
|
|
120
120
|
|
|
121
121
|
|
|
122
|
-
@pytest.mark.
|
|
122
|
+
@pytest.mark.workflow
|
|
123
123
|
@pytest.mark.ui
|
|
124
124
|
def test_create_workflow_navigation_buttons(page):
|
|
125
125
|
"""Test navigation button interactions."""
|
|
@@ -142,7 +142,7 @@ def test_create_workflow_navigation_buttons(page):
|
|
|
142
142
|
create_page.should_have_url_containing("#/workflows/my")
|
|
143
143
|
|
|
144
144
|
|
|
145
|
-
@pytest.mark.
|
|
145
|
+
@pytest.mark.workflow
|
|
146
146
|
@pytest.mark.ui
|
|
147
147
|
def test_create_workflow_sidebar_functionality(page):
|
|
148
148
|
"""Test sidebar functionality from Create Workflow page."""
|
|
@@ -164,7 +164,7 @@ def test_create_workflow_sidebar_functionality(page):
|
|
|
164
164
|
create_page.should_have_url_containing("#/workflows/all")
|
|
165
165
|
|
|
166
166
|
|
|
167
|
-
@pytest.mark.
|
|
167
|
+
@pytest.mark.workflow
|
|
168
168
|
@pytest.mark.ui
|
|
169
169
|
def test_create_workflow_menu_navigation(page):
|
|
170
170
|
"""Test menu navigation from Create Workflow page."""
|
|
@@ -186,7 +186,7 @@ def test_create_workflow_menu_navigation(page):
|
|
|
186
186
|
create_page.should_have_url_containing("#/workflows")
|
|
187
187
|
|
|
188
188
|
|
|
189
|
-
@pytest.mark.
|
|
189
|
+
@pytest.mark.workflow
|
|
190
190
|
@pytest.mark.ui
|
|
191
191
|
def test_create_workflow_default_field_values(page):
|
|
192
192
|
"""Test default field values on page load."""
|
|
@@ -202,7 +202,7 @@ def test_create_workflow_default_field_values(page):
|
|
|
202
202
|
create_page.should_have_shared_switch_unchecked()
|
|
203
203
|
|
|
204
204
|
|
|
205
|
-
@pytest.mark.
|
|
205
|
+
@pytest.mark.workflow
|
|
206
206
|
@pytest.mark.ui
|
|
207
207
|
def test_create_workflow_button_states(page):
|
|
208
208
|
"""Test create button enabled/disabled states."""
|
|
@@ -221,7 +221,7 @@ def test_create_workflow_button_states(page):
|
|
|
221
221
|
create_page.should_have_create_button_disabled()
|
|
222
222
|
|
|
223
223
|
|
|
224
|
-
@pytest.mark.
|
|
224
|
+
@pytest.mark.workflow
|
|
225
225
|
@pytest.mark.ui
|
|
226
226
|
def test_create_workflow_form_validation(page):
|
|
227
227
|
"""Test form validation scenarios."""
|
|
@@ -238,7 +238,7 @@ def test_create_workflow_form_validation(page):
|
|
|
238
238
|
)
|
|
239
239
|
|
|
240
240
|
|
|
241
|
-
@pytest.mark.
|
|
241
|
+
@pytest.mark.workflow
|
|
242
242
|
@pytest.mark.ui
|
|
243
243
|
def test_create_workflow_complete_workflow_creation(page):
|
|
244
244
|
"""Test complete workflow creation using the create_workflow method."""
|