示例#1
0
    def _setUp(self):
        self._init_resources()

        # check if the fixtures failed to get
        # an engine.  The test setUp() itself should also be checking
        # this and raising skipTest.
        if not hasattr(self, 'engine'):
            return

        engine = self.engine
        self.addCleanup(lambda: self._delete_from_schema(engine))

        self.sessionmaker = session.get_maker(engine)

        self.enginefacade_factory = enginefacade._TestTransactionFactory(
            self.engine, self.sessionmaker, apply_global=False,
            synchronous_reader=True)

        _restore_factory = db_api.context_manager._root_factory

        db_api.context_manager._root_factory = self.enginefacade_factory

        engine = db_api.context_manager.get_legacy_facade().get_engine()

        self.addCleanup(
            lambda: setattr(
                db_api.context_manager,
                "_root_factory", _restore_factory))

        self.useFixture(EnableSQLiteFKsFixture(engine))
示例#2
0
    def _setUp(self):
        self._init_resources()

        # check if the fixtures failed to get
        # an engine.  The test setUp() itself should also be checking
        # this and raising skipTest.
        if not hasattr(self, 'engine'):
            return

        engine = self.engine
        self.addCleanup(lambda: self._delete_from_schema(engine))

        self.sessionmaker = session.get_maker(engine)

        _restore_factory = db_api.context_manager._root_factory

        self.enginefacade_factory = enginefacade._TestTransactionFactory(
            self.engine,
            self.sessionmaker,
            from_factory=_restore_factory,
            apply_global=False)

        db_api.context_manager._root_factory = self.enginefacade_factory

        engine = db_api.context_manager.writer.get_engine()

        self.addCleanup(lambda: setattr(db_api.context_manager,
                                        "_root_factory", _restore_factory))

        self.useFixture(EnableSQLiteFKsFixture(engine))
示例#3
0
    def setUp(self):
        super(DbFixture, self).setUp()

        testresources.setUpResources(self.test, self.test.resources,
                                     testresources._get_result())
        self.addCleanup(testresources.tearDownResources, self.test,
                        self.test.resources, testresources._get_result())

        if not self.test._has_db_resource():
            msg = self.test._get_db_resource_not_available_reason()
            if self.test.SKIP_ON_UNAVAILABLE_DB:
                self.test.skipTest(msg)
            else:
                self.test.fail(msg)

        if self.test.SCHEMA_SCOPE:
            self.test.engine = self.test.transaction_engine
            self.test.sessionmaker = session.get_maker(
                self.test.transaction_engine)
        else:
            self.test.engine = self.test.db.engine
            self.test.sessionmaker = session.get_maker(self.test.engine)

        self.addCleanup(setattr, self.test, 'sessionmaker', None)
        self.addCleanup(setattr, self.test, 'engine', None)

        self.test.enginefacade = enginefacade._TestTransactionFactory(
            self.test.engine, self.test.sessionmaker, apply_global=True)
        self.addCleanup(self.test.enginefacade.dispose_global)
示例#4
0
    def setUp(self):
        super(DbFixture, self).setUp()

        testresources.setUpResources(self.test, self.test.resources,
                                     testresources._get_result())
        self.addCleanup(testresources.tearDownResources, self.test,
                        self.test.resources, testresources._get_result())
        if not hasattr(self.test, 'db'):
            msg = "backend '%s' unavailable" % self.DRIVER
            if self.skip_on_unavailable_db:
                self.test.skip(msg)
            else:
                self.test.fail(msg)

        if self.test.SCHEMA_SCOPE:
            self.test.engine = self.test.transaction_engine
            self.test.sessionmaker = session.get_maker(
                self.test.transaction_engine)
        else:
            self.test.engine = self.test.db.engine
            self.test.sessionmaker = session.get_maker(self.test.engine)

        self.addCleanup(setattr, self.test, 'sessionmaker', None)
        self.addCleanup(setattr, self.test, 'engine', None)

        self.test.enginefacade = enginefacade._TestTransactionFactory(
            self.test.engine,
            self.test.sessionmaker,
            apply_global=True,
            synchronous_reader=True)
        self.addCleanup(self.test.enginefacade.dispose_global)
示例#5
0
    def setUp(self):
        super(DbFixture, self).setUp()

        testresources.setUpResources(
            self.test, self.test.resources, testresources._get_result())
        self.addCleanup(
            testresources.tearDownResources,
            self.test, self.test.resources, testresources._get_result()
        )
        if not hasattr(self.test, 'db'):
            msg = "backend '%s' unavailable" % self.DRIVER
            if self.skip_on_unavailable_db:
                self.test.skip(msg)
            else:
                self.test.fail(msg)

        if self.test.SCHEMA_SCOPE:
            self.test.engine = self.test.transaction_engine
            self.test.sessionmaker = session.get_maker(
                self.test.transaction_engine)
        else:
            self.test.engine = self.test.db.engine
            self.test.sessionmaker = session.get_maker(self.test.engine)

        self.addCleanup(setattr, self.test, 'sessionmaker', None)
        self.addCleanup(setattr, self.test, 'engine', None)

        self.test.enginefacade = enginefacade._TestTransactionFactory(
            self.test.engine, self.test.sessionmaker, apply_global=True,
            synchronous_reader=True)
        self.addCleanup(self.test.enginefacade.dispose_global)
示例#6
0
    def setUp(self):
        super(EngineFacadeFixture, self).setUp()

        self._existing_factory = self._ctx_manager._root_factory
        self._ctx_manager._root_factory = enginefacade._TestTransactionFactory(
            self._engine, self._sessionmaker, apply_global=False, synchronous_reader=True
        )
        self.addCleanup(self.cleanup)
示例#7
0
    def setUp(self):
        super(EngineFacadeFixture, self).setUp()

        self._existing_factory = self._ctx_manager._root_factory
        self._ctx_manager._root_factory = enginefacade._TestTransactionFactory(
            self._engine, self._sessionmaker, apply_global=False,
            synchronous_reader=True)
        self.addCleanup(self.cleanup)
示例#8
0
    def _setUp(self):
        self.engine = db_api.CONTEXT_WRITER.get_engine()
        self.generate_schema(self.engine)
        self._init_resources()

        self.sessionmaker = session.get_maker(self.engine)

        _restore_factory = db_api.get_context_manager()._root_factory

        self.enginefacade_factory = enginefacade._TestTransactionFactory(
            self.engine,
            self.sessionmaker,
            from_factory=_restore_factory,
            apply_global=False)

        db_api.get_context_manager()._root_factory = self.enginefacade_factory

        self.addCleanup(lambda: self.delete_from_schema(self.engine))
        self.addCleanup(lambda: setattr(db_api.get_context_manager(),
                                        "_root_factory", _restore_factory))

        self.useFixture(_EnableSQLiteFKsFixture(self.engine))