alita-sdk 0.3.188__tar.gz → 0.3.190__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.
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/PKG-INFO +1 -1
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/llm.py +3 -2
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/test_plan/test_plan_wrapper.py +105 -16
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk.egg-info/PKG-INFO +1 -1
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/pyproject.toml +1 -1
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/LICENSE +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/README.md +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/ado_analyse/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/ado_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/github_analyse/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/github_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/gitlab_analyse/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/gitlab_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/jira_analyse/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/jira_analyse/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/clients/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/clients/artifact.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/clients/client.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/clients/datasource.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/clients/prompt.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/agents/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/agents/xml_chat.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/assistant.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/chat_message_template.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/constants.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaBDDScenariosLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaCSVLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaConfluenceLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaDirectoryLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaDocxMammothLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaExcelLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaGitRepoLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaImageLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaJiraLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaQtestLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/AlitaTableLoader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/constants.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/indexer.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/interfaces/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/interfaces/kwextractor.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/interfaces/llm_processor.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/interfaces/loaders.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/interfaces/splitters.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/langraph_agent.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/mixedAgentParser.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/mixedAgentRenderes.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/retrievers/VectorstoreRetriever.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/retrievers/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/store_manager.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_exceptions.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/bdd_parser/feature_types.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/git.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/log.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/quota.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/state.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/vector.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/llms/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/llms/alita.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/llms/preloaded.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/toolkits/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/toolkits/application.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/toolkits/artifact.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/toolkits/datasource.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/toolkits/prompt.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/toolkits/subgraph.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/toolkits/tools.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/toolkits/vectorstore.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/agent.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/application.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/artifact.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/datasource.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/echo.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/function.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/indexer_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/loop.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/loop_output.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/mcp_server_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/pgvector_search.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/prompt.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/router.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/tools/vectorstore.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/utils/AlitaCallback.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/utils/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/utils/constants.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/utils/evaluate.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/utils/logging.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/utils/save_dataframe.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/utils/streamlit.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/utils/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/repos/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/repos/repos_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/test_plan/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/wiki/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/wiki/ado_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/work_item/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ado/work_item/ado_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/advanced_jira_mining/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/advanced_jira_mining/data_mining_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/azure_ai/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/azure_ai/search/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/azure_ai/search/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/base/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/base/tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/bitbucket/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/bitbucket/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/bitbucket/bitbucket_constants.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/bitbucket/cloud_api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/bitbucket/tools.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/browser/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/browser/crawler.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/browser/duck_duck_go_search.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/browser/google_search_rag.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/browser/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/browser/wiki.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/backend_reports_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/backend_tests_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/cancel_ui_test_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/carrier_sdk.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/create_ui_excel_report_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/create_ui_test_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/excel_reporter.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/lighthouse_excel_reporter.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/run_ui_test_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/tickets_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/tools.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/ui_reports_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/update_ui_test_schedule_tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/codeparser.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/constants.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_c.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cpp.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cs.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_go.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_hs.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_java.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_js.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_kt.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_py.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rb.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_registry.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rs.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_ts.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/models.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/sematic/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/sematic/base.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/sematic/markdown_chunker.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/sematic/proposal_chunker.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/sematic/statistical_chunker.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/aws/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/aws/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/azure/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/azure/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/gcp/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/gcp/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/k8s/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/cloud/k8s/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/code/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/code/linter/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/code/linter/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/code/loaders/codesearcher.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/code/sonar/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/code/sonar/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/confluence/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/confluence/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/confluence/loader.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/confluence/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/custom_open_api/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/custom_open_api/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/elastic/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/elastic/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/elitea_base.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/figma/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/figma/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/github/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/github/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/github/github_client.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/github/graphql_client_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/github/schemas.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/github/tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/github/tool_prompts.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gitlab/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gitlab/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gitlab/tools.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gitlab/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gitlab_org/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gitlab_org/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gmail/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gmail/gmail_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/gmail/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/google_places/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/google_places/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/jira/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/jira/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/keycloak/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/keycloak/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/llm/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/llm/img_utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/llm/llm_utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/localgit/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/localgit/local_git.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/localgit/tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/memory/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ocr/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ocr/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/ocr/text_detection.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/openapi/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/errors.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/executor/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/executor/code_environment.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/executor/code_executor.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/generator/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/generator/base.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/generator/code_cleaning.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/generator/code_validator.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/prompts.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/serializer.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/dataframe/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/statsmodels/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/statsmodels/base_stats.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/statsmodels/descriptive.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/statsmodels/hypothesis_testing.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pandas/statsmodels/regression.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/postman/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/postman/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/postman/postman_analysis.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pptx/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/pptx/pptx_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/qtest/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/qtest/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/qtest/tool.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/rally/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/rally/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/report_portal/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/report_portal/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/report_portal/report_portal_client.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/salesforce/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/salesforce/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/salesforce/model.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/servicenow/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/servicenow/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/servicenow/servicenow_client.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/sharepoint/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/sharepoint/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/sharepoint/authorization_helper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/sharepoint/utils.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/slack/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/slack/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/sql/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/sql/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/sql/models.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/testio/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/testio/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/testrail/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/testrail/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/utils/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/utils/content_parser.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/xray/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/xray/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/yagmail/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/yagmail/yagmail_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr/Zephyr.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr/rest_client.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr_enterprise/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr_enterprise/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr_enterprise/zephyr_enterprise.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr_scale/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr_scale/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr_squad/__init__.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr_squad/api_wrapper.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/zephyr_squad/zephyr_squad_cloud_client.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk.egg-info/SOURCES.txt +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk.egg-info/dependency_links.txt +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk.egg-info/requires.txt +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk.egg-info/top_level.txt +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/setup.cfg +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/tests/test_ado_analysis.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/tests/test_github_analysis.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/tests/test_gitlab_analysis.py +0 -0
- {alita_sdk-0.3.188 → alita_sdk-0.3.190}/tests/test_jira_analysis.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: alita_sdk
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.190
|
4
4
|
Summary: SDK for building langchain agents using resources from Alita
|
5
5
|
Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedjik@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
|
6
6
|
License-Expression: Apache-2.0
|
@@ -35,9 +35,10 @@ def create_llm_input_with_messages(
|
|
35
35
|
input_messages = []
|
36
36
|
|
37
37
|
# Add system message from prompt if available
|
38
|
-
if prompt
|
38
|
+
if prompt:
|
39
39
|
try:
|
40
|
-
|
40
|
+
# Format the system message using the prompt template or value and params
|
41
|
+
system_content = (prompt['template'] if 'template' in prompt else prompt['value']).format(**params) if params else prompt['template']
|
41
42
|
input_messages.append(SystemMessage(content=system_content))
|
42
43
|
except KeyError as e:
|
43
44
|
error_msg = f"KeyError in prompt formatting: {e}. Available params: {list(params.keys())}"
|
@@ -96,13 +96,53 @@ TestCaseAddModel = create_model(
|
|
96
96
|
suite_id=(int, Field(description="ID of the test suite to which test cases are to be added"))
|
97
97
|
)
|
98
98
|
|
99
|
+
|
100
|
+
test_steps_description = """Json or XML array string with test steps.
|
101
|
+
Json example: [{"stepNumber": 1, "action": "Some action", "expectedResult": "Some expectation"},...]
|
102
|
+
XML example:
|
103
|
+
<Steps>
|
104
|
+
<Step>
|
105
|
+
<StepNumber>1</StepNumber>
|
106
|
+
<Action>Some action</Action>
|
107
|
+
<ExpectedResult>Some expectation</ExpectedResult>
|
108
|
+
</Step>
|
109
|
+
...
|
110
|
+
</Steps>
|
111
|
+
"""
|
112
|
+
|
113
|
+
TestCasesCreateModel = create_model(
|
114
|
+
"TestCasesCreateModel",
|
115
|
+
create_test_cases_parameters=(str, Field(description=f"""Json array where each object is separate test case to be created.
|
116
|
+
Input format:
|
117
|
+
[
|
118
|
+
{'{'}
|
119
|
+
plan_id: str
|
120
|
+
suite_id: str
|
121
|
+
title: str
|
122
|
+
description: str
|
123
|
+
test_steps: str
|
124
|
+
test_steps_format: str
|
125
|
+
{'}'}
|
126
|
+
...
|
127
|
+
]
|
128
|
+
Where:
|
129
|
+
plan_id - ID of the test plan to which test cases are to be added;
|
130
|
+
suite_id - ID of the test suite to which test cases are to be added
|
131
|
+
title - Test case title;
|
132
|
+
description - Test case description;
|
133
|
+
test_steps - {test_steps_description}
|
134
|
+
test_steps_format - Format of provided test steps. Possible values: json, xml
|
135
|
+
"""))
|
136
|
+
)
|
137
|
+
|
99
138
|
TestCaseCreateModel = create_model(
|
100
139
|
"TestCaseCreateModel",
|
101
140
|
plan_id=(int, Field(description="ID of the test plan to which test cases are to be added")),
|
102
141
|
suite_id=(int, Field(description="ID of the test suite to which test cases are to be added")),
|
103
142
|
title=(str, Field(description="Test case title")),
|
104
143
|
description=(str, Field(description="Test case description")),
|
105
|
-
test_steps=(str, Field(description=
|
144
|
+
test_steps=(str, Field(description=test_steps_description)),
|
145
|
+
test_steps_format=(Optional[str], Field(description="Format of provided test steps. Possible values: json, xml", default='json'))
|
106
146
|
)
|
107
147
|
|
108
148
|
TestCaseGetModel = create_model(
|
@@ -217,31 +257,38 @@ class TestPlanApiWrapper(BaseToolApiWrapper):
|
|
217
257
|
logger.error(f"Error adding test case: {e}")
|
218
258
|
return ToolException(f"Error adding test case: {e}")
|
219
259
|
|
220
|
-
def
|
260
|
+
def create_test_cases(self, create_test_cases_parameters):
|
261
|
+
"""Creates new test cases in specified suite in Azure DevOps."""
|
262
|
+
test_cases = json.loads(create_test_cases_parameters)
|
263
|
+
return [self.create_test_case(
|
264
|
+
plan_id=test_case['plan_id'],
|
265
|
+
suite_id=test_case['suite_id'],
|
266
|
+
title=test_case['title'],
|
267
|
+
description=test_case['description'],
|
268
|
+
test_steps=test_case['test_steps'],
|
269
|
+
test_steps_format=test_case['test_steps_format']) for test_case in test_cases]
|
270
|
+
|
271
|
+
|
272
|
+
def create_test_case(self, plan_id: int, suite_id: int, title: str, description: str, test_steps: str, test_steps_format: str = 'json'):
|
221
273
|
"""Creates a new test case in specified suite in Azure DevOps."""
|
222
274
|
work_item_wrapper = AzureDevOpsApiWrapper(organization_url=self.organization_url, token=self.token.get_secret_value(), project=self.project)
|
223
|
-
|
275
|
+
if test_steps_format == 'json':
|
276
|
+
steps_xml = self.get_test_steps_xml(json.loads(test_steps))
|
277
|
+
elif test_steps_format == 'xml':
|
278
|
+
steps_xml = self.convert_steps_tag_to_ado_steps(test_steps)
|
279
|
+
else:
|
280
|
+
return ToolException("Unknown test steps format: " + test_steps_format)
|
281
|
+
work_item_json = self.build_ado_test_case(title, description, steps_xml)
|
224
282
|
created_work_item_id = work_item_wrapper.create_work_item(work_item_json=json.dumps(work_item_json), wi_type="Test Case")['id']
|
225
283
|
return self.add_test_case([{"work_item":{"id":created_work_item_id}}], plan_id, suite_id)
|
226
284
|
|
227
|
-
def build_ado_test_case(self, title, description,
|
285
|
+
def build_ado_test_case(self, title, description, steps_xml):
|
228
286
|
"""
|
229
287
|
:param title: test title
|
230
288
|
:param description: test description
|
231
|
-
:param
|
289
|
+
:param steps_xml: steps xml
|
232
290
|
:return: JSON with ADO fields
|
233
291
|
"""
|
234
|
-
steps_elem = ET.Element("steps")
|
235
|
-
|
236
|
-
for idx, step in enumerate(steps, start=1):
|
237
|
-
step_elem = ET.SubElement(steps_elem, "step", id=str(idx), type="Action")
|
238
|
-
action_elem = ET.SubElement(step_elem, "parameterizedString", isformatted="true")
|
239
|
-
action_elem.text = step["action"]
|
240
|
-
expected_elem = ET.SubElement(step_elem, "parameterizedString", isformatted="true")
|
241
|
-
expected_elem.text = step["expectedResult"]
|
242
|
-
|
243
|
-
steps_xml = ET.tostring(steps_elem, encoding="unicode")
|
244
|
-
|
245
292
|
return {
|
246
293
|
"fields": {
|
247
294
|
"System.Title": title,
|
@@ -250,6 +297,42 @@ class TestPlanApiWrapper(BaseToolApiWrapper):
|
|
250
297
|
}
|
251
298
|
}
|
252
299
|
|
300
|
+
def get_test_steps_xml(self, steps: dict):
|
301
|
+
steps_elem = ET.Element("steps")
|
302
|
+
for step in steps:
|
303
|
+
step_number = step.get("stepNumber", 1)
|
304
|
+
action = step.get("action", "")
|
305
|
+
expected_result = step.get("expectedResult", "")
|
306
|
+
steps_elem.append(self.build_step_element(step_number, action, expected_result))
|
307
|
+
return ET.tostring(steps_elem, encoding="unicode")
|
308
|
+
|
309
|
+
def convert_steps_tag_to_ado_steps(self, input_xml: str) -> str:
|
310
|
+
"""
|
311
|
+
Converts input XML from format:
|
312
|
+
<Steps><Step><Action>...</Action><ExpectedResult>...</ExpectedResult></Step></Steps>
|
313
|
+
to Azure DevOps test case format:
|
314
|
+
<steps><step id="1" type="Action">...</step>...</steps>
|
315
|
+
"""
|
316
|
+
input_root = ET.fromstring(input_xml)
|
317
|
+
steps_elem = ET.Element("steps")
|
318
|
+
for step_node in input_root.findall("Step"):
|
319
|
+
step_number = step_node.findtext("StepNumber", default="1")
|
320
|
+
action = step_node.findtext("Action", default="")
|
321
|
+
expected_result = step_node.findtext("ExpectedResult", default="")
|
322
|
+
steps_elem.append(self.build_step_element(step_number, action, expected_result))
|
323
|
+
return ET.tostring(steps_elem, encoding="unicode")
|
324
|
+
|
325
|
+
def build_step_element(self, step_number: str, action: str, expected_result: str) -> ET.Element:
|
326
|
+
"""
|
327
|
+
Creates an individual <step> element for Azure DevOps.
|
328
|
+
"""
|
329
|
+
step_elem = ET.Element("step", id=str(step_number), type="Action")
|
330
|
+
action_elem = ET.SubElement(step_elem, "parameterizedString", isformatted="true")
|
331
|
+
action_elem.text = action or ""
|
332
|
+
expected_elem = ET.SubElement(step_elem, "parameterizedString", isformatted="true")
|
333
|
+
expected_elem.text = expected_result or ""
|
334
|
+
return step_elem
|
335
|
+
|
253
336
|
def get_test_case(self, plan_id: int, suite_id: int, test_case_id: str):
|
254
337
|
"""Get a test case from a suite in Azure DevOps."""
|
255
338
|
try:
|
@@ -323,6 +406,12 @@ class TestPlanApiWrapper(BaseToolApiWrapper):
|
|
323
406
|
"args_schema": TestCaseCreateModel,
|
324
407
|
"ref": self.create_test_case,
|
325
408
|
},
|
409
|
+
{
|
410
|
+
"name": "create_test_cases",
|
411
|
+
"description": self.create_test_cases.__doc__,
|
412
|
+
"args_schema": TestCasesCreateModel,
|
413
|
+
"ref": self.create_test_cases,
|
414
|
+
},
|
326
415
|
{
|
327
416
|
"name": "get_test_case",
|
328
417
|
"description": self.get_test_case.__doc__,
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: alita_sdk
|
3
|
-
Version: 0.3.
|
3
|
+
Version: 0.3.190
|
4
4
|
Summary: SDK for building langchain agents using resources from Alita
|
5
5
|
Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedjik@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
|
6
6
|
License-Expression: Apache-2.0
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/ado_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/ado_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/github_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/github_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/gitlab_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/gitlab_analyse/api_wrapper.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/jira_analyse/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/community/analysis/jira_analyse/api_wrapper.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/chat_message_template.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/constants.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/document_loaders/utils.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/interfaces/kwextractor.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/interfaces/llm_processor.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py
RENAMED
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py
RENAMED
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/advanced_jira_mining/data_mining_wrapper.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/create_ui_excel_report_tool.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/lighthouse_excel_reporter.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/carrier/update_ui_test_schedule_tool.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/__init__.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter.py
RENAMED
File without changes
|
{alita_sdk-0.3.188 → alita_sdk-0.3.190}/alita_sdk/tools/chunkers/code/treesitter/treesitter_c.py
RENAMED
File without changes
|