gabriel / muse public
test_conflicts_envelope.py python
26 lines 757 B
Raw
sha256:144495ae90498f9d51aeac4bf7f9ee9e9502d14474745a856b96921f7349c0ce next round of fixing tests Human 105 days ago
1 """Envelope tests for conflicts command."""
2 from __future__ import annotations
3 from collections.abc import Mapping
4 import json
5 import pytest
6 from tests.cli_test_helper import CliRunner
7
8 runner = CliRunner()
9
10 _FIELDS = ("muse_version", "schema", "timestamp", "warnings")
11
12
13 def _check(d: Mapping[str, object]) -> None:
14 for f in _FIELDS:
15 assert f in d, f"missing {f}"
16 assert "schema_version" not in d
17
18
19 class TestConflictsEnvelope:
20 def test_conflicts_no_merge_has_envelope(self) -> None:
21 # No merge in progress — returns 0 conflicts
22 r = runner.invoke(None, ["conflicts", "--json"])
23 assert r.exit_code == 0, r.output
24 d = json.loads(r.output)
25 _check(d)
26 assert d["merge_in_progress"] is False
File History 1 commit
sha256:144495ae90498f9d51aeac4bf7f9ee9e9502d14474745a856b96921f7349c0ce next round of fixing tests Human 105 days ago