def test_autocommit_transaction(backend): backend.filter(Movie, {}).delete() try: backend.autocommit = True movie = Movie({'name': 'The Godfather', 'year': 1979, 'type': 'US'}) movie.save(backend) backend.delete(movie) movie.name = 'Star Wars IV' movie.save(backend) with pytest.raises(Movie.DoesNotExist): backend.get(Movie, { 'name': 'The Godfather', 'year': 1979, 'type': 'US' }) assert backend.get(Movie, { 'name': 'Star Wars IV', 'year': 1979 }) == movie assert len(backend.filter(Movie, {'type': 'US'})) == 1 finally: backend.autocommit = False
def test_advanced_transaction(backend): backend.begin() backend.filter(Movie, {}).delete() movie = Movie({'name': 'The Godfather', 'year': 1979, 'type': 'US'}) movie.save(backend) backend.commit() backend.delete(movie) movie.name = 'Star Wars IV' movie.save(backend) with pytest.raises(Movie.DoesNotExist): backend.get(Movie, { 'name': 'The Godfather', 'year': 1979, 'type': 'US' }) backend.rollback() assert backend.get(Movie, {'name': 'The Godfather', 'year': 1979}) == movie assert len(backend.filter(Movie, {'type': 'US'})) == 1
def test_advanced_transaction(transactional_backend): transactional_backend.begin() transactional_backend.filter(Movie, {}).delete() transactional_backend.rollback() movie = Movie({'name': 'The Godfather', 'year': 1979, 'type': 'US'}) movie.save(transactional_backend) transactional_backend.commit() transactional_backend.delete(movie) movie.name = 'Star Wars IV' movie.save(transactional_backend) transactional_backend.rollback() assert transactional_backend.get(Movie, { 'name': 'The Godfather', 'year': 1979, 'type': 'US' }).name == 'The Godfather' assert transactional_backend.get(Movie, { 'name': 'The Godfather', 'year': 1979 }) == movie assert len(transactional_backend.filter(Movie, {'type': 'US'})) == 1
def test_autocommit_transaction(transactional_backend): transactional_backend.filter(Movie,{}).delete() try: transactional_backend.autocommit = True movie = Movie({'name' : 'The Godfather','year' : 1979,'type' : 'US'}) movie.save(transactional_backend) transactional_backend.delete(movie) movie.name = 'Star Wars IV' movie.save(transactional_backend) with pytest.raises(Movie.DoesNotExist): transactional_backend.get(Movie,{'name' : 'The Godfather','year' : 1979,'type' : 'US'}) assert transactional_backend.get(Movie,{'name' : 'Star Wars IV','year' : 1979}) == movie assert len(transactional_backend.filter(Movie,{'type':'US'})) == 1 finally: transactional_backend.autocommit = False
def test_advanced_transaction(transactional_backend): transactional_backend.begin() transactional_backend.filter(Movie,{}).delete() movie = Movie({'name' : 'The Godfather','year' : 1979,'type' : 'US'}) movie.save(transactional_backend) transactional_backend.commit() transactional_backend.delete(movie) movie.name = 'Star Wars IV' movie.save(transactional_backend) with pytest.raises(Movie.DoesNotExist): transactional_backend.get(Movie,{'name' : 'The Godfather','year' : 1979,'type' : 'US'}) transactional_backend.rollback() assert transactional_backend.get(Movie,{'name' : 'The Godfather','year' : 1979}) == movie assert len(transactional_backend.filter(Movie,{'type':'US'})) == 1