From 12ed1465109c74ef4a41c863392aa5e189991154 Mon Sep 17 00:00:00 2001 From: ionmincu Date: Mon, 7 Apr 2025 15:28:59 +0300 Subject: [PATCH] feat(tests): tests pipeline --- .github/workflows/langchain_ci.yml | 4 +++ .github/workflows/test.yml | 10 ++++--- .vscode/settings.json | 2 +- ...-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b | 3 --- ...-largec48857ed-1302-5954-9e24-69fa9b45e457 | 3 --- .../_utils/tests/tests_uipath_cache.db | 3 --- ...-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b | 3 --- ...-largec48857ed-1302-5954-9e24-69fa9b45e457 | 3 --- .../utils/tests/tests_uipath_cache.db | 3 --- tests/conftest.py | 27 ++++++++++++++++--- 10 files changed, 35 insertions(+), 26 deletions(-) delete mode 100644 src/uipath_langchain/_utils/tests/cached_embeddings/text-embedding-3-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b delete mode 100644 src/uipath_langchain/_utils/tests/cached_embeddings/text-embedding-3-largec48857ed-1302-5954-9e24-69fa9b45e457 delete mode 100644 src/uipath_langchain/_utils/tests/tests_uipath_cache.db delete mode 100644 src/uipath_langchain/utils/tests/cached_embeddings/text-embedding-3-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b delete mode 100644 src/uipath_langchain/utils/tests/cached_embeddings/text-embedding-3-largec48857ed-1302-5954-9e24-69fa9b45e457 delete mode 100644 src/uipath_langchain/utils/tests/tests_uipath_cache.db diff --git a/.github/workflows/langchain_ci.yml b/.github/workflows/langchain_ci.yml index e5861b0b..b45ec691 100644 --- a/.github/workflows/langchain_ci.yml +++ b/.github/workflows/langchain_ci.yml @@ -24,6 +24,10 @@ jobs: uses: ./.github/workflows/test.yml with: folder_path: "." + secrets: + UIPATH_URL: ${{ secrets.UIPATH_URL }} + UIPATH_CLIENT_ID: ${{ secrets.UIPATH_CLIENT_ID }} + UIPATH_CLIENT_SECRET: ${{ secrets.UIPATH_CLIENT_SECRET }} build: needs: [lint, test] diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 250aaa5c..77cdf761 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,8 +2,14 @@ name: Reusable Test Workflow on: workflow_call: + secrets: + UIPATH_URL: + required: true + UIPATH_CLIENT_ID: + required: true + UIPATH_CLIENT_SECRET: + required: true inputs: - folder_path: description: 'The folder path to run actions in' required: true @@ -44,6 +50,4 @@ jobs: UIPATH_URL: ${{ secrets.UIPATH_URL }} UIPATH_CLIENT_ID: ${{ secrets.UIPATH_CLIENT_ID }} UIPATH_CLIENT_SECRET: ${{ secrets.UIPATH_CLIENT_SECRET }} - UIPATH_ORGANIZATION_ID: ${{ vars.UIPATH_ORGANIZATION_ID }} - UIPATH_TENANT_ID: ${{ vars.UIPATH_TENANT_ID }} diff --git a/.vscode/settings.json b/.vscode/settings.json index 776470d7..24a9e342 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -21,7 +21,7 @@ "titleBar.inactiveBackground": "#0099cc" }, "python.testing.pytestArgs": [ - "sdk" + "tests" ], "python.testing.unittestEnabled": false, "python.testing.pytestEnabled": true diff --git a/src/uipath_langchain/_utils/tests/cached_embeddings/text-embedding-3-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b b/src/uipath_langchain/_utils/tests/cached_embeddings/text-embedding-3-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b deleted file mode 100644 index ee925ee7..00000000 --- a/src/uipath_langchain/_utils/tests/cached_embeddings/text-embedding-3-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eb0757c242dc5fa2290e2fe8059747d6b5ba18da613fc96a1c1ab496cb1832ef -size 68875 diff --git a/src/uipath_langchain/_utils/tests/cached_embeddings/text-embedding-3-largec48857ed-1302-5954-9e24-69fa9b45e457 b/src/uipath_langchain/_utils/tests/cached_embeddings/text-embedding-3-largec48857ed-1302-5954-9e24-69fa9b45e457 deleted file mode 100644 index eaa5c8cb..00000000 --- a/src/uipath_langchain/_utils/tests/cached_embeddings/text-embedding-3-largec48857ed-1302-5954-9e24-69fa9b45e457 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e3e104c19299f441bd137ed18783b28eccc5fc83d3c4b066ee0f80b7960098fe -size 68913 diff --git a/src/uipath_langchain/_utils/tests/tests_uipath_cache.db b/src/uipath_langchain/_utils/tests/tests_uipath_cache.db deleted file mode 100644 index 92021bbf..00000000 --- a/src/uipath_langchain/_utils/tests/tests_uipath_cache.db +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:13bc6863c135afd0fa862b57762d008af026507fe566c176daeaad92d75ecff5 -size 45056 diff --git a/src/uipath_langchain/utils/tests/cached_embeddings/text-embedding-3-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b b/src/uipath_langchain/utils/tests/cached_embeddings/text-embedding-3-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b deleted file mode 100644 index ee925ee7..00000000 --- a/src/uipath_langchain/utils/tests/cached_embeddings/text-embedding-3-large5034ec3c-85c9-54b8-ac89-5e0cbcf99e3b +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eb0757c242dc5fa2290e2fe8059747d6b5ba18da613fc96a1c1ab496cb1832ef -size 68875 diff --git a/src/uipath_langchain/utils/tests/cached_embeddings/text-embedding-3-largec48857ed-1302-5954-9e24-69fa9b45e457 b/src/uipath_langchain/utils/tests/cached_embeddings/text-embedding-3-largec48857ed-1302-5954-9e24-69fa9b45e457 deleted file mode 100644 index eaa5c8cb..00000000 --- a/src/uipath_langchain/utils/tests/cached_embeddings/text-embedding-3-largec48857ed-1302-5954-9e24-69fa9b45e457 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e3e104c19299f441bd137ed18783b28eccc5fc83d3c4b066ee0f80b7960098fe -size 68913 diff --git a/src/uipath_langchain/utils/tests/tests_uipath_cache.db b/src/uipath_langchain/utils/tests/tests_uipath_cache.db deleted file mode 100644 index 92021bbf..00000000 --- a/src/uipath_langchain/utils/tests/tests_uipath_cache.db +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:13bc6863c135afd0fa862b57762d008af026507fe566c176daeaad92d75ecff5 -size 45056 diff --git a/tests/conftest.py b/tests/conftest.py index cfca5813..8e60586e 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -11,11 +11,30 @@ from langchain_community.cache import SQLiteCache from uipath_langchain.embeddings import UiPathOpenAIEmbeddings -from uipath_langchain.utils._settings import uipath_cached_paths_settings +from uipath_langchain.utils._settings import UiPathCachedPathsSettings + +test_cache_settings = UiPathCachedPathsSettings( + CACHED_COMPLETION_DB="tests/llm_cache/tests_uipath_cache.sqlite", + CACHED_EMBEDDINGS_DIR="tests/llm_cache/cached_embeddings", +) + + +def get_from_uipath_url(): + try: + url = os.getenv("UIPATH_URL") + if url: + return "/".join(url.split("/", 3)[:3]) + except Exception: + return None + return None def get_token(): - url_get_token = f"{env.get('UIPATH_URL', '').rstrip('/')}/identity_/connect/token" + url_get_token = f"{get_from_uipath_url().rstrip('/')}/identity_/connect/token" + + os.environ["UIPATH_REQUESTING_PRODUCT"] = "uipath-python-sdk" + os.environ["UIPATH_REQUESTING_FEATURE"] = "langgraph-agent" + os.environ["UIPATH_TESTS_CACHE_LLMGW"] = "true" token_credentials = { "client_id": env.get("UIPATH_CLIENT_ID"), @@ -49,7 +68,7 @@ def cached_llmgw_calls() -> Generator[Optional[SQLiteCache], None, None]: yield None else: logging.info("Setting up LLMGW cache") - db_path = uipath_cached_paths_settings.cached_completion_db + db_path = test_cache_settings.cached_completion_db os.makedirs(os.path.dirname(db_path), exist_ok=True) cache = SQLiteCache(database_path=db_path) set_llm_cache(cache) @@ -68,7 +87,7 @@ def cached_embedder() -> Generator[Optional[CacheBackedEmbeddings], None, None]: embedder = CacheBackedEmbeddings.from_bytes_store( underlying_embeddings=UiPathOpenAIEmbeddings(model=model), document_embedding_cache=LocalFileStore( - uipath_cached_paths_settings.cached_embeddings_dir + test_cache_settings.cached_embeddings_dir ), namespace=model, )