Changeset a17e4f6 in flexoentity for tests/test_id_lifecycle.py
- Timestamp:
- 01/15/26 11:19:14 (4 hours ago)
- Branches:
- master
- Parents:
- a1c4ba3
- File:
-
- 1 edited
-
tests/test_id_lifecycle.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
tests/test_id_lifecycle.py
ra1c4ba3 ra17e4f6 115 115 with pytest.raises(RuntimeError, match="mark obsolete"): 116 116 q.bump_version() 117 118 def test_fork_creates_independent_domain(sample_domain): 119 original = sample_domain 120 121 forked = original.fork(domain_id="DST") 122 123 # ─── identity ─────────────────────────────────────────────────────── 124 assert forked is not original 125 assert isinstance(forked.flexo_id, FlexOID) 126 assert forked.flexo_id != original.flexo_id 127 128 # ─── lifecycle reset ──────────────────────────────────────────────── 129 assert forked.state == EntityState.DRAFT 130 assert forked.version == 1 131 132 # ─── provenance ───────────────────────────────────────────────────── 133 assert forked.origin == str(original.flexo_id) 134 135 # ─── domain reassigned ────────────────────────────────────────────── 136 assert forked.domain_id == "DST" 137 138 def test_fork_does_not_mutate_original(sample_domain): 139 original = sample_domain 140 original_id = original.flexo_id 141 original_fp = original.fingerprint 142 143 _ = original.fork(domain_id="DST") 144 145 assert original.flexo_id == original_id 146 assert original.fingerprint == original_fp 147 assert original.origin is None 148 149 def test_fork_does_not_shadow_state(sample_domain): 150 forked = sample_domain.fork(domain_id="DST") 151 152 # No instance attribute allowed 153 assert "state" not in forked.__dict__ 154 155 # Property must still work 156 assert forked.state == EntityState.DRAFT 157 158 def test_fork_without_origin(sample_domain): 159 forked = sample_domain.fork(domain_id="DST", keep_origin=False) 160 161 assert forked.origin is None
Note:
See TracChangeset
for help on using the changeset viewer.
