From 5cd3f7f71d38b560a88dd6057e9c7a94991a3d71 Mon Sep 17 00:00:00 2001 From: Kelly Brazil Date: Sun, 26 Sep 2021 13:15:35 -0700 Subject: [PATCH] Add example to raise ParseError if there is no output data to yield --- jc/parsers/foo_s.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/jc/parsers/foo_s.py b/jc/parsers/foo_s.py index 121f3455..f3789b7e 100644 --- a/jc/parsers/foo_s.py +++ b/jc/parsers/foo_s.py @@ -37,6 +37,7 @@ Examples: """ import jc.utils from jc.utils import stream_success, stream_error +from jc.exceptions import ParseError class info(): @@ -105,7 +106,10 @@ def parse(data, raw=False, quiet=False, ignore_exceptions=False): # parse the input here # - yield stream_success(output_line, ignore_exceptions) if raw else stream_success(_process(output_line), ignore_exceptions) + if output_line: + yield stream_success(output_line, ignore_exceptions) if raw else stream_success(_process(output_line), ignore_exceptions) + else: + raise ParseError('Not foo data') except Exception as e: yield stream_error(e, ignore_exceptions, line)