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

@@ -16,6 +16,7 @@ from codemie_sdk.models.assistant import (
16
16
  from codemie_test_harness.tests import TEST_USER, PROJECT, LANGFUSE_TRACES_ENABLED
17
17
  from codemie_test_harness.tests.test_data.assistant_test_data import (
18
18
  EXCEL_TOOL_TEST_DATA,
19
+ DOCX_TOOL_TEST_DATA,
19
20
  )
20
21
  from codemie_test_harness.tests.test_data.file_test_data import (
21
22
  files_with_different_types_test_data,
@@ -432,3 +433,42 @@ def test_excel_tool_extended_functionality(
432
433
  )
433
434
 
434
435
  similarity_check.check_similarity(response, expected_response)
436
+
437
+
438
+ @pytest.mark.assistant
439
+ @pytest.mark.file
440
+ @pytest.mark.regression
441
+ @pytest.mark.smoke
442
+ @pytest.mark.parametrize("prompt,expected_response", DOCX_TOOL_TEST_DATA)
443
+ def test_docx_tool_extended_functionality(
444
+ assistant_utils, assistant, similarity_check, prompt, expected_response
445
+ ):
446
+ """
447
+ Test extended Docx tool functionality with various scenarios.
448
+
449
+ This test covers:
450
+ - Extract plain text using 'text' query
451
+ - Extract text with metadata using 'text_with_metadata' query
452
+ - Extract document structure using 'structure_only' query
453
+ - Extract tables using 'table_extraction' query
454
+ - Generate summary using 'summary' query
455
+ - Perform analysis with custom instructions using 'analyze' query
456
+ - Process specific pages '1-3' using pages parameter
457
+ - Process specific pages '1,5,10' using pages parameter
458
+ - Extract images using 'image_extraction' query
459
+ - Extract text with OCR from images using 'text_with_images' query
460
+
461
+ """
462
+ assistant_instance = assistant()
463
+
464
+ uploaded_file = assistant_utils.upload_file_to_chat(
465
+ FILES_PATH / "test_extended.docx"
466
+ )
467
+ file_url = uploaded_file.get("file_url")
468
+
469
+ # Send the prompt with the uploaded file
470
+ response = assistant_utils.ask_assistant(
471
+ assistant_instance, prompt, file_urls=[file_url]
472
+ )
473
+
474
+ similarity_check.check_similarity(response, expected_response)
@@ -7,7 +7,10 @@ from codemie_test_harness.tests.test_data.llm_test_data import MODEL_RESPONSES
7
7
  from codemie_test_harness.tests.utils.credentials_manager import CredentialsManager
8
8
  from codemie_test_harness.tests.utils.client_factory import get_client
9
9
  from codemie_test_harness.tests.utils.constants import test_project_name
10
- from codemie_test_harness.tests.utils.env_resolver import get_environment
10
+ from codemie_test_harness.tests.utils.env_resolver import (
11
+ get_environment,
12
+ EnvironmentResolver,
13
+ )
11
14
  from codemie_test_harness.tests.utils.pytest_utils import check_mark
12
15
 
13
16
 
@@ -63,6 +66,10 @@ def pytest_generate_tests(metafunc):
63
66
  @pytest.mark.assistant
64
67
  @pytest.mark.lite_llm
65
68
  @pytest.mark.regression
69
+ @pytest.mark.skipif(
70
+ EnvironmentResolver.is_sandbox(),
71
+ reason="Skipping this tests on sandbox environments",
72
+ )
66
73
  def test_assistant_with_different_models_in_lite_llm(
67
74
  llm_utils,
68
75
  lite_llm_integration,
@@ -197,9 +197,7 @@ COMMON_ICON_URLS = {
197
197
 
198
198
  ICON_URL = "https://raw.githubusercontent.com/epam-gen-ai-run/ai-run-install/main/docs/assets/ai/AQAUiTestGenerator.png"
199
199
 
200
- # ==================== EXCEL TOOL EXTENDED FUNCTIONALITY TEST DATA ====================
201
200
 
202
- # Test data for Excel tool extended functionality covering EPMCDME-7877 requirements
203
201
  EXCEL_TOOL_TEST_DATA = [
204
202
  pytest.param(
205
203
  "Analyze the data in test_extended.xlsx and extract information from visible sheets only",
@@ -594,3 +592,446 @@ EXCEL_TOOL_TEST_DATA = [
594
592
  id="comprehensive_analysis",
595
593
  ),
596
594
  ]
595
+
596
+ DOCX_TOOL_TEST_DATA = [
597
+ pytest.param(
598
+ "Extract plain text and show it",
599
+ """
600
+ Here is the extracted plain text from the document `test_extended.docx`:
601
+
602
+ ---
603
+
604
+ 1. **Getting Started with AI/RunTM CodeMie**
605
+
606
+ This section provides a brief description of what AI/RunTM CodeMie is and describes how to start using the AI/RunTM CodeMie tool as soon as possible.
607
+
608
+ **1.1 What is AI/RunTM CodeMie?**
609
+
610
+ AI/RunTM CodeMie is a sophisticated AI assistant tool tailored specifically for developers. AI/RunTM CodeMie is an innovative LLM-powered platform designed to help users address specific challenges and find solutions for their needs. Unlike conventional large language models (LLMs) such as ChatGPT, Bard, and Copilot, AI/RunTM CodeMie is engineered to support development processes more comprehensively. It integrates seamlessly with essential development tools including Git, Jira, Confluence, and various search engines. This integration empowers AI/RunTM CodeMie to go beyond the capabilities of a standard chatbot, enabling it to manage Jira issues, devise appropriate implementations, and generate pull requests.
611
+
612
+ AI/RunTM CodeMie leverages AI to automate coding tasks, reduce technical debt, streamline code reviews and legacy application migrations, enhance onboarding, improve information access and analysis, optimize call center operations, ensure consistent customer support, maintain data security, and analyze market sentiment, ultimately enhancing productivity and reducing costs. The development of such a powerful assistant necessitates extensive customization and fine-tuning. The following sections will delve into the intricate adjustments and configurations required to harness the full potential of AI/RunTM CodeMie.
613
+
614
+ **1.2 What Are AI/RunTM CodeMie Capabilities?**
615
+
616
+ AI/RunTM CodeMie efficiently addresses numerous tasks across varying difficulty levels. Below is an overview of AI/RunTM CodeMie’s key capabilities:
617
+
618
+ - **Comprehensive SDLC Smart Assistance and Assistants Library:** AI/RunTM CodeMie offers robust smart assistance across all phases of the SDLC process by leveraging a variety of AI assistant roles, such as Business Analyst (BA), Developer, Quality Assurance (QA), Project Manager (PM), and more. These pre-built AI assistants enhance performance and productivity, automate routine work, significantly reducing process costs and accelerating the software development cycle. The platform comes with a comprehensive library of pre-built AI assistants tailored to various roles within the SDLC to suit the diverse needs within a project.
619
+
620
+ - **Assistants Constructor:** Provides the flexibility to create personalized assistants equipped with specific tools and abilities tailored to your project's needs.
621
+
622
+ - **Indexing and Data Management:** AI/RunTM CodeMie provides options for data indexing, including the ability to monitor the current progress and status of the indexing process, perform incremental or full reindexing, and manage indexed data sources effectively. Supported data sources include Jira, Confluence, various file formats (PDF, PPT, Excel, etc.), and Git.
623
+
624
+ - **Support for Multi-Agent Workflows:** AI/RunTM аCodeMie supports multi-agent workflows, allowing multiple AI assistants to collaborate seamlessly on complex tasks and workflows. This capability covers use cases where different agents need to interact and share information to achieve a common goal, enhancing coordination and efficiency across various phases of the SDLC.
625
+
626
+ - **Ease of Use for Beginners:** Simple use cases for newcomers include code review, newcomer training, and user story creation. These require minimal setup, such as configuring your Git token for code-related tasks or your Jira token for project management tasks.
627
+
628
+ - **Extensive Library of Tools:** AI/RunTM CodeMie includes a wide array of tools to support various aspects of software development and project management:
629
+ - **Version Control Systems (VCS):** Tools for managing and tracking changes in the codebase, such as Git.
630
+ - **Codebase Tools:** Tools for code review, static code analysis, and automated code formatting.
631
+ - **Research Tools:** Tools to assist in gathering and organizing research data and documentation.
632
+ - **Cloud Tools:** Integration with major cloud providers for deployment, monitoring, and management of cloud resources.
633
+ - **Project Management Tool (Jira:** For project management, task tracking, and issue tracking, **Confluence:** For documentation, knowledge sharing, and collaboration.)
634
+ - **Open API:** Integration with various open APIs to extend functionality and connect with other services.
635
+ - **Notification Tools:** Tools for sending notifications and alerts via email, chat, or other communication channels.
636
+ - **Data Management Tools:** Tools for querying Elasticsearch indexes.
637
+ - **Git Access Management:** Keycloak
638
+ - **Plugin Open API Notification File Management Data Management Quality Assurance**
639
+
640
+ There is no priority or sequential system in place. Everything depends on the given instructions. It is possible to instruct the model to use a specific data source for a particular use case or provide a description for the data source when it is created. Data source descriptions are provided to the model so it can understand better use cases for it.
641
+
642
+ (The text continues with further details that describe how to utilize specific features and integration steps for various contexts and platforms including Keycloak, SonarQube, SQL, Telegram, Azure, and much more.)
643
+
644
+ ---
645
+
646
+ Above is a portion of the extracted text. It seems this document provides an in-depth introduction and guide to using AI/RunTM CodeMie, a tool for developers, detailing its capabilities, tools, integrations, and operational instructions. Let me know if you need more specific details or further assistance!
647
+ """,
648
+ id="text",
649
+ ),
650
+ pytest.param(
651
+ "Extract text with metadata and show it",
652
+ """
653
+ ### Extracted Text with Metadata from *test_extended.docx*
654
+
655
+ **Metadata:**
656
+ - **Title:** *Not Specified*
657
+ - **Author:** *Not Specified*
658
+ - **Created Date:** 2025-09-26T09:33:00+00:00
659
+ - **Modified Date:** 2025-09-26T09:36:00+00:00
660
+ - **Keywords:** *Not Specified*
661
+ - **Subject:** *Not Specified*
662
+ - **Category:** *Not Specified*
663
+ - **Paragraph Count:** 835
664
+ - **Table Count:** 2
665
+ - **Section Count:** 1
666
+ - **Word Count:** 7,434
667
+
668
+ **Extracted Text Snippet:**
669
+ The document primarily includes sections about AI/Run™ CodeMie, describing its capabilities, features, and integrations, as well as detailed guides for setup and utilization. Below is a brief example of the content:
670
+
671
+ ---
672
+ #### Chapter Excerpts:
673
+ **1. Getting Started with AI/Run™ CodeMie**
674
+ - Introduction to AI/Run™ CodeMie and its functionalities.
675
+ - Highlights include automating coding tasks, reducing technical debt, optimizing customer support, and managing tools like Git, Jira, and Confluence.
676
+
677
+ **1.2 What Are AI/Run™ CodeMie Capabilities?**
678
+ - Comprehensive SDLC Smart Assistance and Assistants Library.
679
+ - Tools for various applications such as version control systems, cloud integration, and multi-agent workflows.
680
+
681
+ **2.9 Tool Integration Overview**
682
+ - Detailed steps to integrate Keycloak, SonarQube, SQL databases, Telegram, Azure, GCP, AWS, Kubernetes, and more.
683
+
684
+ **3. How to Work With Assistants**
685
+ - Insights into creating assistants, using templates, and customization options like workflows, tools, and specific roles.
686
+
687
+ ---
688
+
689
+ If you need specific sections, tables, or a detailed breakdown, let me know!
690
+ """,
691
+ id="text_with_metadata",
692
+ ),
693
+ pytest.param(
694
+ "Extract document structure",
695
+ """
696
+ ### Document Structure for *test_extended.docx*
697
+
698
+ #### Main Sections and Subsections:
699
+
700
+ 1. **Getting Started with AI/RunTM CodeMie**
701
+ - **1.1 What is AI/RunTM CodeMie?**
702
+ - **1.2 What Are AI/RunTM CodeMie Capabilities?**
703
+ - **1.3 Meet the AI/Run FAQ Assistant**
704
+ - **1.4 Help center**
705
+
706
+ 2. **Tools and Integrations Overview**
707
+ - **2.9 Tool Integration Overview**
708
+ - *2.9.1 Keycloak*
709
+ - *2.9.2 SonarQube*
710
+ - *2.9.5 SQL*
711
+ - *2.9.6 Telegram*
712
+ - *2.9.7 Azure*
713
+ - *2.9.8 GCP*
714
+ - *2.9.9 AWS*
715
+ - *2.9.10 Kubernetes*
716
+ - *2.9.11 Webhook*
717
+ - *2.9.12 HTML Preview*
718
+ - *2.9.13 Elastic*
719
+
720
+ 3. **MCP Overview**
721
+ - **2.11 Adding an MCP Server**
722
+ - **2.11 Using MCP Tools in Assistants**
723
+
724
+ 4. **Data Sources and Assistant Tools**
725
+ - **2.12 What is the difference between a Data Source and an Assistant Tool in CodeMie?**
726
+ - **2.12 Administrative tools overview**
727
+ - **2.13 Processing Pictures**
728
+
729
+ 5. **How to Work With Assistants**
730
+ - **3.1 Assistant Templates**
731
+ - **3.2 Create Assistant From a Template**
732
+ - **3.9 Restore System Instructions**
733
+
734
+ ---
735
+
736
+ Let me know if you'd like further details extracted from specific sections or explored further!
737
+ """,
738
+ id="structure_only",
739
+ ),
740
+ pytest.param(
741
+ "Extract tables",
742
+ """
743
+ ### Extracted Tables from *test_extended.docx*
744
+
745
+ #### Table 1: Tools and Integrations Overview
746
+ | **Tools Name** | **Integration Required** | **Integration Name** |
747
+ |----------------------------------------|--------------------------|-----------------------|
748
+ | Project Management => Jira | Yes | Jira |
749
+ | Git (with operations) | Yes | Git |
750
+ | Project Management => Confluence | Yes | Confluence |
751
+ | Cloud => Kubernetes | Yes | Kubernetes |
752
+ | Cloud => AWS | Yes | AWS |
753
+ | Cloud => GCP | Yes | GCP |
754
+ | Access Management => Keycloak | Yes | Keycloak |
755
+ | Cloud => Azure | Yes | Azure |
756
+ | Cloud => AzureDevOps | Yes | AzureDevOps |
757
+ | Data Management => SQL | Yes | SQL |
758
+ | Notification => Email | Yes | Email |
759
+ | Codebase Tools => Sonar | Yes | Sonar |
760
+ | Research => Google Searches, Places | No | ---- |
761
+ | Quality Assurance => ZephyrCloud, Squad| Yes | ZephyrCloud, Squad |
762
+
763
+ > **Note**: This table lists numerous tools and integrations required, along with operations (e.g., Git, Jira, Kubernetes). Additional details (e.g., various Git operations such as branch creation, pull requests) are included in raw text.
764
+
765
+ ---
766
+
767
+ #### Table 2: Assistant Overview
768
+ | **Name** | **Description/Integrated Tools** | **Assistant’s Tools** |
769
+ |-------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------|
770
+ | Epic/User Story Compose | Analyzes and generates requirements for the project. Note: Uses deprecated Jira tool. | Jira Issue Management |
771
+ | Release Manager Assistant | Supports release processes, generates notes, closes tickets. | Git, VCS (GitLab), Jira |
772
+ | Junior Python Langchain Developer | Develops tools within Langchain framework. | Git, Jira |
773
+ | Junior JavaScript Vue Developer | Develops high-quality, responsive web applications using Vue.js. | Git, Jira |
774
+ | Design to Code Developer | Translates designs into responsive web apps, optimizes performance. | VCS (GitLab), File Management |
775
+ | QA Checklist Assistant | Generates QA checklists. | Jira, Confluence |
776
+ | QA Test Case Assistant | Generates test cases based on specifications. | Jira, Confluence |
777
+ | Code Reviewer | Reviews Git pull requests and creates comments. | Git Tools |
778
+ | Cloud Assistant | Prebuilt assistant to help with cloud system interactions. | Cloud Tools (Kubernetes, AWS, GCP, Azure) |
779
+ | ChatGPT | Acts as a simple chatbot. | None |
780
+ | CSV Analyst | Analyzes CSV files. | None |
781
+
782
+ > **Note**: This table outlines assistant types, their roles, and tools integrated. Additional assistants (e.g., CodeMie, Cloud) appear in subsequent rows.
783
+
784
+ ---
785
+
786
+ If you need further details or specific tables expanded, let me know!
787
+ """,
788
+ id="table_extraction",
789
+ ),
790
+ pytest.param(
791
+ "Generate summary",
792
+ """
793
+ ### Summary of *test_extended.docx*
794
+
795
+ The document serves as a comprehensive guide to **AI/Run™ CodeMie**, an advanced AI assistant platform aimed at optimizing software development processes. It details the platform's diverse capabilities, including:
796
+
797
+ - **SDLC Assistance**: Smart tools for every phase of the Software Development Life Cycle.
798
+ - **Tool Integrations**: Seamless integration with platforms like Git, Jira, Confluence, AWS, GCP, Kubernetes, and SonarQube.
799
+ - **Data Indexing**: Simplifying data access and management.
800
+ - **Multi-Agent Workflows**: Facilitating efficient team collaboration.
801
+
802
+ Key topics include:
803
+
804
+ 1. **Administrative Tools**:
805
+ - Overview of management features and functionalities.
806
+ - Processes for onboarding and creating assistants using templates or custom configurations.
807
+
808
+ 2. **Integrations**:
809
+ - Detailed integration steps for platforms like AWS, Kubernetes, SQL databases, and more.
810
+
811
+ 3. **Features**:
812
+ - MCP server integration.
813
+ - Automated workflows (e.g., CRON scheduling).
814
+ - Email notifications and FAQ support.
815
+
816
+ The document emphasizes enhancing productivity, collaboration, and streamlining development workflows for developers and teams.
817
+
818
+ Let me know if you need further details or additional analysis!
819
+ """,
820
+ id="summary",
821
+ ),
822
+ pytest.param(
823
+ "Perform a sentiment analysis of the document to determine whether the language is positive, neutral, or negative.",
824
+ """
825
+ ### Sentiment Analysis of *test_extended.docx*
826
+
827
+ #### **Sentiment**: Positive
828
+ The text reflects a positive tone, emphasizing the platform's benefits, extensive integrations, and potential to enhance productivity and efficiency in software development. The language conveys enthusiasm and confidence in AI/Run™ CodeMie's role in streamlining workflows.
829
+
830
+ #### **Language**: English
831
+ The document is written entirely in English.
832
+
833
+ #### **Readability Score**: 6.0
834
+ This indicates that the document is relatively easy to read and accessible to a wide audience, likely targeting professionals familiar with software development concepts.
835
+
836
+ #### **Pages Analyzed**: All
837
+ The sentiment analysis covered the entire document for a comprehensive understanding.
838
+
839
+ If you need further breakdowns or alternative types of analysis, let me know!
840
+ """,
841
+ id="analyze",
842
+ ),
843
+ pytest.param(
844
+ "Extracty text from specific pages '1-3' and show it",
845
+ """
846
+ ### Extracted Plain Text from Pages 1–3 of *test_extended.docx*
847
+
848
+ #### **1. Getting Started with AI/Run™ CodeMie**
849
+ This section introduces AI/Run™ CodeMie, detailing its purpose and how to immediately start using the platform.
850
+
851
+ **1.1 What Is AI/Run™ CodeMie?**
852
+ AI/Run™ CodeMie is an AI assistant tailored for developers, providing solutions for software challenges and integrating with tools like Git, Jira, Confluence, and search engines. Unlike traditional AI models (e.g., ChatGPT, Bard, Copilot), AI/Run™ CodeMie goes beyond basic chatbot functionalities by automating tasks, managing Jira issues, generating pull requests, reducing technical debt, and enhancing data security and productivity.
853
+
854
+ **1.2 What Are AI/Run™ CodeMie’s Capabilities?**
855
+ Highlights include:
856
+ - **SDLC Assistance**: Pre-built assistants tailored for roles such as Business Analyst, QA, Developer, and Project Manager.
857
+ - **Assistants Constructor**: Build customized AI assistants with specific tools for project needs.
858
+ - **Data Indexing**: Supports incremental data indexing from Jira, Confluence, Git, and various file formats.
859
+ - **Multi-Agent Workflows**: Enables collaboration among AI assistants for complex tasks.
860
+
861
+ Tools included: version control, code review, cloud deployments, project management (e.g., Jira, Confluence), notifications, and data management tools like Elasticsearch.
862
+
863
+ **1.3 Meet the AI/Run FAQ Assistant**
864
+ To start using AI/Run™ CodeMie:
865
+ - Log in via SSO.
866
+ - Access the FAQ assistant to start conversations and explore onboarding features.
867
+
868
+ **1.4 Help Center**
869
+ The Help Center provides resources for assistance, learning, and updates, including:
870
+ - AI Assistants for FAQ, feedback, and real-time support.
871
+ - User guides and video tutorials.
872
+ - Tracking product updates.
873
+
874
+ ---
875
+
876
+ #### **2.9 Tool Integration Overview**
877
+ This section explains how to integrate tools with AI/Run™ CodeMie, using **Keycloak** as an example.
878
+
879
+ **Keycloak Integration Steps**:
880
+ 1. Select the realm in Keycloak.
881
+ 2. Create or use an existing client (e.g., admin-cli).
882
+ 3. Configure service account roles.
883
+ 4. Copy the client secret from credentials.
884
+ 5. Configure Keycloak settings in AI/Run™ CodeMie:
885
+ - Base URL
886
+ - Realm
887
+ - Client ID
888
+ - Client Secret
889
+
890
+ Assistants can then be created with access to Keycloak for specific projects, enabling enhanced system integrations.
891
+
892
+ ---
893
+
894
+ Let me know if you need further processing for other pages or specific sections within this extracted content!
895
+ """,
896
+ id="text_pages_1_3",
897
+ ),
898
+ pytest.param(
899
+ "Extract text from specific pages '1,5,10' and show it",
900
+ """
901
+ ### Extracted Text from Specific Pages (1, 5, 10) of *test_extended.docx*
902
+
903
+ ---
904
+
905
+ ### **Page 1: Introduction to AI/Run™ CodeMie**
906
+ #### **1. Getting Started with AI/Run™ CodeMie**
907
+ This section introduces AI/Run™ CodeMie, detailing how to get started quickly.
908
+
909
+ **1.1 What is AI/Run™ CodeMie?**
910
+ AI/Run™ CodeMie is an AI-driven assistant designed for developers, integrating key tools like Git, Jira, Confluence, etc., to address challenges effectively. It goes beyond standard use-cases seen in tools like ChatGPT or Copilot, allowing:
911
+ - Jira issue tracking.
912
+ - Pull request generation and implementation recommendations.
913
+ - Legacy migration and technical debt reduction.
914
+ - Enhanced onboarding and productivity optimization.
915
+
916
+ AI/Run™ CodeMie offers automation on coding tasks, system integrations, and improved customer support, among other features.
917
+
918
+ **1.2 Capabilities of AI/Run™ CodeMie**
919
+ Key highlights include:
920
+ - **Comprehensive SDLC Assistance**: Pre-built assistants like QA analysts, developers, PMs, etc.
921
+ - **Assistants Constructor**: Build custom assistants as per project requirements.
922
+ - **Data Indexing**: Manage incremental or full indexing from Jira, Confluence, Git repositories, and other formats.
923
+ - **Multi-Agent Workflows**: Support for collaborative tasks among multiple AI agents.
924
+ - **Extensive Tool Library**: Includes tools for cloud deployment, project management, quality assurance, and notifications.
925
+
926
+ **1.3 Meet the FAQ Assistant**
927
+ Provides onboarding solutions and covers general queries, helping users adapt to the platform faster.
928
+
929
+ ---
930
+
931
+ ### **Page 5: Integration Examples**
932
+ #### **2.9.5 SQL Database**
933
+ AI/Run™ CodeMie integrates seamlessly with SQL databases (e.g., PostgreSQL or MySQL).
934
+ **Steps to Integrate SQL:**
935
+ 1. Navigate to the “Integrations” tab.
936
+ 2. Provide necessary credentials (e.g., database name, username, password).
937
+ 3. Modify or create an assistant with SQL access to perform table operations or database queries.
938
+
939
+ #### **2.9.6 Telegram Messenger**
940
+ Since version 0.12.0, AI/Run assistants can now operate with Telegram for bot manipulation and real-time chat interactions:
941
+ **Steps to Set Up Telegram Bot Integration**:
942
+ 1. Create a bot through Telegram’s BotFather.
943
+ 2. Generate a bot token and apply it during integration setup within AI/Run™ CodeMie.
944
+ 3. Add Telegram as a project-level integration for assistants.
945
+
946
+ ---
947
+
948
+ ### **Page 10: Advanced Integrations**
949
+ #### **Webhook Integration**
950
+ AI/Run™ CodeMie assistants support webhook-based triggers, facilitating automation from external systems (e.g., customer support or pull request generation).
951
+ **Key Steps**:
952
+ 1. Enable webhook triggers for assistants/workflows/datasources.
953
+ 2. Provide required credentials such as Webhook ID and Secure Access Key during integration setup.
954
+
955
+ Applications include:
956
+ - Trigger assistant responses as pull requests are created.
957
+ - Notify users through real-time workflows for Jira updates.
958
+ - Automate support assistants for helpdesk ticket creation.
959
+
960
+ ---
961
+
962
+ Let me know if you need further assistance or more pages analyzed!
963
+ """,
964
+ id="text_pages_1_5_10",
965
+ ),
966
+ pytest.param(
967
+ "Extract images",
968
+ """
969
+ ### Extracted Image from *test_extended.docx*
970
+
971
+ #### Image 1:
972
+ - **Format**: PNG
973
+ - **Description**: An image depicting **capability configurations**, particularly configurations related to client authentication and authorization flows.
974
+ - **Text Content Associated**:
975
+ ```
976
+ ### Capability config
977
+
978
+ **Client authentication**
979
+ - On
980
+
981
+ **Authorization**
982
+ - Off
983
+
984
+ **Authentication flow**
985
+ - **Standard flow** ✅
986
+ - **Direct access grants** ✅
987
+ - Implicit flow ☐
988
+ - **Service accounts roles** ✅
989
+ - OAuth 2.0 Device Authorization Grant ☐
990
+ - OIDC CIBA Grant ☐
991
+ ```
992
+
993
+ The image encompasses these configurations, potentially used for documenting integration setups.
994
+
995
+ - **Position**:
996
+ - **Page**: 1
997
+ - **Coordinates**: Top-left corner
998
+
999
+ Let me know if you'd like to download the image or process additional queries!
1000
+ """,
1001
+ id="image_extraction",
1002
+ ),
1003
+ pytest.param(
1004
+ "Extract and show the text with OCR from images",
1005
+ """
1006
+ ### Extracted Text with OCR from Images in *test_extended.docx*
1007
+
1008
+ #### **Image 1: Capability Configuration**
1009
+ The image contains text related to client authentication, authorization settings, and available flows. Below is the OCR-extracted text:
1010
+
1011
+ ```
1012
+ **Capability config**
1013
+
1014
+ - **Client authentication**
1015
+ - 🟦 On
1016
+
1017
+ - **Authorization**
1018
+ - ⚪ Off
1019
+
1020
+ - **Authentication flow**
1021
+ - ☑️ Standard flow
1022
+ - ☑️ Direct access grants
1023
+ - ☐ Implicit flow
1024
+ - ☑️ Service accounts roles
1025
+ - ☐ OAuth 2.0 Device Authorization Grant
1026
+ - ☐ OIDC CIBA Grant
1027
+ ```
1028
+
1029
+ This image primarily highlights authentication configurations, flow types, and the enabling/disabling of various features.
1030
+
1031
+ ---
1032
+
1033
+ Let me know if you'd like to perform further analysis or extract more details!
1034
+ """,
1035
+ id="text_with_images",
1036
+ ),
1037
+ ]
@@ -1341,3 +1341,19 @@ class CredentialsManager:
1341
1341
  if cred.key == "api_key":
1342
1342
  cred.value = "wrong_key"
1343
1343
  return credentials
1344
+
1345
+ @staticmethod
1346
+ def invalid_ado_credentials() -> List[CredentialValues]:
1347
+ credentials = CredentialsManager.azure_devops_credentials()
1348
+ for cred in credentials:
1349
+ if cred.key == "personal_access_token":
1350
+ cred.value = "wrong_token"
1351
+ return credentials
1352
+
1353
+ @staticmethod
1354
+ def invalid_git_credentials() -> List[CredentialValues]:
1355
+ credentials = CredentialsManager.gitlab_credentials()
1356
+ for cred in credentials:
1357
+ if cred.key == "token":
1358
+ cred.value = "wrong_token"
1359
+ return credentials
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: codemie-test-harness
3
- Version: 0.1.171
3
+ Version: 0.1.172
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.171)
16
+ Requires-Dist: codemie-sdk-python (==0.1.172)
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)
@@ -23,7 +23,7 @@ codemie_test_harness/tests/assistant/default_integrations/__init__.py,sha256=47D
23
23
  codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool.py,sha256=FUi0r1TTG5Hh4pVQosNtSmBRNJhKN_sSfavHjAm51KQ,7554
24
24
  codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_kit.py,sha256=l2wwk9TKDfSuGKGAJVhhwkVhL1cn74wOxPr_gdbSZDQ,7825
25
25
  codemie_test_harness/tests/assistant/default_integrations/test_default_integrations_for_tool_with_datasource.py,sha256=K8wzK48e7V92kLt_BKsXyO_K_ud0VTUHrnvFFoIxGj8,10140
26
- codemie_test_harness/tests/assistant/test_assistants.py,sha256=E6kCzWBrNvx1GKvxzSsxm-vEHFkHFVVCGoXHdV8szKc,13968
26
+ codemie_test_harness/tests/assistant/test_assistants.py,sha256=pXif1RLZ6Zbog9ovoKptX6tzLtGlNaMdZ5m_3BnvrV8,15371
27
27
  codemie_test_harness/tests/assistant/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
28
  codemie_test_harness/tests/assistant/tools/access_management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  codemie_test_harness/tests/assistant/tools/access_management/test_keycloak_tool.py,sha256=YKPTYO9qI72-RtkaPSONRxvusKNJ3ksVPjkD3xk7qCM,740
@@ -81,7 +81,7 @@ codemie_test_harness/tests/integrations/user/test_default_integrations.py,sha256
81
81
  codemie_test_harness/tests/integrations/user/test_user_integrations.py,sha256=lGOoyGyKby1vOvXbz9de-PfhS0eUEX6vS7tg6vixtEE,8120
82
82
  codemie_test_harness/tests/llm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
83
83
  codemie_test_harness/tests/llm/assistants/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
84
- codemie_test_harness/tests/llm/assistants/test_lite_llm.py,sha256=3wIasgmD-l2cEnLcYZyBi4DaIHlfuLDjxJnKoqwvklY,3493
84
+ codemie_test_harness/tests/llm/assistants/test_lite_llm.py,sha256=Ya4t3t7JES7BHfSYbojwx_lNaKalZPq0rsZf257v1aM,3646
85
85
  codemie_test_harness/tests/llm/assistants/test_llm.py,sha256=rpS-rsRqR13HPKPDeT_PvgnlSg1_KtbXTAzQpfShL8E,3531
86
86
  codemie_test_harness/tests/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
87
87
  codemie_test_harness/tests/providers/test_providers_endpoints.py,sha256=SfZVCaYcsk_mG2b9zVu7w2wOY54loQHdmRS8eK5PNo4,8120
@@ -103,7 +103,7 @@ codemie_test_harness/tests/test_data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeu
103
103
  codemie_test_harness/tests/test_data/ado_test_plan_tools_test_data.py,sha256=Al5u4HNfrcoj-b072uEGsqUqjKqwXLGJXKQ0QeJT3PI,5778
104
104
  codemie_test_harness/tests/test_data/ado_wiki_tools_test_data.py,sha256=xvgEja5vE0l41sP4fE0stdFLQ0M201FWynOCEcRYufE,3188
105
105
  codemie_test_harness/tests/test_data/ado_work_item_tools_test_data.py,sha256=MHou6QGjufyX5t1oexnq2Y4UCjlE17eeyMuIz6Ml62s,5693
106
- codemie_test_harness/tests/test_data/assistant_test_data.py,sha256=2He6dIPxMLaFC2Ls56QoNHC7tJVchJ5KH4p94FCrAkU,24244
106
+ codemie_test_harness/tests/test_data/assistant_test_data.py,sha256=XYB0GN6_T6OSIWLDQBGFVbeFDOTxxD6kOae88VIxTPE,53505
107
107
  codemie_test_harness/tests/test_data/cloud_tools_test_data.py,sha256=SWz-VTNcWteCvVupl2xksv4eEFkmtWMdRIqrZxjpFYk,6200
108
108
  codemie_test_harness/tests/test_data/codebase_tools_test_data.py,sha256=xbnIlDbiZTibGekrodmhO7bOg7kilsoKSlfHAhcmyIQ,3312
109
109
  codemie_test_harness/tests/test_data/data_management_tools_test_data.py,sha256=e5Cfqza3GUE3hRElm1bxgQO4PaN-jOiNd38OX9299Kc,2793
@@ -143,6 +143,7 @@ codemie_test_harness/tests/test_data/files/test.vtt,sha256=OTESV-myaR4TwzGddSBXE
143
143
  codemie_test_harness/tests/test_data/files/test.xlsx,sha256=J1OprxIMhkoGQRhuOh8oTrbj2pa8VKlSdqp9R0ejgBI,4804
144
144
  codemie_test_harness/tests/test_data/files/test.xml,sha256=QVn0coF-83PYoGyOZNVEZHW2oX2opIHh7aD6TwBW80s,352
145
145
  codemie_test_harness/tests/test_data/files/test.yaml,sha256=3NDQyzwkRM5d6eCYMScNMbCqZ0JnjU1T8WcRemuqsc0,392
146
+ codemie_test_harness/tests/test_data/files/test_extended.docx,sha256=8TqjOxgO6ODY82DAayEqFm8D8yV6haoaKSzP-0Z5gl8,112227
146
147
  codemie_test_harness/tests/test_data/files/test_extended.xlsx,sha256=_ZjBj1E_uEuWHWGO5x0BO0E3-kQWqSyWi9vG9n2JZpQ,10031
147
148
  codemie_test_harness/tests/test_data/git_tools_test_data.py,sha256=7U05vLqkh5uJ0l_KJeHis549id1Of99K0jCsWOb0nXM,8485
148
149
  codemie_test_harness/tests/test_data/google_datasource_test_data.py,sha256=fhMJVTU0udINKtBQ750c_c279NzibGiZumnIaCPLtBo,511
@@ -237,7 +238,7 @@ codemie_test_harness/tests/utils/base_utils.py,sha256=eDUBV7kj4X-aSVOB7YKHfO9fqP
237
238
  codemie_test_harness/tests/utils/client_factory.py,sha256=xGta0ZaVYzWfwJ4cu3f89KkGc_R5Bq-9lqnhr57x_2w,972
238
239
  codemie_test_harness/tests/utils/constants.py,sha256=ZNyM5wERHFN-c8TCvBcxCdFf0As9TOpr22YvLCMHArE,1116
239
240
  codemie_test_harness/tests/utils/conversation_utils.py,sha256=SWj6TBWOQoX5Yh6Wk63yHQFveRXgK1mpLb3PUKAa57A,648
240
- codemie_test_harness/tests/utils/credentials_manager.py,sha256=oR3HngDhrrsCCbNZ7AAIu-dKq2tcSA0N0eWqZmZPr9E,52282
241
+ codemie_test_harness/tests/utils/credentials_manager.py,sha256=sqzJUekCwo56zvOOm4BdHvyHPPzvY9aI4nWp1GoLwCQ,52866
241
242
  codemie_test_harness/tests/utils/datasource_utils.py,sha256=_jx1IrRR5rmQxXsal5z4nwX9vgupdVdgNL0vH-2nJ8A,12685
242
243
  codemie_test_harness/tests/utils/env_resolver.py,sha256=25776Aq9oIDcDzGtfFs07lj7eldeFgmsocxeS3RUclE,4280
243
244
  codemie_test_harness/tests/utils/env_utils.py,sha256=9tyVgxKfYqdtSoo9dRTScOZWjAUm82_65JjaKggcwCg,3999
@@ -361,7 +362,7 @@ codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow/__init__.
361
362
  codemie_test_harness/tests/workflow/virtual_assistant_tools/servicenow/test_workflow_with_servicenow_tools.py,sha256=vq6tucNBxiNIQSmIj_pYiiPm0lipU9X3kzeCd6xEbRM,966
362
363
  codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
363
364
  codemie_test_harness/tests/workflow/virtual_assistant_tools/vcs/test_workflow_with_vcs_tools.py,sha256=uD2qs361j6Egp4UumfoQ4gC24-NioXfiW0IF53N9hVA,1175
364
- codemie_test_harness-0.1.171.dist-info/METADATA,sha256=HIG_F4X1B4ZHlYCf20ye9Crzn9Xee5HAR6PJPlTkOnA,8998
365
- codemie_test_harness-0.1.171.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
366
- codemie_test_harness-0.1.171.dist-info/entry_points.txt,sha256=n98t-EOM5M1mnMl_j2X4siyeO9zr0WD9a5LF7JyElIM,73
367
- codemie_test_harness-0.1.171.dist-info/RECORD,,
365
+ codemie_test_harness-0.1.172.dist-info/METADATA,sha256=ypifV-_rZmtwhVmSk_itHkr3iqgF9JxAA6Sqr890_Hs,8998
366
+ codemie_test_harness-0.1.172.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
367
+ codemie_test_harness-0.1.172.dist-info/entry_points.txt,sha256=n98t-EOM5M1mnMl_j2X4siyeO9zr0WD9a5LF7JyElIM,73
368
+ codemie_test_harness-0.1.172.dist-info/RECORD,,