Changeset - 060ffe6dd700
[Not reviewed]
default
0 1 0
Konstantin Veretennicov - 10 years ago 2016-05-08 18:33:47
kveretennicov@gmail.com
tests: fix issue with set_test_settings fixture not committing changes

Flushing session is not enough to make setting changes visible in controller
tests.
1 file changed with 1 insertions and 1 deletions:
0 comments (0 inline, 0 general)
kallithea/tests/conftest.py
Show inline comments
 
@@ -52,25 +52,25 @@ def create_test_user():
 
    Session().commit()
 

	
 

	
 
def _set_settings(*kvtseq):
 
    session = Session()
 
    for kvt in kvtseq:
 
        assert len(kvt) in (2, 3)
 
        k = kvt[0]
 
        v = kvt[1]
 
        t = kvt[2] if len(kvt) == 3 else 'unicode'
 
        setting = Setting.create_or_update(k, v, t)
 
        session.add(setting)
 
    session.flush()
 
    session.commit()
 

	
 

	
 
@pytest.yield_fixture
 
def set_test_settings():
 
    """Restore settings after test is over."""
 
    # Save settings.
 
    settings_snapshot = [
 
        (s.app_settings_name, s.app_settings_value, s.app_settings_type)
 
        for s in Setting.query().all()]
 
    yield _set_settings
 
    # Restore settings.
 
    session = Session()
0 comments (0 inline, 0 general)