Changeset ef964d8 in flexoentity for tests/test_id_lifecycle.py


Ignore:
Timestamp:
11/27/25 18:12:23 (7 weeks ago)
Author:
Enrico Schwass <ennoausberlin@…>
Branches:
master
Children:
4e11d58
Parents:
9a50e0b
Message:

new serialization structure adopted and tests fixed

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/test_id_lifecycle.py

    r9a50e0b ref964d8  
    33
    44
    5 # ──────────────────────────────────────────────────────────────────────────────
    6 # Tests adapted to use real SingleChoiceQuestion fixture instead of DummyEntity
    7 # ──────────────────────────────────────────────────────────────────────────────
     5def test_initial_state(sample_domain):
     6    assert sample_domain.state == EntityState.DRAFT
     7    assert sample_domain.flexo_id.version == 1
     8    assert FlexoEntity.verify_integrity(sample_domain)
    89
    9 def test_initial_state(sample_question):
    10     q = sample_question
    11     assert q.state == EntityState.DRAFT
    12     assert q.flexo_id.version == 1
    13     assert FlexoEntity.verify_integrity(q)
    14 
    15 def test_approval_does_not_bump_version(sample_question):
    16     q = sample_question
     10def test_approval_does_not_bump_version(sample_domain):
     11    q = sample_domain
    1712    q.approve()
    1813    assert q.state == EntityState.APPROVED
    1914    assert q.flexo_id.version == 1
    2015
    21 def test_signing_does_not_bump_version(sample_question):
    22     q = sample_question
     16def test_signing_does_not_bump_version(sample_domain):
     17    q = sample_domain
    2318    q.approve()
    2419    before = q.flexo_id
     
    3833
    3934
    40 def test_publish_does_not_bump_version(sample_question):
    41     q = sample_question
     35def test_publish_does_not_bump_version(sample_domain):
     36    q = sample_domain
    4237    q.approve()
    4338    q.sign()
     
    4843
    4944
    50 def test_modify_content_changes_fingerprint(sample_question):
    51     q = sample_question
    52     q.text += "Rephrased content"  # simulate text change
    53     changed = q._update_fingerprint()
     45def test_modify_content_changes_fingerprint(sample_signature):
     46    sample_signature.comment += "Rephrased content"  # simulate text change
     47    changed = sample_signature._update_fingerprint()
    5448    assert changed
    5549
    5650
    57 def test_no_version_bump_on_draft_edits(sample_question):
    58     q = sample_question
    59     q.text = "Minor draft edit"
    60     q._update_fingerprint()
    61     assert q.flexo_id.version == 1
     51def test_no_version_bump_on_draft_edits(sample_signature):
     52    sample_signature.comment = "Minor draft edit"
     53    sample_signature._update_fingerprint()
     54    assert sample_signature.flexo_id.version == 1
    6255
    6356
    64 def test_version_bump_after_edit_and_sign(sample_question):
    65     q = sample_question
    66     q.approve()
    67     v1 = str(q.flexo_id)
    68     q.text = "Changed content"
    69     q.sign()
    70     assert str(q.flexo_id) != v1
     57def test_version_bump_after_edit_and_sign(sample_signature):
     58    sample_signature.approve()
     59    v1 = str(sample_signature.flexo_id)
     60    sample_signature.comment = "Changed comment"
     61    sample_signature.sign()
     62    assert str(sample_signature.flexo_id) != v1
    7163
    7264
    73 def test_integrity_check_passes_and_fails(sample_question):
    74     q = sample_question
    75     q.approve()
    76     assert FlexoEntity.verify_integrity(q)
     65def test_integrity_check_passes_and_fails(sample_signature):
     66    sample_signature.approve()
     67    assert FlexoEntity.verify_integrity(sample_signature)
    7768
    7869    # simulate tampering
    79     q.text = "Tampered text"
    80     assert not FlexoEntity.verify_integrity(q)
     70    sample_signature.comment = "Tampered text"
     71    assert not FlexoEntity.verify_integrity(sample_signature)
    8172
    8273
    83 def test_obsolete_state(sample_question):
    84     q = sample_question
     74def test_obsolete_state(sample_domain):
     75    q = sample_domain
    8576    q.approve()
    8677    q.sign()
     
    9081
    9182
    92 def test_clone_new_base_resets_lineage(sample_question):
    93     q = sample_question
     83def test_clone_new_base_resets_lineage(sample_domain):
     84    q = sample_domain
    9485    q.approve()
    9586    q.sign()
     
    10293    assert q.flexo_id.version == 1
    10394
    104 def test_clone_new_base_sets_origin(sample_question):
    105     q = sample_question
     95def test_clone_new_base_sets_origin(sample_domain):
     96    q = sample_domain
    10697    q.approve()
    10798    q.sign()
     
    115106    assert q.flexo_id != old_id
    116107
    117 def test_mass_version_increments_until_obsolete(sample_question):
    118     q = sample_question
     108def test_mass_version_increments_until_obsolete(sample_domain):
     109    q = sample_domain
    119110    q.approve()
    120111    for _ in range(FlexOID.MAX_VERSION - 1):
Note: See TracChangeset for help on using the changeset viewer.