Exemplo n.º 1
0
    def test_wait_io_close_is_called(self):
        selector = selectors.DefaultSelector()
        self.addCleanup(selector.close)

        def fake_constructor():
            return selector

        old_selector = wait.DefaultSelector
        wait.DefaultSelector = fake_constructor
        self.addCleanup(setattr, wait, "DefaultSelector", old_selector)

        rd, wr = self.make_socketpair()
        wait.wait_for_write([rd, wr], 0.001)
        self.assertIs(selector._map, None)
Exemplo n.º 2
0
    def test_wait_io_close_is_called(self):
        selector = self.SELECTOR()
        self.addCleanup(selector.close)

        def fake_constructor(*args, **kwargs):
            return selector

        old_selector = wait.DefaultSelector
        wait.DefaultSelector = fake_constructor
        self.addCleanup(setattr, wait, "DefaultSelector", old_selector)

        rd, wr = self.make_socketpair()
        wait.wait_for_write([rd, wr], 0.001)
        self.assertIs(selector._map, None)
Exemplo n.º 3
0
 def test_wait_for_write_multiple_socket(self):
     wr, wr2 = self.make_socketpair()
     result = wait.wait_for_write([wr, wr2], timeout=SHORT_SELECT)
     # assertItemsEqual renamed in Python 3.x
     if hasattr(self, "assertItemsEqual"):
         self.assertItemsEqual([wr, wr2], result)
     else:
         self.assertCountEqual([wr, wr2], result)
Exemplo n.º 4
0
 def test_wait_for_write_multiple_socket(self):
     wr, wr2 = self.make_socketpair()
     result = wait.wait_for_write([wr, wr2], timeout=SHORT_SELECT)
     # assertItemsEqual renamed in Python 3.x
     if hasattr(self, "assertItemsEqual"):
         self.assertItemsEqual([wr, wr2], result)
     else:
         self.assertCountEqual([wr, wr2], result)
Exemplo n.º 5
0
def test_wait_for_read_write(spair):
    a, b = spair

    assert not wait_for_read(a, 0)
    assert wait_for_write(a, 0)

    b.send(b"x")

    assert wait_for_read(a, 0)
    assert wait_for_write(a, 0)

    # Fill up the socket with data
    a.setblocking(False)
    try:
        while True:
            a.send(b"x" * 999999)
    except (OSError, socket.error):
        pass

    # Now it's not writable anymore
    assert not wait_for_write(a, 0)
Exemplo n.º 6
0
def test_wait_for_read_write(spair):
    a, b = spair

    assert not wait_for_read(a, 0)
    assert wait_for_write(a, 0)

    b.send(b"x")

    assert wait_for_read(a, 0)
    assert wait_for_write(a, 0)

    # Fill up the socket with data
    a.setblocking(False)
    try:
        while True:
            a.send(b"x" * 999999)
    except (OSError, socket.error):
        pass

    # Now it's not writable anymore
    assert not wait_for_write(a, 0)
Exemplo n.º 7
0
def test_wait_for_read_write(spair: TYPE_SOCKET_PAIR) -> None:
    a, b = spair

    assert not wait_for_read(a, 0)
    assert wait_for_write(a, 0)

    b.send(b"x")

    assert wait_for_read(a, 0)
    assert wait_for_write(a, 0)

    # Fill up the socket with data
    a.setblocking(False)
    try:
        while True:
            a.send(b"x" * 999999)
    except OSError:
        pass

    # Now it's not writable anymore
    assert not wait_for_write(a, 0)
Exemplo n.º 8
0
 def test_wait_for_write_empty(self):
     self.assertEqual([], wait.wait_for_write([], timeout=SHORT_SELECT))
Exemplo n.º 9
0
 def test_wait_for_write_single_socket(self):
     wr, wr2 = self.make_socketpair()
     self.assertEqual([wr], wait.wait_for_write(wr, timeout=SHORT_SELECT))
Exemplo n.º 10
0
 def test_wait_for_write_empty(self):
     self.assertEqual([], wait.wait_for_write([], timeout=SHORT_SELECT))
Exemplo n.º 11
0
 def test_wait_for_write_single_socket(self):
     wr, wr2 = self.make_socketpair()
     self.assertEqual([wr], wait.wait_for_write(wr, timeout=SHORT_SELECT))