From 885196012f099871b309dba2647e4e8da1e08f6b Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Thu, 14 Dec 2023 19:49:39 +0000 Subject: [PATCH 01/12] run_async tests --- .../pipelines/test_basic_pipeline.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/deepsparse/pipelines/test_basic_pipeline.py b/tests/deepsparse/pipelines/test_basic_pipeline.py index c98ffd538c..7d61a48d05 100644 --- a/tests/deepsparse/pipelines/test_basic_pipeline.py +++ b/tests/deepsparse/pipelines/test_basic_pipeline.py @@ -20,10 +20,16 @@ from pydantic import BaseModel +# import asyncio +import pytest from deepsparse import Pipeline from deepsparse.operators import Operator from deepsparse.routers import LinearRouter from deepsparse.schedulers import OperatorScheduler +from deepsparse.utils import InferenceState + + +# pytest_plugins = ('pytest_asyncio',) class IntSchema(BaseModel): @@ -58,3 +64,16 @@ def test_run_simple_pipeline(): pipeline_output = AddThreePipeline(pipeline_input) assert pipeline_output.value == 8 + + +@pytest.mark.asyncio +async def test_run_async_simple_pipeline(): + inference_state = InferenceState() + inference_state.create_state({}) + pipeline_input = IntSchema(value=5) + + pipeline_output = await AddThreePipeline.run_async( + pipeline_input, inference_state=inference_state + ) + + assert pipeline_output.value == 8 From 27dd512c8346a0c52e9e807489678c720b771b6f Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Thu, 14 Dec 2023 19:51:35 +0000 Subject: [PATCH 02/12] lint --- tests/deepsparse/pipelines/test_basic_pipeline.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/tests/deepsparse/pipelines/test_basic_pipeline.py b/tests/deepsparse/pipelines/test_basic_pipeline.py index 7d61a48d05..77bc103602 100644 --- a/tests/deepsparse/pipelines/test_basic_pipeline.py +++ b/tests/deepsparse/pipelines/test_basic_pipeline.py @@ -29,9 +29,6 @@ from deepsparse.utils import InferenceState -# pytest_plugins = ('pytest_asyncio',) - - class IntSchema(BaseModel): value: int From ecbeb5d982dab5b38793771b6379123b33727842 Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Thu, 14 Dec 2023 19:53:29 +0000 Subject: [PATCH 03/12] add pytest-asyncio to setup.py --- setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py index 2cc87df76b..34467c4e8c 100644 --- a/setup.py +++ b/setup.py @@ -107,6 +107,7 @@ def _parse_requirements_file(file_path): "flask>=1.0.0", "flask-cors>=3.0.0", "Pillow>=8.3.2", + "pytest-asyncio==0.23.2", ] _docs_deps = [ "m2r2~=0.2.7", From 2dab74715222e6fe1bc6e8f1263aa654289249ef Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Thu, 14 Dec 2023 19:54:18 +0000 Subject: [PATCH 04/12] lint --- tests/deepsparse/pipelines/test_basic_pipeline.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/deepsparse/pipelines/test_basic_pipeline.py b/tests/deepsparse/pipelines/test_basic_pipeline.py index 77bc103602..f85d169dcf 100644 --- a/tests/deepsparse/pipelines/test_basic_pipeline.py +++ b/tests/deepsparse/pipelines/test_basic_pipeline.py @@ -20,7 +20,6 @@ from pydantic import BaseModel -# import asyncio import pytest from deepsparse import Pipeline from deepsparse.operators import Operator From df423ca5bba22eb7e18b553431bb33f38590543b Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Thu, 14 Dec 2023 21:07:57 +0000 Subject: [PATCH 05/12] absolute import --- setup.py | 1 - tests/deepsparse/pipelines/test_basic_pipeline.py | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 34467c4e8c..2cc87df76b 100644 --- a/setup.py +++ b/setup.py @@ -107,7 +107,6 @@ def _parse_requirements_file(file_path): "flask>=1.0.0", "flask-cors>=3.0.0", "Pillow>=8.3.2", - "pytest-asyncio==0.23.2", ] _docs_deps = [ "m2r2~=0.2.7", diff --git a/tests/deepsparse/pipelines/test_basic_pipeline.py b/tests/deepsparse/pipelines/test_basic_pipeline.py index f85d169dcf..e1b5d24258 100644 --- a/tests/deepsparse/pipelines/test_basic_pipeline.py +++ b/tests/deepsparse/pipelines/test_basic_pipeline.py @@ -25,7 +25,7 @@ from deepsparse.operators import Operator from deepsparse.routers import LinearRouter from deepsparse.schedulers import OperatorScheduler -from deepsparse.utils import InferenceState +from deepsparse.utils.state import InferenceState class IntSchema(BaseModel): From 786adab90b6f75953836b2fb065cf795ae6c889a Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Tue, 19 Dec 2023 14:59:54 +0000 Subject: [PATCH 06/12] revert dependency --- setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py index 2cc87df76b..34467c4e8c 100644 --- a/setup.py +++ b/setup.py @@ -107,6 +107,7 @@ def _parse_requirements_file(file_path): "flask>=1.0.0", "flask-cors>=3.0.0", "Pillow>=8.3.2", + "pytest-asyncio==0.23.2", ] _docs_deps = [ "m2r2~=0.2.7", From d1edc85e1d05670f216f86ac77614dba498558ba Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Tue, 19 Dec 2023 19:33:57 +0000 Subject: [PATCH 07/12] draft --- .../pipelines/test_basic_pipeline.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/tests/deepsparse/pipelines/test_basic_pipeline.py b/tests/deepsparse/pipelines/test_basic_pipeline.py index e1b5d24258..d51b050f08 100644 --- a/tests/deepsparse/pipelines/test_basic_pipeline.py +++ b/tests/deepsparse/pipelines/test_basic_pipeline.py @@ -62,14 +62,14 @@ def test_run_simple_pipeline(): assert pipeline_output.value == 8 -@pytest.mark.asyncio -async def test_run_async_simple_pipeline(): - inference_state = InferenceState() - inference_state.create_state({}) - pipeline_input = IntSchema(value=5) +# @pytest.mark.asyncio +# async def test_run_async_simple_pipeline(): +# inference_state = InferenceState() +# inference_state.create_state({}) +# pipeline_input = IntSchema(value=5) - pipeline_output = await AddThreePipeline.run_async( - pipeline_input, inference_state=inference_state - ) +# pipeline_output = await AddThreePipeline.run_async( +# pipeline_input, inference_state=inference_state +# ) - assert pipeline_output.value == 8 +# assert pipeline_output.value == 8 From 7e90c619b976b37954abc2f5bb8a1fef57588d12 Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Tue, 19 Dec 2023 19:41:26 +0000 Subject: [PATCH 08/12] draft --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 90cc832d42..2bd4382afd 100644 --- a/setup.py +++ b/setup.py @@ -107,7 +107,7 @@ def _parse_requirements_file(file_path): "flask>=1.0.0", "flask-cors>=3.0.0", "Pillow>=8.3.2", - "pytest-asyncio==0.23.2", + # "pytest-asyncio==0.23.2", ] _docs_deps = [ "m2r2~=0.2.7", From 61d4026b3df87dcd122c75eaa698479b4e4435d2 Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Tue, 19 Dec 2023 20:03:46 +0000 Subject: [PATCH 09/12] draft --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 2bd4382afd..90cc832d42 100644 --- a/setup.py +++ b/setup.py @@ -107,7 +107,7 @@ def _parse_requirements_file(file_path): "flask>=1.0.0", "flask-cors>=3.0.0", "Pillow>=8.3.2", - # "pytest-asyncio==0.23.2", + "pytest-asyncio==0.23.2", ] _docs_deps = [ "m2r2~=0.2.7", From d615153672f637c82e482d75aeaac56ca59638e1 Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Tue, 19 Dec 2023 20:14:49 +0000 Subject: [PATCH 10/12] add plugin --- tests/deepsparse/pipelines/test_basic_pipeline.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/deepsparse/pipelines/test_basic_pipeline.py b/tests/deepsparse/pipelines/test_basic_pipeline.py index d51b050f08..c0ae5dfcc0 100644 --- a/tests/deepsparse/pipelines/test_basic_pipeline.py +++ b/tests/deepsparse/pipelines/test_basic_pipeline.py @@ -27,6 +27,8 @@ from deepsparse.schedulers import OperatorScheduler from deepsparse.utils.state import InferenceState +pytest_plugins = ('pytest_asyncio',) + class IntSchema(BaseModel): value: int From 6ef9557571832cd5487f6a788ddd90f3a81417d8 Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Tue, 19 Dec 2023 20:53:21 +0000 Subject: [PATCH 11/12] draft --- .../pipelines/test_basic_pipeline.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/tests/deepsparse/pipelines/test_basic_pipeline.py b/tests/deepsparse/pipelines/test_basic_pipeline.py index c0ae5dfcc0..b1b36256be 100644 --- a/tests/deepsparse/pipelines/test_basic_pipeline.py +++ b/tests/deepsparse/pipelines/test_basic_pipeline.py @@ -64,14 +64,14 @@ def test_run_simple_pipeline(): assert pipeline_output.value == 8 -# @pytest.mark.asyncio -# async def test_run_async_simple_pipeline(): -# inference_state = InferenceState() -# inference_state.create_state({}) -# pipeline_input = IntSchema(value=5) +@pytest.mark.asyncio(scope="module") +async def test_run_async_simple_pipeline(): + inference_state = InferenceState() + inference_state.create_state({}) + pipeline_input = IntSchema(value=5) -# pipeline_output = await AddThreePipeline.run_async( -# pipeline_input, inference_state=inference_state -# ) + pipeline_output = await AddThreePipeline.run_async( + pipeline_input, inference_state=inference_state + ) -# assert pipeline_output.value == 8 + assert pipeline_output.value == 8 From 8518d32679b14cf354e3596a2f6d17bc2048f61c Mon Sep 17 00:00:00 2001 From: George Ohashi Date: Tue, 19 Dec 2023 22:14:56 +0000 Subject: [PATCH 12/12] delete pytest-asyncio from setup.py, use asycio.run() --- setup.py | 1 - .../pipelines/test_basic_pipeline.py | 31 ++++++++++++------- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/setup.py b/setup.py index 90cc832d42..abaae06a33 100644 --- a/setup.py +++ b/setup.py @@ -107,7 +107,6 @@ def _parse_requirements_file(file_path): "flask>=1.0.0", "flask-cors>=3.0.0", "Pillow>=8.3.2", - "pytest-asyncio==0.23.2", ] _docs_deps = [ "m2r2~=0.2.7", diff --git a/tests/deepsparse/pipelines/test_basic_pipeline.py b/tests/deepsparse/pipelines/test_basic_pipeline.py index b1b36256be..4e7ef79399 100644 --- a/tests/deepsparse/pipelines/test_basic_pipeline.py +++ b/tests/deepsparse/pipelines/test_basic_pipeline.py @@ -16,19 +16,17 @@ Simple example and test of a dummy pipeline """ +import asyncio from typing import Dict from pydantic import BaseModel -import pytest from deepsparse import Pipeline from deepsparse.operators import Operator from deepsparse.routers import LinearRouter from deepsparse.schedulers import OperatorScheduler from deepsparse.utils.state import InferenceState -pytest_plugins = ('pytest_asyncio',) - class IntSchema(BaseModel): value: int @@ -64,14 +62,23 @@ def test_run_simple_pipeline(): assert pipeline_output.value == 8 -@pytest.mark.asyncio(scope="module") -async def test_run_async_simple_pipeline(): - inference_state = InferenceState() - inference_state.create_state({}) - pipeline_input = IntSchema(value=5) +def test_run_async_simple_pipeline(): + test_actually_ran = False - pipeline_output = await AddThreePipeline.run_async( - pipeline_input, inference_state=inference_state - ) + async def _actual_test(): + nonlocal test_actually_ran - assert pipeline_output.value == 8 + inference_state = InferenceState() + inference_state.create_state({}) + pipeline_input = IntSchema(value=5) + + pipeline_output = await AddThreePipeline.run_async( + pipeline_input, inference_state=inference_state + ) + + assert pipeline_output.value == 8 + + test_actually_ran = True + + asyncio.run(_actual_test()) + assert test_actually_ran