示例#1
0
    def test_port_is_free_uses_cached_result_when_checking_twice(self):
        port_is_free(self.job)
        port_is_free(self.job)

        # Only once
        self.check_nonzero_exit.assert_called_once_with(
            'netstat -tuna | grep -q 1234')
示例#2
0
    def test_port_is_free_checks_again_after_ten_seconds(self):
        self.time.side_effect = (
            # Save time in global
            1497192855.084605,
            # Check time for the first time after setting globals
            1497192856.064605 + 10,
            # Save time in global, updating the first timestamp
            1497192856.084605 + 10,
        )

        port_is_free(self.job)
        port_is_free(self.job)

        expected_calls = [call('netstat -tuna | grep -q 1234')] * 2
        self.assertCountEqual(expected_calls,
                              self.check_nonzero_exit.mock_calls)
示例#3
0
    def test_port_is_free_returns_false_if_port_is_already_bound(self):
        ret = port_is_free(self.job)

        self.assertFalse(ret)
示例#4
0
    def test_port_is_free_returns_true_if_port_is_free(self):
        self.check_nonzero_exit.return_value = False

        ret = port_is_free(self.job)

        self.assertTrue(ret)
示例#5
0
    def test_port_is_free_checks_port_is_free(self):
        port_is_free(self.job)

        self.check_nonzero_exit.assert_called_once_with(
            'netstat -tuna | grep -q 1234')
示例#6
0
    def test_port_is_free_gets_flow_details_for_job_uuid(self):
        port_is_free(self.job)

        self.get_flow_details_by_uuid.assert_called_once_with(self.flow_uuid)