source: flexoentity/tests/test_in_memory_backend.py@ e230c40

Last change on this file since e230c40 was e230c40, checked in by Enrico Schwass <ennoausberlin@…>, 5 weeks ago

fix some tests to mirror new entity manager

  • Property mode set to 100644
File size: 1.2 KB
Line 
1import pytest
2from flexoentity.in_memory_backend import InMemoryBackend
3from flexoentity.domain import Domain
4
5
6
7
8def test_save_and_load_roundtrip(local_backend, sample_domain):
9 local_backend.save(sample_domain)
10
11 loaded = local_backend.load(sample_domain.flexo_id)
12 assert isinstance(loaded, Domain)
13 # important: entity equality is probably identity-based, so compare dicts:
14 assert loaded.to_dict() == sample_domain.to_dict()
15
16
17def test_update_overwrites_entity(local_backend, sample_domain):
18 local_backend.save(sample_domain)
19
20 # change something
21 sample_domain.description = "UPDATED DESC"
22 local_backend.update(sample_domain)
23
24 loaded = local_backend.load(sample_domain.flexo_id)
25 assert loaded.description == "UPDATED DESC"
26
27
28def test_delete_removes_entity(local_backend, sample_domain):
29 local_backend.save(sample_domain)
30 local_backend.delete(sample_domain.flexo_id)
31
32 assert local_backend.load(sample_domain.flexo_id) is None
33 assert local_backend.load_all() == []
34
35
36def test_clear_removes_all(local_backend, sample_domain):
37 local_backend.save(sample_domain)
38 local_backend.clear()
39
40 assert local_backend.load(sample_domain.flexo_id) is None
41 assert local_backend.load_all() == []
Note: See TracBrowser for help on using the repository browser.