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_issue_54(): m = SimpleConcurrentModel(version=0) m.save() SimpleConcurrentModel.objects.update(version=0) m1 = SimpleConcurrentModel.objects.get(pk=m.pk) m2 = SimpleConcurrentModel.objects.get(pk=m.pk) assert m1.version == m2.version == 0 m1.save() m2.save() with override_settings(CONCURRENCY_VERSION_FIELD_REQUIRED=True): m = SimpleConcurrentModel(version=0) m.save() SimpleConcurrentModel.objects.update(version=0) m1 = SimpleConcurrentModel.objects.get(pk=m.pk) m2 = SimpleConcurrentModel.objects.get(pk=m.pk) assert m1.version == m2.version == 0 m1.save() with pytest.raises(RecordModifiedError): m2.save()
def test1(): instance = SimpleConcurrentModel(username=next(nextname)) instance.save() copy = refetch(instance) copy.save() instance.save()
def test_disable_concurrency_settings(settings): with override_settings(CONCURRENCY_ENABLED=False): instance1 = SimpleConcurrentModel(username=next(nextname)) instance1.save() refetch(instance1).save()