codemie-test-harness 0.1.136__py3-none-any.whl → 0.1.138__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.

Files changed (29) hide show
  1. codemie_test_harness/tests/__init__.py +1 -0
  2. codemie_test_harness/tests/assistant/test_assistants.py +2 -0
  3. codemie_test_harness/tests/conftest.py +17 -0
  4. codemie_test_harness/tests/service/test_assistant_service.py +349 -379
  5. codemie_test_harness/tests/service/test_datasource_service.py +276 -292
  6. codemie_test_harness/tests/service/test_integration_service.py +133 -122
  7. codemie_test_harness/tests/service/test_llm_service.py +16 -17
  8. codemie_test_harness/tests/service/test_task_service.py +108 -120
  9. codemie_test_harness/tests/service/test_user_service.py +36 -19
  10. codemie_test_harness/tests/service/test_workflow_execution_service.py +142 -169
  11. codemie_test_harness/tests/service/test_workflow_service.py +145 -144
  12. codemie_test_harness/tests/test_data/cloud_tools_test_data.py +5 -1
  13. codemie_test_harness/tests/test_data/direct_tools/cloud_tools_test_data.py +5 -1
  14. codemie_test_harness/tests/test_data/direct_tools/codebase_tools_test_data.py +28 -159
  15. codemie_test_harness/tests/test_data/integrations_test_data.py +10 -2
  16. codemie_test_harness/tests/test_data/llm_test_data.py +0 -1
  17. codemie_test_harness/tests/test_data/vcs_tools_test_data.py +4 -1
  18. codemie_test_harness/tests/utils/assistant_utils.py +39 -4
  19. codemie_test_harness/tests/utils/aws_parameters_store.py +1 -1
  20. codemie_test_harness/tests/utils/llm_utils.py +9 -0
  21. codemie_test_harness/tests/utils/search_utils.py +11 -5
  22. codemie_test_harness/tests/utils/user_utils.py +9 -0
  23. codemie_test_harness/tests/utils/workflow_utils.py +34 -6
  24. codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_cloud_tools.py +3 -3
  25. codemie_test_harness/tests/workflow/direct_tools_calling/test_workflow_with_research_tools.py +3 -3
  26. {codemie_test_harness-0.1.136.dist-info → codemie_test_harness-0.1.138.dist-info}/METADATA +2 -2
  27. {codemie_test_harness-0.1.136.dist-info → codemie_test_harness-0.1.138.dist-info}/RECORD +29 -27
  28. {codemie_test_harness-0.1.136.dist-info → codemie_test_harness-0.1.138.dist-info}/WHEEL +0 -0
  29. {codemie_test_harness-0.1.136.dist-info → codemie_test_harness-0.1.138.dist-info}/entry_points.txt +0 -0
@@ -37,6 +37,7 @@ LANGFUSE_TRACES_ENABLED = (
37
37
 
38
38
  PROJECT = os.getenv("PROJECT_NAME", "codemie")
39
39
  TEST_USER = os.getenv("TEST_USER_FULL_NAME", "Test User")
40
+ GITHUB_URL = os.getenv("GITHUB_URL", "https://github.com")
40
41
 
41
42
  autotest_entity_prefix = (
42
43
  f"{''.join(random.choice(string.ascii_lowercase) for _ in range(3))}_"
@@ -220,6 +220,8 @@ def test_create_assistant_and_prompt_with_file(
220
220
  prompt = (
221
221
  f"What is the content/text of the {file_name}. Show information from ALL pages. "
222
222
  "For PDF use 'Text' for query. If provided file is CSV then run python_repl_ast tool and show first 5 rows."
223
+ "For images explain what you see on it."
224
+ "For excel show data from the sheet with name 'Sheet1'"
223
225
  )
224
226
 
225
227
  assistant = assistant(system_prompt=system_prompt_for_chatting_with_files)
@@ -22,6 +22,7 @@ from codemie_sdk.models.integration import (
22
22
  Integration,
23
23
  )
24
24
  from codemie_sdk.models.workflow import WorkflowCreateRequest, WorkflowMode, Workflow
25
+
25
26
  from codemie_test_harness.tests import PROJECT, autotest_entity_prefix
26
27
  from codemie_test_harness.tests.test_data.google_datasource_test_data import (
27
28
  GOOGLE_DOC_URL,
@@ -34,11 +35,13 @@ from codemie_test_harness.tests.utils.constants import TESTS_PATH
34
35
  from codemie_test_harness.tests.utils.datasource_utils import DataSourceUtils
35
36
  from codemie_test_harness.tests.utils.gitbud_utils import GitBudUtils
36
37
  from codemie_test_harness.tests.utils.integration_utils import IntegrationUtils
38
+ from codemie_test_harness.tests.utils.llm_utils import LLMUtils
37
39
  from codemie_test_harness.tests.utils.logger_util import setup_logger
38
40
  from codemie_test_harness.tests.utils.notification_utils import GmailUtils
39
41
  from codemie_test_harness.tests.utils.provider_utils import ProviderUtils
40
42
  from codemie_test_harness.tests.utils.search_utils import SearchUtils
41
43
  from codemie_test_harness.tests.utils.similarity_check import SimilarityCheck
44
+ from codemie_test_harness.tests.utils.user_utils import UserUtils
42
45
  from codemie_test_harness.tests.utils.workflow_utils import WorkflowUtils
43
46
  from codemie_test_harness.tests.utils.yaml_utils import (
44
47
  WorkflowYamlModel,
@@ -190,6 +193,16 @@ def search_utils(client):
190
193
  return SearchUtils(client)
191
194
 
192
195
 
196
+ @pytest.fixture(scope="session")
197
+ def user_utils(client):
198
+ return UserUtils(client)
199
+
200
+
201
+ @pytest.fixture(scope="session")
202
+ def llm_utils(client):
203
+ return LLMUtils(client)
204
+
205
+
193
206
  @pytest.fixture(scope="function")
194
207
  def git_integration(integration_utils):
195
208
  integration = integration_utils.create_integration(
@@ -434,6 +447,7 @@ def assistant(default_llm, assistant_utils):
434
447
  context=None,
435
448
  mcp_server=None,
436
449
  project_name: str = None,
450
+ description: str = None,
437
451
  system_prompt="You are a helpful integration test assistant",
438
452
  ):
439
453
  nonlocal created_assistant
@@ -461,6 +475,7 @@ def assistant(default_llm, assistant_utils):
461
475
  mcp_servers=[mcp_server] if mcp_server else [],
462
476
  system_prompt=system_prompt,
463
477
  project_name=project_name,
478
+ description=description,
464
479
  )
465
480
  return created_assistant
466
481
 
@@ -479,6 +494,7 @@ def workflow(workflow_utils):
479
494
  assistant_model=None,
480
495
  state_model=None,
481
496
  project_name=None,
497
+ description=None,
482
498
  ):
483
499
  workflow_name = workflow_name if workflow_name else get_random_name()
484
500
 
@@ -494,6 +510,7 @@ def workflow(workflow_utils):
494
510
  created_workflow = workflow_utils.create_workflow(
495
511
  workflow_name=workflow_name,
496
512
  workflow_type=WorkflowMode.SEQUENTIAL,
513
+ description=description,
497
514
  shared=True,
498
515
  workflow_yaml=yaml_content,
499
516
  project_name=project_name,