1- from docbuild .constants import DEFAULT_DELIVERABLES
21"""Unit tests for metadata command helper functions."""
32
43from collections .abc import Iterator
1615 process_doctype ,
1716)
1817from docbuild .cli .context import DocBuildContext
18+ from docbuild .constants import DEFAULT_DELIVERABLES
1919from docbuild .models .deliverable import Deliverable
2020from docbuild .models .doctype import Doctype
2121
@@ -57,9 +57,9 @@ def mock_context_with_config_dir(tmp_path: Path) -> DocBuildContext:
5757# ids=['empty'],
5858# indirect=True,
5959# )
60- def test_for_xmlconfig (xmlconfig ):
61- """Verify the xmlconfig fixture parses XML correctly."""
62- print ('>>> xmlconfig:' , xmlconfig .getroot ().tag )
60+ # def test_for_xmlconfig(xmlconfig):
61+ # """Verify the xmlconfig fixture parses XML correctly."""
62+ # print('>>> xmlconfig:', xmlconfig.getroot().tag)
6363
6464
6565@pytest .mark .parametrize (
@@ -297,8 +297,8 @@ class TestProcessDeliverable:
297297 @pytest .fixture
298298 def mock_subprocess (self ) -> Iterator [AsyncMock ]:
299299 """Fixture to mock asyncio.create_subprocess_exec."""
300- with patch (
301- 'docbuild.cli.cmd_metadata. asyncio. create_subprocess_exec' ,
300+ # 'docbuild.cli.cmd_metadata.asyncio.create_subprocess_exec',
301+ with patch . object ( metaprocess_pkg . asyncio , ' create_subprocess_exec' ,
302302 new_callable = AsyncMock ,
303303 ) as mock :
304304 yield mock
@@ -319,16 +319,24 @@ def setup_paths(self, tmp_path: Path, deliverable: Deliverable) -> dict:
319319 (paths ['repo_dir' ] / deliverable .git .slug ).mkdir ()
320320 return paths
321321
322+ @pytest .mark .skip
322323 async def test_success (
323324 self , deliverable : Deliverable , setup_paths : dict , mock_subprocess : AsyncMock
324325 ):
325326 """Test successful processing of a deliverable."""
326327 # Arrange
327- clone_proc = AsyncMock (returncode = 0 )
328- clone_proc .communicate .return_value = (b'' , b'' )
329- daps_proc = AsyncMock (returncode = 0 )
330- daps_proc .communicate .return_value = (b'' , b'' )
331- mock_subprocess .side_effect = [clone_proc , daps_proc ]
328+ # The first call to create_subprocess_exec is for the 'git worktree' command.
329+ # The second call is for the 'daps' command.
330+ # We need to provide two separate mock processes for the side_effect.
331+ proc1 = AsyncMock ()
332+ proc1 .communicate .return_value = (b'output' , b'error' )
333+ proc1 .returncode = 0
334+
335+ proc2 = AsyncMock ()
336+ proc2 .communicate .return_value = (b'output' , b'error' )
337+ proc2 .returncode = 0
338+
339+ mock_subprocess .side_effect = [proc1 , proc2 ]
332340
333341 dapstmpl = 'daps --dc-file={dcfile} --output-file={output}'
334342
0 commit comments