def test_drop_trigger():
    conn = connections['default']
    f = [
        f for f in DropTriggerConcurrentModel._meta.fields
        if f.name == 'version'
    ][0]
    ret = factory(conn).drop(f)
    assert ret == [u'concurrency_demo_droptriggerconcurrentmodel_version']
    assert factory(conn).get_list() == [
        u'concurrency_demo_triggerconcurrentmodel_version'
    ]
def test_drop_triggers(db):
    conn = connections['default']
    ret = drop_triggers('default')
    assert sorted([i[0].__name__ for i in ret['default']]) == [
        'DropTriggerConcurrentModel', 'TriggerConcurrentModel'
    ]
    assert factory(conn).get_list() == []
def test_list_triggers():
    conn = connections['default']

    assert factory(conn).get_list() == [
        u'concurrency_demo_droptriggerconcurrentmodel_version',
        u'concurrency_demo_triggerconcurrentmodel_version'
    ]
def test_get_trigger(monkeypatch):
    conn = connections['default']
    f = factory(conn)
    version_field = TriggerConcurrentModel._concurrencymeta.field
    trigger = f.get_trigger(version_field)
    assert trigger == 'concurrency_demo_triggerconcurrentmodel_version'

    monkeypatch.setattr(version_field, '_trigger_name', 'aaa')
    assert f.get_trigger(version_field) is None
def test_get_trigger(monkeypatch):
    conn = connections['default']
    f = factory(conn)
    version_field = TriggerConcurrentModel._concurrencymeta.field
    trigger = f.get_trigger(version_field)
    assert trigger == 'concurrency_demo_triggerconcurrentmodel_version'

    monkeypatch.setattr(version_field, '_trigger_name', 'aaa')
    assert f.get_trigger(version_field) is None
Example #6
0
 def check(self, **kwargs):
     errors = []
     model = self.model
     from django.db import router, connections
     from concurrency.triggers import factory
     from django.core.checks import Warning
     alias = router.db_for_write(model)
     connection = connections[alias]
     f = factory(connection)
     if not f.get_trigger(self):
         errors.append(
             Warning(
                 'Missed trigger for field {}'.format(self),
                 hint=None,
                 obj=None,
                 id='concurrency.W001',
             )
         )
     return errors
def test_drop_triggers(db):
    conn = connections['default']
    ret = drop_triggers('default')
    assert sorted([i[0].__name__ for i in ret['default']]) == ['DropTriggerConcurrentModel',
                                                               'TriggerConcurrentModel']
    assert factory(conn).get_list() == []
def test_drop_trigger():
    conn = connections['default']
    f = [f for f in DropTriggerConcurrentModel._meta.fields if f.name == 'version'][0]
    ret = factory(conn).drop(f)
    assert ret == [u'concurrency_demo_droptriggerconcurrentmodel_version']
    assert factory(conn).get_list() == [u'concurrency_demo_triggerconcurrentmodel_version']
def test_list_triggers():
    conn = connections['default']

    assert factory(conn).get_list() == [
        u'concurrency_demo_droptriggerconcurrentmodel_version',
        u'concurrency_demo_triggerconcurrentmodel_version']