diff options
author | Swen Wenzel <5111028+swenzel@users.noreply.github.com> | 2019-12-30 00:12:30 +0100 |
---|---|---|
committer | Dana Powers <dana.powers@gmail.com> | 2019-12-29 15:12:30 -0800 |
commit | ee1c4a42ef3c7f0aa7c98f0c48b6ab0ae76d77da (patch) | |
tree | e536d4854bf88b0d24b7b2a2f5ee3d731eda9716 /test/service.py | |
parent | 31f846c782b9dc6f2107340d269a7558e99bdfe2 (diff) | |
download | kafka-python-ee1c4a42ef3c7f0aa7c98f0c48b6ab0ae76d77da.tar.gz |
Enable SCRAM-SHA-256 and SCRAM-SHA-512 for sasl (#1918)
Diffstat (limited to 'test/service.py')
-rw-r--r-- | test/service.py | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/test/service.py b/test/service.py index 47fb846..045d780 100644 --- a/test/service.py +++ b/test/service.py @@ -45,6 +45,11 @@ class SpawnedService(threading.Thread): self.child = None self.alive = False self.daemon = True + log.info("Created service for command:") + log.info(" "+' '.join(self.args)) + log.debug("With environment:") + for key, value in self.env.items(): + log.debug(" {key}={value}".format(key=key, value=value)) def _spawn(self): if self.alive: return @@ -57,7 +62,7 @@ class SpawnedService(threading.Thread): bufsize=1, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - self.alive = True + self.alive = self.child.poll() is None def _despawn(self): if self.child.poll() is None: @@ -83,12 +88,14 @@ class SpawnedService(threading.Thread): raise if self.child.stdout in rds: - line = self.child.stdout.readline() - self.captured_stdout.append(line.decode('utf-8').rstrip()) + line = self.child.stdout.readline().decode('utf-8').rstrip() + if line: + self.captured_stdout.append(line) if self.child.stderr in rds: - line = self.child.stderr.readline() - self.captured_stderr.append(line.decode('utf-8').rstrip()) + line = self.child.stderr.readline().decode('utf-8').rstrip() + if line: + self.captured_stderr.append(line) if self.child.poll() is not None: self.dump_logs() @@ -105,6 +112,9 @@ class SpawnedService(threading.Thread): def wait_for(self, pattern, timeout=30): start = time.time() while True: + if not self.is_alive(): + raise RuntimeError("Child thread died already.") + elapsed = time.time() - start if elapsed >= timeout: log.error("Waiting for %r timed out after %d seconds", pattern, timeout) |