- Timestamp:
- 11/06/25 08:23:11 (2 months ago)
- Branches:
- master
- Children:
- 182ba7d
- Parents:
- 223c9d5
- Location:
- tests
- Files:
-
- 3 edited
-
conftest.py (modified) (4 diffs)
-
test_id_lifecycle.py (modified) (1 diff)
-
test_id_stress.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tests/conftest.py
r223c9d5 r269fdc2 45 45 # If no FlexOID yet, generate a draft ID now. 46 46 if not getattr(self, "flexo_id", None): 47 domain_code = (48 self.domain.domain if isinstance(self.domain, Domain) else "GEN"49 )50 47 self.flexo_id = FlexOID.safe_generate( 51 domain= domain_code,52 entity_type= EntityType.ITEM.value, # 'I'48 domain=self.default_domain_code, 49 entity_type=SingleChoiceQuestion.ENTITY_TYPE.value, # 'I' 53 50 estate=EntityState.DRAFT.value, # 'D' 54 51 text=self.text_seed or self.text, … … 58 55 @classmethod 59 56 def default(cls): 60 return cls( domain=Domain(domain="GEN"))57 return cls() 61 58 62 59 def to_dict(self): … … 80 77 @classmethod 81 78 def from_dict(cls, data): 82 obj = cls(domain=Domain(domain="GEN"), 83 text=data.get("text", ""), 79 obj = cls(text=data.get("text", ""), 84 80 options=[AnswerOption.from_dict(o) for o in data.get("options", [])], 85 81 ) 86 82 # restore FlexoEntity core fields 87 obj.domain = data.get("domain")88 83 if "flexo_id" in data: 89 84 obj.flexo_id = FlexOID.parsed(data["flexo_id"]) … … 96 91 @pytest.fixture 97 92 def sample_question(): 98 q = SingleChoiceQuestion(domain=Domain.default(), 99 text="What is 2 + 2?", 93 q = SingleChoiceQuestion(text="What is 2 + 2?", 100 94 options=[]) 101 95 q._update_fingerprint() -
tests/test_id_lifecycle.py
r223c9d5 r269fdc2 12 12 assert q.flexo_id.version == 1 13 13 assert FlexoEntity.verify_integrity(q) 14 15 14 16 15 def test_approval_does_not_bump_version(sample_question): -
tests/test_id_stress.py
r223c9d5 r269fdc2 33 33 ids = [] 34 34 for seed in seeds: 35 oid = FlexOID.safe_generate(domain.domain , entity_type.value, estate.value, seed, repo=repo)35 oid = FlexOID.safe_generate(domain.domain_code, entity_type.value, estate.value, seed, repo=repo) 36 36 assert isinstance(oid, FlexOID) 37 37 ids.append(str(oid)) … … 60 60 text = "identical question text" 61 61 62 id1 = FlexOID.generate(domain.domain , entity_type.value, estate.value, text)63 id2 = FlexOID.generate(domain.domain , entity_type.value, estate.value, text)62 id1 = FlexOID.generate(domain.domain_code, entity_type.value, estate.value, text) 63 id2 = FlexOID.generate(domain.domain_code, entity_type.value, estate.value, text) 64 64 # IDs must be identical because generation is deterministic 65 65 assert id1 == id2 … … 75 75 # seed = "reproducibility test seed" 76 76 77 # id1 = FlexOID.generate(domain.domain , entity_type.value, estate.value, seed)77 # id1 = FlexOID.generate(domain.domain_code, entity_type.value, estate.value, seed) 78 78 # FlexOID._seen_hashes.clear() 79 # id2 = FlexOID.generate(domain.domain , entity_type.value, estate.value, seed)79 # id2 = FlexOID.generate(domain.domain_code, entity_type.value, estate.value, seed) 80 80 81 81 # assert id1 == id2
Note:
See TracChangeset
for help on using the changeset viewer.
