sqlalchemy_continuum.versioning_manager.transaction_cls

Here are the examples of the python api sqlalchemy_continuum.versioning_manager.transaction_cls taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

10 Examples 7

Example 1

Project: sqlalchemy-continuum Source File: test_concrete_inheritance.py
    def test_transaction_changed_entities(self):
        article = self.Article()
        article.name = u'Text 1'
        self.session.add(article)
        self.session.commit()
        Transaction = versioning_manager.transaction_cls
        transaction = (
            self.session.query(Transaction)
            .order_by(sa.sql.expression.desc(Transaction.issued_at))
        ).first()
        assert transaction.entity_names == [u'Article']
        assert transaction.changed_entities

Example 2

Project: sqlalchemy-continuum Source File: test_flask.py
    def test_raw_sql_and_flush(self):
        user = self.User(name=u'Rambo')
        self.session.add(user)
        self.session.commit()
        self.login(user)
        self.client.get(url_for('.test_raw_sql_and_flush'))
        assert (
            self.session.query(versioning_manager.transaction_cls).count() == 2
        )

Example 3

Project: sqlalchemy-continuum Source File: test_i18n.py
    def test_changed_entities(self):
        article = self.Article()
        article.description = u'something'
        self.session.add(article)
        self.session.commit()
        article.name = u'Some article'
        self.session.commit()

        tx_log = versioning_manager.transaction_cls
        tx = (
            self.session.query(tx_log)
            .order_by(sa.desc(tx_log.id))
            .first()
        )
        assert 'ArticleTranslation' in tx.entity_names

Example 4

Project: sqlalchemy-continuum Source File: test_i18n.py
    def test_history_with_many_translations(self):
        self.article = self.Article()
        self.article.description = u'Some text'
        self.session.add(self.article)

        self.article.translations.fi.name = u'Text 1'
        self.article.translations.en.name = u'Text 2'

        self.session.commit()

        Transaction = versioning_manager.transaction_cls
        transaction = self.session.query(Transaction).one()

        assert transaction.changes[1].entity_name == u'ArticleTranslation'

Example 5

Project: sqlalchemy-continuum Source File: test_insert.py
    def test_does_not_create_transaction(self):
        item = self.TextItem()
        self.session.add(item)
        self.session.commit()

        assert self.session.query(
            versioning_manager.transaction_cls
        ).count() == 0

Example 6

Project: sqlalchemy-continuum Source File: test_transaction.py
    def test_only_saves_transaction_if_actual_modifications(self):
        self.article.name = u'Some article'
        self.session.commit()
        self.article.name = u'Some article'
        self.session.commit()
        assert self.session.query(
            versioning_manager.transaction_cls
        ).count() == 1

Example 7

Project: sqlalchemy-continuum Source File: test_transaction.py
Function: test_repr
    def test_repr(self):
        transaction = self.session.query(
            versioning_manager.transaction_cls
        ).first()
        assert (
            '<Transaction id=%d, issued_at=%r>' % (
                transaction.id,
                transaction.issued_at
            ) ==
            repr(transaction)
        )

Example 8

Project: sqlalchemy-continuum Source File: test_flask.py
    def setup_method(self, method):
        # Mock the event registering of Flask-SQLAlchemy. Currently there is no
        # way of unregistering Flask-SQLAlchemy event listeners, hence the
        # event listeners would affect other tests.
        flexmock(_SessionSignalEvents).should_receive('register')

        self.db = SQLAlchemy()
        make_versioned()

        versioning_manager.transaction_cls = TransactionFactory()
        versioning_manager.options['native_versioning'] = (
            uses_native_versioning()
        )

        self.create_models()

        sa.orm.configure_mappers()

        self.app = Flask(__name__)
        # self.app.config['SQLALCHEMY_ECHO'] = True
        self.app.config['SQLALCHEMY_DATABASE_URI'] = get_dns_from_driver(
            get_driver_name(os.environ.get('DB', 'sqlite'))
        )
        self.db.init_app(self.app)
        self.app.secret_key = 'secret'
        self.app.debug = True
        self.client = self.app.test_client()
        self.context = self.app.test_request_context()
        self.context.push()
        self.db.create_all()

Example 9

Project: sqlalchemy-continuum Source File: test_raw_sql.py
    def assert_has_single_transaction(self):
        assert (
            self.session.query(versioning_manager.transaction_cls)
            .count() == 1
        )

Example 10

Project: sqlalchemy-continuum Source File: test_transaction_class.py
    def test_with_versioned_class(self):
        assert (
            transaction_class(self.Article) ==
            versioning_manager.transaction_cls
        )