You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
bazarr/libs/test/open_close_test.py

64 lines
1.5 KiB

import os
import unittest
import logging
import time
import threading
import uuid
from subprocess import Popen, PIPE
from signalrcore.hub_connection_builder import HubConnectionBuilder
from signalrcore.subject import Subject
from test.base_test_case import BaseTestCase, Urls
class TestClientStreamMethod(BaseTestCase):
def setUp(self):
pass
def tearDown(self):
pass
def test_start(self):
connection = HubConnectionBuilder()\
.with_url(self.server_url, options={"verify_ssl": False})\
.configure_logging(logging.ERROR)\
.build()
_lock = threading.Lock()
self.assertTrue(_lock.acquire(timeout=30))
connection.on_open(lambda: _lock.release())
connection.on_close(lambda: _lock.release())
result = connection.start()
self.assertTrue(result)
self.assertTrue(_lock.acquire(timeout=30)) # Released on open
result = connection.start()
self.assertFalse(result)
connection.stop()
def test_open_close(self):
self.connection = self.get_connection()
_lock = threading.Lock()
self.connection.on_open(lambda: _lock.release())
self.connection.on_close(lambda: _lock.release())
self.assertTrue(_lock.acquire())
self.connection.start()
self.assertTrue(_lock.acquire())
self.connection.stop()
self.assertTrue(_lock.acquire())
_lock.release()
del _lock