Coverage for /usr/local/lib/python3.12/site-packages/prefect/testing/docker.py: 0%
13 statements
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-05 10:48 +0000
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-05 10:48 +0000
1from contextlib import contextmanager
2from typing import Any, Generator
3from unittest import mock
5from prefect.utilities.dockerutils import ImageBuilder
8@contextmanager
9def capture_builders() -> Generator[list[ImageBuilder], None, None]:
10 """Captures any instances of ImageBuilder created while this context is active"""
11 builders: list[ImageBuilder] = []
13 original_init = ImageBuilder.__init__
15 def capture(self: ImageBuilder, *args: Any, **kwargs: Any):
16 builders.append(self)
17 original_init(self, *args, **kwargs)
19 with mock.patch.object(ImageBuilder, "__init__", capture):
20 yield builders