def test_validate_filtering_args_with_invalid_inputs(): fake_reader = logs.LogReader() fake_reader.SUPPORTS_TAILING = False args, _ = parse_args(["logs", "--tail"]) assert not logs.validate_filtering_args(args, fake_reader) fake_reader.SUPPORTS_TIME = False args, _ = parse_args(["logs", "--from", "1w"]) assert not logs.validate_filtering_args(args, fake_reader) fake_reader.SUPPORTS_LINE_COUNT = False args, _ = parse_args(["logs", "-l", "200"]) assert not logs.validate_filtering_args(args, fake_reader) fake_reader.SUPPORTS_LINE_OFFSET = False args, _ = parse_args(["logs", "-o", "23"]) assert not logs.validate_filtering_args(args, fake_reader) fake_reader.SUPPORTS_TAILING = True fake_reader.SUPPORTS_LINE_COUNT = True fake_reader.SUPPORTS_LINE_OFFSET = True fake_reader.SUPPORTS_TIME = True # Can't tail and specify lines at the same time args, _ = parse_args(["logs", "-l", "200", "--tail"]) assert not logs.validate_filtering_args(args, fake_reader) # Can't tail and specify time at the same time args, _ = parse_args(["logs", "--tail", "--from", "1w"]) assert not logs.validate_filtering_args(args, fake_reader) # Can't use both time and lines at the same time args, _ = parse_args(["logs", "--from", "1w", "-l", "100"]) assert not logs.validate_filtering_args(args, fake_reader)
def test_validate_filtering_args_with_valid_inputs(): fake_reader = logs.LogReader() fake_reader.SUPPORTS_TAILING = True fake_reader.SUPPORTS_LINE_COUNT = True fake_reader.SUPPORTS_TIME = True fake_reader.SUPPORTS_LINE_OFFSET = True # No arguments, completely valid args, _ = parse_args(["logs"]) assert logs.validate_filtering_args(args, fake_reader) # Tailing args, _ = parse_args(["logs", "--tail"]) assert logs.validate_filtering_args(args, fake_reader) # Specify number of lines args, _ = parse_args(["logs", "-l", "200"]) assert logs.validate_filtering_args(args, fake_reader) # Specify number of lines and lines to offset by args, _ = parse_args(["logs", "-l", "200", "-o", "23"]) assert logs.validate_filtering_args(args, fake_reader) # Specify a time args, _ = parse_args(["logs", "--from", "1w"]) assert logs.validate_filtering_args(args, fake_reader)