def test_register_twice_does_not_duplicate_fd(self, select):
     poller = SelectPoller()
     select.select.return_value = (poller._fds, None, None)
     poller.register(0)
     poller.register(0)
     fd = poller.poll()
     self.assertEqual(fd, [0])
 def test_register_twice_does_not_duplicate_fd(self, select):
     poller = SelectPoller()
     select.select.return_value = (poller._fds, None, None)
     poller.register(0)
     poller.register(0)
     fd = poller.poll()
     self.assertEqual(fd, [0])
    def test_timeout_when_no_registered_fds(self):
        poller = SelectPoller(timeout=0.5)
        a = time.time()
        fd = poller.poll()
        b = time.time()
        self.assertEqual(fd, [])

        d = b - a 
        if not (0.48 < d < 0.52):
            self.fail("Did not wait for the appropriate amount of time: %f" % d)
    def test_timeout_when_no_registered_fds(self):
        poller = SelectPoller(timeout=0.5)
        a = time.time()
        fd = poller.poll()
        b = time.time()
        self.assertEqual(fd, [])

        d = b - a
        if not (0.48 < d < 0.52):
            self.fail("Did not wait for the appropriate amount of time: %f" %
                      d)
 def test_unregister_twice_has_no_side_effect(self):
     poller = SelectPoller()
     poller.register(0)
     poller.unregister(0)
     try:
         poller.unregister(0)
     except Exception as ex:
         self.fail("Shouldn't have failed: %s" % ex)
    def test_release_poller(self, select):
        poller = SelectPoller()
        select.select.return_value = (poller._fds, None, None)
        
        poller.register(0)
        poller.register(1)
        fd = poller.poll()
        self.assertEqual(fd, [0, 1])

        poller.unregister(0)
        fd = poller.poll()
        self.assertEqual(fd, [1])
        
        poller.release()
        fd = poller.poll()
        self.assertEqual(fd, [])
 def test_unregister_twice_has_no_side_effect(self):
     poller = SelectPoller()
     poller.register(0)
     poller.unregister(0)
     try:
         poller.unregister(0)
     except Exception as ex:
         self.fail("Shouldn't have failed: %s" % ex)
    def test_release_poller(self, select):
        poller = SelectPoller()
        select.select.return_value = (poller._fds, None, None)

        poller.register(0)
        poller.register(1)
        fd = poller.poll()
        self.assertEqual(fd, [0, 1])

        poller.unregister(0)
        fd = poller.poll()
        self.assertEqual(fd, [1])

        poller.release()
        fd = poller.poll()
        self.assertEqual(fd, [])
 def test_register_twice_does_not_duplicate_fd(self):
     poller = SelectPoller()
     poller.register(0)
     poller.register(0)
     fd = poller.poll()
     self.assertEqual(fd, [0])