Python selectors.SelectorKey() Examples
The following are 30
code examples of selectors.SelectorKey().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
selectors
, or try the search function
.
Example #1
Source File: test_selector.py From asynctest with Apache License 2.0 | 6 votes |
def test_register_fileno(self, selector, selector_mock): with open(os.devnull, 'r') as devnull: if selector_mock: returned_key = selectors.SelectorKey( devnull, devnull.fileno(), selectors.EVENT_READ, "data" ) selector_mock.register.side_effect = _mock_register(selector_mock, returned_key) key = selector.register(devnull, selectors.EVENT_READ, "data") self.assertEqual(key, selector.get_map()[devnull]) if selector_mock: selector_mock.register.assert_called_with(devnull, selectors.EVENT_READ, "data")
Example #2
Source File: test_selector_events.py From android_universal with MIT License | 6 votes |
def test_add_reader_existing(self): reader = mock.Mock() writer = mock.Mock() self.loop._selector.get_key.return_value = selectors.SelectorKey( 1, 1, selectors.EVENT_WRITE, (reader, writer)) cb = lambda: True self.loop.add_reader(1, cb) self.assertTrue(reader.cancel.called) self.assertFalse(self.loop._selector.register.called) self.assertTrue(self.loop._selector.modify.called) fd, mask, (r, w) = self.loop._selector.modify.call_args[0] self.assertEqual(1, fd) self.assertEqual(selectors.EVENT_WRITE | selectors.EVENT_READ, mask) self.assertEqual(cb, r._callback) self.assertEqual(writer, w)
Example #3
Source File: test_selectors.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 6 votes |
def test_select(self): s = self.SELECTOR() self.addCleanup(s.close) rd, wr = self.make_socketpair() s.register(rd, selectors.EVENT_READ) wr_key = s.register(wr, selectors.EVENT_WRITE) result = s.select() for key, events in result: self.assertTrue(isinstance(key, selectors.SelectorKey)) self.assertTrue(events) self.assertFalse(events & ~(selectors.EVENT_READ | selectors.EVENT_WRITE)) self.assertEqual([(wr_key, selectors.EVENT_WRITE)], result)
Example #4
Source File: test_selectors.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 6 votes |
def test_register(self): s = self.SELECTOR() self.addCleanup(s.close) rd, wr = self.make_socketpair() key = s.register(rd, selectors.EVENT_READ, "data") self.assertIsInstance(key, selectors.SelectorKey) self.assertEqual(key.fileobj, rd) self.assertEqual(key.fd, rd.fileno()) self.assertEqual(key.events, selectors.EVENT_READ) self.assertEqual(key.data, "data") # register an unknown event self.assertRaises(ValueError, s.register, 0, 999999) # register an invalid FD self.assertRaises(ValueError, s.register, -10, selectors.EVENT_READ) # register twice self.assertRaises(KeyError, s.register, rd, selectors.EVENT_READ) # register the same FD, but with a different object self.assertRaises(KeyError, s.register, rd.fileno(), selectors.EVENT_READ)
Example #5
Source File: test_selector.py From asynctest with Apache License 2.0 | 6 votes |
def test_fail_on_original_selector_callback(self): loop = asyncio.new_event_loop() asyncio.set_event_loop(loop) try: with unittest.mock.patch.object(loop, "_selector") as mock: class TestCase(asynctest.TestCase): use_default_loop = True def runTest(self): # add a dummy event handle = asyncio.Handle(lambda: None, (), self.loop) key = selectors.SelectorKey(1, 1, selectors.EVENT_READ, (handle, None)) mock.get_map.return_value = {1: key} with self.assertRaisesRegex(AssertionError, "some events watched during the " "tests were not removed"): TestCase().debug() finally: loop.close() asyncio.set_event_loop(None)
Example #6
Source File: test_selector.py From asynctest with Apache License 2.0 | 6 votes |
def test_modify_fd(self, selector, selector_mock): fd = 1 if selector_mock: returned_key = selectors.SelectorKey(fd, fd, selectors.EVENT_READ, "data2") selector_mock.modify.side_effect = _mock_register(selector_mock, returned_key) original_key = selector.register(fd, selectors.EVENT_READ, "data") original_key = copy.copy(original_key) key = selector.modify(fd, selectors.EVENT_READ, "data2") self.assertNotEqual(original_key, key) self.assertEqual(key, selector.get_map()[fd]) if selector_mock: selector_mock.modify.assert_called_with(fd, selectors.EVENT_READ, "data2")
Example #7
Source File: test_selector.py From asynctest with Apache License 2.0 | 6 votes |
def test_modify_fileno(self, selector, selector_mock): with open(os.devnull, 'r') as devnull: if selector_mock: returned_key = selectors.SelectorKey( devnull, devnull.fileno(), selectors.EVENT_READ, "data2" ) selector_mock.modify.side_effect = _mock_register(selector_mock, returned_key) original_key = selector.register(devnull, selectors.EVENT_READ, "data") # modify may update the original key, keep a copy original_key = copy.copy(original_key) key = selector.modify(devnull, selectors.EVENT_READ, "data2") self.assertNotEqual(original_key, key) self.assertEqual(key, selector.get_map()[devnull]) if selector_mock: selector_mock.modify.assert_called_with(devnull, selectors.EVENT_READ, "data2")
Example #8
Source File: test_selectors.py From ironpython3 with Apache License 2.0 | 6 votes |
def test_select(self): s = self.SELECTOR() self.addCleanup(s.close) rd, wr = self.make_socketpair() s.register(rd, selectors.EVENT_READ) wr_key = s.register(wr, selectors.EVENT_WRITE) result = s.select() for key, events in result: self.assertTrue(isinstance(key, selectors.SelectorKey)) self.assertTrue(events) self.assertFalse(events & ~(selectors.EVENT_READ | selectors.EVENT_WRITE)) self.assertEqual([(wr_key, selectors.EVENT_WRITE)], result)
Example #9
Source File: test_selectors.py From ironpython3 with Apache License 2.0 | 6 votes |
def test_register(self): s = self.SELECTOR() self.addCleanup(s.close) rd, wr = self.make_socketpair() key = s.register(rd, selectors.EVENT_READ, "data") self.assertIsInstance(key, selectors.SelectorKey) self.assertEqual(key.fileobj, rd) self.assertEqual(key.fd, rd.fileno()) self.assertEqual(key.events, selectors.EVENT_READ) self.assertEqual(key.data, "data") # register an unknown event self.assertRaises(ValueError, s.register, 0, 999999) # register an invalid FD self.assertRaises(ValueError, s.register, -10, selectors.EVENT_READ) # register twice self.assertRaises(KeyError, s.register, rd, selectors.EVENT_READ) # register the same FD, but with a different object self.assertRaises(KeyError, s.register, rd.fileno(), selectors.EVENT_READ)
Example #10
Source File: test_selectors.py From Fluid-Designer with GNU General Public License v3.0 | 6 votes |
def test_select(self): s = self.SELECTOR() self.addCleanup(s.close) rd, wr = self.make_socketpair() s.register(rd, selectors.EVENT_READ) wr_key = s.register(wr, selectors.EVENT_WRITE) result = s.select() for key, events in result: self.assertTrue(isinstance(key, selectors.SelectorKey)) self.assertTrue(events) self.assertFalse(events & ~(selectors.EVENT_READ | selectors.EVENT_WRITE)) self.assertEqual([(wr_key, selectors.EVENT_WRITE)], result)
Example #11
Source File: test_selectors.py From Fluid-Designer with GNU General Public License v3.0 | 6 votes |
def test_register(self): s = self.SELECTOR() self.addCleanup(s.close) rd, wr = self.make_socketpair() key = s.register(rd, selectors.EVENT_READ, "data") self.assertIsInstance(key, selectors.SelectorKey) self.assertEqual(key.fileobj, rd) self.assertEqual(key.fd, rd.fileno()) self.assertEqual(key.events, selectors.EVENT_READ) self.assertEqual(key.data, "data") # register an unknown event self.assertRaises(ValueError, s.register, 0, 999999) # register an invalid FD self.assertRaises(ValueError, s.register, -10, selectors.EVENT_READ) # register twice self.assertRaises(KeyError, s.register, rd, selectors.EVENT_READ) # register the same FD, but with a different object self.assertRaises(KeyError, s.register, rd.fileno(), selectors.EVENT_READ)
Example #12
Source File: test_selector_events.py From android_universal with MIT License | 5 votes |
def test_process_events_read(self): reader = mock.Mock() reader._cancelled = False self.loop._add_callback = mock.Mock() self.loop._process_events( [(selectors.SelectorKey( 1, 1, selectors.EVENT_READ, (reader, None)), selectors.EVENT_READ)]) self.assertTrue(self.loop._add_callback.called) self.loop._add_callback.assert_called_with(reader)
Example #13
Source File: test_selector_events.py From android_universal with MIT License | 5 votes |
def test_remove_writer_read_write(self): reader = mock.Mock() writer = mock.Mock() self.loop._selector.get_key.return_value = selectors.SelectorKey( 1, 1, selectors.EVENT_READ | selectors.EVENT_WRITE, (reader, writer)) self.assertTrue( self.loop.remove_writer(1)) self.assertFalse(self.loop._selector.unregister.called) self.assertEqual( (1, selectors.EVENT_READ, (reader, None)), self.loop._selector.modify.call_args[0])
Example #14
Source File: utils.py From android_universal with MIT License | 5 votes |
def register(self, fileobj, events, data=None): key = selectors.SelectorKey(fileobj, 0, events, data) self.keys[fileobj] = key return key
Example #15
Source File: test_selector_events.py From android_universal with MIT License | 5 votes |
def test_remove_writer(self): self.loop._selector.get_key.return_value = selectors.SelectorKey( 1, 1, selectors.EVENT_WRITE, (None, None)) self.assertFalse(self.loop.remove_writer(1)) self.assertTrue(self.loop._selector.unregister.called)
Example #16
Source File: test_selector_events.py From android_universal with MIT License | 5 votes |
def test_process_events_read_cancelled(self): reader = mock.Mock() reader.cancelled = True self.loop._remove_reader = mock.Mock() self.loop._process_events( [(selectors.SelectorKey( 1, 1, selectors.EVENT_READ, (reader, None)), selectors.EVENT_READ)]) self.loop._remove_reader.assert_called_with(1)
Example #17
Source File: test_selector_events.py From android_universal with MIT License | 5 votes |
def test_process_events_write(self): writer = mock.Mock() writer._cancelled = False self.loop._add_callback = mock.Mock() self.loop._process_events( [(selectors.SelectorKey(1, 1, selectors.EVENT_WRITE, (None, writer)), selectors.EVENT_WRITE)]) self.loop._add_callback.assert_called_with(writer)
Example #18
Source File: test_selector_events.py From android_universal with MIT License | 5 votes |
def test_remove_reader_read_write(self): reader = mock.Mock() writer = mock.Mock() self.loop._selector.get_key.return_value = selectors.SelectorKey( 1, 1, selectors.EVENT_READ | selectors.EVENT_WRITE, (reader, writer)) self.assertTrue( self.loop.remove_reader(1)) self.assertFalse(self.loop._selector.unregister.called) self.assertEqual( (1, selectors.EVENT_WRITE, (None, writer)), self.loop._selector.modify.call_args[0])
Example #19
Source File: test_selector_events.py From android_universal with MIT License | 5 votes |
def test_remove_reader(self): self.loop._selector.get_key.return_value = selectors.SelectorKey( 1, 1, selectors.EVENT_READ, (None, None)) self.assertFalse(self.loop.remove_reader(1)) self.assertTrue(self.loop._selector.unregister.called)
Example #20
Source File: test_selector_events.py From android_universal with MIT License | 5 votes |
def test_add_reader_existing_writer(self): writer = mock.Mock() self.loop._selector.get_key.return_value = selectors.SelectorKey( 1, 1, selectors.EVENT_WRITE, (None, writer)) cb = lambda: True self.loop.add_reader(1, cb) self.assertFalse(self.loop._selector.register.called) self.assertTrue(self.loop._selector.modify.called) fd, mask, (r, w) = self.loop._selector.modify.call_args[0] self.assertEqual(1, fd) self.assertEqual(selectors.EVENT_WRITE | selectors.EVENT_READ, mask) self.assertEqual(cb, r._callback) self.assertEqual(writer, w)
Example #21
Source File: _unix.py From asyncqt with BSD 2-Clause "Simplified" License | 5 votes |
def register(self, fileobj, events, data=None): if (not events) or (events & ~(EVENT_READ | EVENT_WRITE)): raise ValueError("Invalid events: {!r}".format(events)) key = selectors.SelectorKey(fileobj, self._fileobj_lookup(fileobj), events, data) if key.fd in self._fd_to_key: raise KeyError("{!r} (FD {}) is already registered".format(fileobj, key.fd)) self._fd_to_key[key.fd] = key if events & EVENT_READ: notifier = QtCore.QSocketNotifier(key.fd, QtCore.QSocketNotifier.Read) notifier.activated.connect(self.__on_read_activated) self.__read_notifiers[key.fd] = notifier if events & EVENT_WRITE: notifier = QtCore.QSocketNotifier(key.fd, QtCore.QSocketNotifier.Write) notifier.activated.connect(self.__on_write_activated) self.__write_notifiers[key.fd] = notifier return key
Example #22
Source File: test_telnetlib.py From android_universal with MIT License | 5 votes |
def register(self, fileobj, events, data=None): key = selectors.SelectorKey(fileobj, 0, events, data) self.keys[fileobj] = key return key
Example #23
Source File: common_func.py From shootback with MIT License | 5 votes |
def _sel_disable_event(self, conn, ev): try: _key = self.sel.get_key(conn) # type:selectors.SelectorKey except KeyError: pass else: if _key.events == EVENT_READ_WRITE: self.sel.modify(conn, EVENT_READ_WRITE ^ ev) else: self.sel.unregister(conn)
Example #24
Source File: test_selectors.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_register_bad_fd(self): # a file descriptor that's been closed should raise an OSError # with EBADF s = self.SELECTOR() bad_f = support.make_bad_fd() with self.assertRaises(OSError) as cm: s.register(bad_f, selectors.EVENT_READ) self.assertEqual(cm.exception.errno, errno.EBADF) # the SelectorKey has been removed with self.assertRaises(KeyError): s.get_key(bad_f)
Example #25
Source File: test_selectors.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_register_file(self): # epoll(7) returns EPERM when given a file to watch s = self.SELECTOR() with tempfile.NamedTemporaryFile() as f: with self.assertRaises(IOError): s.register(f, selectors.EVENT_READ) # the SelectorKey has been removed with self.assertRaises(KeyError): s.get_key(f)
Example #26
Source File: test_telnetlib.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def register(self, fileobj, events, data=None): key = selectors.SelectorKey(fileobj, 0, events, data) self.keys[fileobj] = key return key
Example #27
Source File: test_selector.py From asynctest with Apache License 2.0 | 5 votes |
def test_unregister_fileno(self, selector, selector_mock): with open(os.devnull, 'r') as devnull: if selector_mock: key = selectors.SelectorKey(devnull, devnull.fileno(), selectors.EVENT_READ, "data") selector_mock.register.side_effect = _mock_register(selector_mock, key) selector_mock.unregister.side_effect = _mock_unregister(selector_mock, key) selector.register(devnull, selectors.EVENT_READ, "data") selector.unregister(devnull) self.assertNotIn(devnull, selector.get_map()) self.assertNotIn(devnull.fileno(), selector.get_map())
Example #28
Source File: test_selectors.py From ironpython3 with Apache License 2.0 | 5 votes |
def test_register_bad_fd(self): # a file descriptor that's been closed should raise an OSError # with EBADF s = self.SELECTOR() bad_f = support.make_bad_fd() with self.assertRaises(OSError) as cm: s.register(bad_f, selectors.EVENT_READ) self.assertEqual(cm.exception.errno, errno.EBADF) # the SelectorKey has been removed with self.assertRaises(KeyError): s.get_key(bad_f)
Example #29
Source File: test_selectors.py From ironpython3 with Apache License 2.0 | 5 votes |
def test_register_file(self): # epoll(7) returns EPERM when given a file to watch s = self.SELECTOR() with tempfile.NamedTemporaryFile() as f: with self.assertRaises(IOError): s.register(f, selectors.EVENT_READ) # the SelectorKey has been removed with self.assertRaises(KeyError): s.get_key(f)
Example #30
Source File: test_telnetlib.py From ironpython3 with Apache License 2.0 | 5 votes |
def register(self, fileobj, events, data=None): key = selectors.SelectorKey(fileobj, 0, events, data) self.keys[fileobj] = key return key