Example #1
0
 def test_read_pid_raises_IOError(self):
     exc = IOError()
     exc.errno = errno.EAGAIN
     with mock_open(side_effect=exc):
         p = Pidfile('/var/pid')
         with self.assertRaises(IOError):
             p.read_pid()
Example #2
0
 def test_read_pid_bogus_pidfile(self):
     with mock_open() as s:
         s.write('eighteensixteen\n')
         s.seek(0)
         p = Pidfile('/var/pid')
         with self.assertRaises(ValueError):
             p.read_pid()
Example #3
0
 def test_read_pid_partially_written(self):
     with mock_open() as s:
         s.write('1816')
         s.seek(0)
         p = Pidfile('/var/pid')
         with self.assertRaises(ValueError):
             p.read_pid()
Example #4
0
    def test_remove_if_stale_no_pidfile(self):
        p = Pidfile('/var/pid')
        p.read_pid = Mock()
        p.read_pid.return_value = None
        p.remove = Mock()

        self.assertTrue(p.remove_if_stale())
        p.remove.assert_called_with()
Example #5
0
    def test_remove_if_stale_broken_pid(self):
        with override_stdouts():
            p = Pidfile('/var/pid')
            p.read_pid = Mock()
            p.read_pid.side_effect = ValueError()
            p.remove = Mock()

            self.assertTrue(p.remove_if_stale())
            p.remove.assert_called_with()
Example #6
0
 def test_remove_if_stale_process_dead(self, kill):
     with override_stdouts():
         p = Pidfile('/var/pid')
         p.read_pid = Mock()
         p.read_pid.return_value = 1816
         p.remove = Mock()
         exc = OSError()
         exc.errno = errno.ESRCH
         kill.side_effect = exc
         self.assertTrue(p.remove_if_stale())
         kill.assert_called_with(1816, 0)
         p.remove.assert_called_with()
Example #7
0
    def test_remove_if_stale_process_alive(self, kill):
        p = Pidfile('/var/pid')
        p.read_pid = Mock()
        p.read_pid.return_value = 1816
        kill.return_value = 0
        self.assertFalse(p.remove_if_stale())
        kill.assert_called_with(1816, 0)
        p.read_pid.assert_called_with()

        kill.side_effect = OSError()
        kill.side_effect.errno = errno.ENOENT
        self.assertFalse(p.remove_if_stale())
Example #8
0
 def test_remove_if_stale_process_dead(self, kill):
     with conftest.stdouts():
         p = Pidfile('/var/pid')
         p.read_pid = Mock()
         p.read_pid.return_value = 1816
         p.remove = Mock()
         exc = OSError()
         exc.errno = errno.ESRCH
         kill.side_effect = exc
         assert p.remove_if_stale()
         kill.assert_called_with(1816, 0)
         p.remove.assert_called_with()
Example #9
0
    def test_remove_if_stale_process_alive(self, kill):
        p = Pidfile('/var/pid')
        p.read_pid = Mock()
        p.read_pid.return_value = 1816
        kill.return_value = 0
        assert not p.remove_if_stale()
        kill.assert_called_with(1816, 0)
        p.read_pid.assert_called_with()

        kill.side_effect = OSError()
        kill.side_effect.errno = errno.ENOENT
        assert not p.remove_if_stale()
Example #10
0
 def test_read_pid_raises_ENOENT(self):
     exc = IOError()
     exc.errno = errno.ENOENT
     with mock.open(side_effect=exc):
         p = Pidfile('/var/pid')
         assert p.read_pid() is None
Example #11
0
 def test_read_pid(self):
     with mock.open() as s:
         s.write('1816\n')
         s.seek(0)
         p = Pidfile('/var/pid')
         assert p.read_pid() == 1816
Example #12
0
 def test_read_pid_raises_ENOENT(self):
     exc = IOError()
     exc.errno = errno.ENOENT
     with mock_open(side_effect=exc):
         p = Pidfile('/var/pid')
         self.assertIsNone(p.read_pid())
Example #13
0
 def test_read_pid(self):
     with mock_open() as s:
         s.write('1816\n')
         s.seek(0)
         p = Pidfile('/var/pid')
         self.assertEqual(p.read_pid(), 1816)
Example #14
0
 def test_read_pid(self):
     with mock.open() as s:
         s.write('1816\n')
         s.seek(0)
         p = Pidfile('/var/pid')
         assert p.read_pid() == 1816
Example #15
0
 def test_read_pid(self):
     with mock_open() as s:
         s.write('1816\n')
         s.seek(0)
         p = Pidfile('/var/pid')
         self.assertEqual(p.read_pid(), 1816)