def test_disable_concurrency_global(): instance1 = SimpleConcurrentModel(username=next(nextname)) instance2 = AutoIncConcurrentModel(username=next(nextname)) instance1.save() instance2.save() refetch(instance1).save() refetch(instance2).save() with disable_concurrency(): instance1.save() instance2.save() copy2 = refetch(instance2) refetch(instance2).save() with pytest.raises(RecordModifiedError): copy2.save()
def test_concurrency_disable_increment_as_decorator(): instance1 = AutoIncConcurrentModel(username=next(nextname)) @concurrency_disable_increment(instance1) def test(): assert instance1.version == 0 instance1.save() assert instance1.version == 1 instance1.save() instance1.save() assert instance1.version == 1 test() instance1.save() assert instance1.version == 2
def test_concurrency_disable_increment(): instance1 = AutoIncConcurrentModel(username=next(nextname)) assert instance1.version == 0 instance1.save() assert instance1.version == 1 with concurrency_disable_increment(instance1): instance1.save() instance1.save() assert instance1.version == 1 instance1.save() assert instance1.version == 2