def _test_restart_service_on_sighup(self, service, workers=1):

        self._start_server(callback=service, workers=workers)
        os.kill(self.service_pid, signal.SIGHUP)

        expected_msg = FAKE_START_MSG * workers * 2

        # Wait for temp file to be created and its size reaching the expected
        # value
        expected_size = len(expected_msg)
        condition = lambda: (os.path.isfile(self.temp_file)
                             and os.stat(self.temp_file).st_size ==
                             expected_size)

        utils.wait_until_true(
            condition, timeout=5, sleep=0.1,
            exception=RuntimeError(
                "Timed out waiting for file %(filename)s to be created and "
                "its size become equal to %(size)s." %
                {'filename': self.temp_file,
                 'size': expected_size}))

        # Verify that start has been called twice for each worker (one for
        # initial start, and the second one on SIGHUP after children were
        # terminated).
        with open(self.temp_file, 'r') as f:
            res = f.readline()
            self.assertEqual(expected_msg, res)
Test that we can retrieve security groups
dataset/ETHPy150Open openstack/neutron/neutron/tests/functional/test_server.py/TestNeutronServer._test_restart_service_on_sighup--crossover with--dataset/ETHPy150Open nii-cloud/dodai-compute/nova/tests/test_api.py/ApiEc2TestCase.test_get_all_security_groups