示例#1
0
文件: getconn.py 项目: rusek/across
    def test_get_connection_during_result_unpickling(self):
        with make_connection() as conn:

            def on_unpickle():
                self.assertIs(across.get_connection(), conn)

            with self.assertRaises(ValueError):
                across.get_connection()
            conn.call(Box(lambda: PickleObserver(on_unpickle=on_unpickle)))
            with self.assertRaises(ValueError):
                across.get_connection()
示例#2
0
文件: getconn.py 项目: rusek/across
    def test_get_connection_during_call_pickling(self):
        with make_connection() as conn:

            def on_pickle():
                self.assertIs(across.get_connection(), conn)

            with self.assertRaises(ValueError):
                across.get_connection()
            conn.call(nop, PickleObserver(on_pickle=on_pickle))
            with self.assertRaises(ValueError):
                across.get_connection()
示例#3
0
文件: getconn.py 项目: rusek/across
    def test_get_connection_during_call_unpickling(self):
        with make_connection() as conn:

            def on_unpickle():
                remote_conn = across.get_connection()
                self.assertIsInstance(remote_conn, across.Connection)
                self.assertIsNot(remote_conn, conn)

            with self.assertRaises(ValueError):
                across.get_connection()
            conn.call(nop, PickleObserver(on_unpickle=on_unpickle))
            with self.assertRaises(ValueError):
                across.get_connection()
示例#4
0
文件: getconn.py 项目: rusek/across
    def test_get_connection_during_invocation(self):
        with make_connection() as conn:

            def invoke():
                remote_conn = across.get_connection()
                self.assertIsInstance(remote_conn, across.Connection)
                self.assertIsNot(remote_conn, conn)

            with self.assertRaises(ValueError):
                across.get_connection()
            conn.call(Box(invoke))
            with self.assertRaises(ValueError):
                across.get_connection()
示例#5
0
文件: getconn.py 项目: rusek/across
    def test_get_connection_during_error_unpickling(self):
        with make_connection() as conn:

            def on_unpickle():
                self.assertIs(across.get_connection(), conn)

            def func():
                raise ArithmeticError(PickleObserver(on_unpickle=on_unpickle))

            with self.assertRaises(ValueError):
                across.get_connection()
            with self.assertRaises(ArithmeticError):
                conn.call(Box(func))
            with self.assertRaises(ValueError):
                across.get_connection()
示例#6
0
文件: getconn.py 项目: rusek/across
    def test_get_connection_during_result_pickling(self):
        remote_conn = Box()

        def on_pickle():
            self.assertIs(across.get_connection(), remote_conn.value)

        def func():
            remote_conn.value = across.get_connection()
            return PickleObserver(on_pickle=on_pickle)

        with make_connection() as conn:
            with self.assertRaises(ValueError):
                across.get_connection()
            conn.call(Box(func))
            with self.assertRaises(ValueError):
                across.get_connection()
示例#7
0
文件: logging.py 项目: rusek/across
def _setup_remote_logging():
    _remote_conn.value = across.get_connection()
    handler = AcrossHandler()
    handler.addFilter(_RemoteSideFilter())
    handler.setLevel(logging.INFO)
    _logger.addHandler(handler)
    _remote_handler.value = handler
示例#8
0
文件: getconn.py 项目: rusek/across
 def func():
     remote_conn.value = across.get_connection()
     raise ArithmeticError(PickleObserver(on_pickle=on_pickle))
示例#9
0
文件: getconn.py 项目: rusek/across
 def on_pickle():
     self.assertIs(across.get_connection(), remote_conn.value)
示例#10
0
文件: getconn.py 项目: rusek/across
 def on_unpickle():
     self.assertIs(across.get_connection(), conn)
示例#11
0
文件: getconn.py 项目: rusek/across
 def func():
     remote_conn.value = across.get_connection()
     return PickleObserver(on_pickle=on_pickle)
示例#12
0
文件: getconn.py 项目: rusek/across
 def invoke_nested():
     self.assertIs(across.get_connection(), conn)
示例#13
0
文件: getconn.py 项目: rusek/across
 def invoke():
     remote_conn = across.get_connection()
     self.assertIsInstance(remote_conn, across.Connection)
     self.assertIsNot(remote_conn, conn)
     remote_conn.call(Box(invoke_nested))
     self.assertIs(across.get_connection(), remote_conn)
示例#14
0
文件: getconn.py 项目: rusek/across
 def invoke():
     remote_conn = across.get_connection()
     self.assertIsInstance(remote_conn, across.Connection)
     self.assertIsNot(remote_conn, conn)
示例#15
0
文件: logging.py 项目: rusek/across
 def filter(self, record):
     try:
         conn = across.get_connection()
     except ValueError:
         conn = None
     return (conn == _remote_conn.value) != self._negate
示例#16
0
文件: getconn.py 项目: rusek/across
 def on_unpickle():
     remote_conn = across.get_connection()
     self.assertIsInstance(remote_conn, across.Connection)
     self.assertIsNot(remote_conn, conn)
示例#17
0
文件: call.py 项目: rusek/across
 def factorial(n):
     return 1 if n == 0 else n * across.get_connection().call(
         factorial, n - 1)