Пример #1
0
    def test_notify_on_set(self):
        # If call sql.set_global_engine(), notify callbacks get called.

        cb_mon = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon.call_this)
        fake_engine = object()
        sql.set_global_engine(fake_engine)

        cb_mon.check()
Пример #2
0
    def test_notify_on_set(self):
        # If call sql.set_global_engine(), notify callbacks get called.

        cb_mon = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon.call_this)
        fake_engine = object()
        sql.set_global_engine(fake_engine)

        cb_mon.check()
Пример #3
0
    def test_notify_register_same(self):
        # If you register the same callback twice, only gets called once.
        cb_mon = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon.call_this)
        sql.register_global_engine_callback(cb_mon.call_this)

        fake_engine = object()
        # Note that cb_mon.call_this would raise if it's called twice.
        sql.set_global_engine(fake_engine)

        cb_mon.check()
Пример #4
0
    def test_notify_register_same(self):
        # If you register the same callback twice, only gets called once.
        cb_mon = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon.call_this)
        sql.register_global_engine_callback(cb_mon.call_this)

        fake_engine = object()
        # Note that cb_mon.call_this would raise if it's called twice.
        sql.set_global_engine(fake_engine)

        cb_mon.check()
Пример #5
0
    def test_multi_notify(self):
        # You can also set multiple notify callbacks and they each get called.

        cb_mon1 = CallbackMonitor()
        cb_mon2 = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon1.call_this)
        sql.register_global_engine_callback(cb_mon2.call_this)

        fake_engine = object()
        sql.set_global_engine(fake_engine)

        cb_mon1.check()
        cb_mon2.check()
Пример #6
0
    def test_multi_notify(self):
        # You can also set multiple notify callbacks and they each get called.

        cb_mon1 = CallbackMonitor()
        cb_mon2 = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon1.call_this)
        sql.register_global_engine_callback(cb_mon2.call_this)

        fake_engine = object()
        sql.set_global_engine(fake_engine)

        cb_mon1.check()
        cb_mon2.check()
Пример #7
0
    def test_set_same_engine(self):
        # If you set the global engine to the same engine, callbacks don't get
        # called.

        fake_engine = object()

        sql.set_global_engine(fake_engine)

        cb_mon = CallbackMonitor(expect_called=False)
        sql.register_global_engine_callback(cb_mon.call_this)

        # Note that cb_mon.call_this would raise if it's called.
        sql.set_global_engine(fake_engine)

        cb_mon.check()
Пример #8
0
    def test_notify_once(self):
        # After a callback is called, it's not called again if set global
        # engine again.

        cb_mon = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon.call_this)
        fake_engine = object()
        sql.set_global_engine(fake_engine)

        fake_engine = object()
        # Note that cb_mon.call_this would raise if it's called again.
        sql.set_global_engine(fake_engine)

        cb_mon.check()
Пример #9
0
    def test_set_same_engine(self):
        # If you set the global engine to the same engine, callbacks don't get
        # called.

        fake_engine = object()

        sql.set_global_engine(fake_engine)

        cb_mon = CallbackMonitor(expect_called=False)
        sql.register_global_engine_callback(cb_mon.call_this)

        # Note that cb_mon.call_this would raise if it's called.
        sql.set_global_engine(fake_engine)

        cb_mon.check()
Пример #10
0
    def test_notify_once(self):
        # After a callback is called, it's not called again if set global
        # engine again.

        cb_mon = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon.call_this)
        fake_engine = object()
        sql.set_global_engine(fake_engine)

        fake_engine = object()
        # Note that cb_mon.call_this would raise if it's called again.
        sql.set_global_engine(fake_engine)

        cb_mon.check()
Пример #11
0
    def test_callback_throws(self):
        # If a callback function raises,
        # a) the caller doesn't know about it,
        # b) other callbacks are still called

        cb_mon1 = CallbackMonitor(raise_=True)
        cb_mon2 = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon1.call_this)
        sql.register_global_engine_callback(cb_mon2.call_this)

        fake_engine = object()
        sql.set_global_engine(fake_engine)

        cb_mon1.check()
        cb_mon2.check()
Пример #12
0
    def test_callback_throws(self):
        # If a callback function raises,
        # a) the caller doesn't know about it,
        # b) other callbacks are still called

        cb_mon1 = CallbackMonitor(raise_=True)
        cb_mon2 = CallbackMonitor()

        sql.register_global_engine_callback(cb_mon1.call_this)
        sql.register_global_engine_callback(cb_mon2.call_this)

        fake_engine = object()
        sql.set_global_engine(fake_engine)

        cb_mon1.check()
        cb_mon2.check()