Skip to content

Commit aea1515

Browse files
authored
Merge pull request #197 from packit/options
Fix tokenization of options
2 parents e20e7d1 + 9cbccfe commit aea1515

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

specfile/options.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -512,6 +512,9 @@ def tokenize(option_string: str) -> List[Token]:
512512
if not c.isspace():
513513
break
514514
whitespace += c
515+
else:
516+
result.append(Token(TokenType.WHITESPACE, whitespace))
517+
break
515518
inp.insert(0, c)
516519
result.append(Token(TokenType.WHITESPACE, whitespace))
517520
continue

tests/unit/test_options.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,21 @@ def test_options_find_option(optstring, tokens, option, result):
233233
Token(TokenType.DOUBLE_QUOTED, '.test "double quotes"'),
234234
],
235235
),
236+
(
237+
"-p1 -b .test_whitespace_at_the_end -M 2 ",
238+
[
239+
Token(TokenType.DEFAULT, "-p1"),
240+
Token(TokenType.WHITESPACE, " "),
241+
Token(TokenType.DEFAULT, "-b"),
242+
Token(TokenType.WHITESPACE, " "),
243+
Token(TokenType.DEFAULT, ".test_whitespace_at_the_end"),
244+
Token(TokenType.WHITESPACE, " "),
245+
Token(TokenType.DEFAULT, "-M"),
246+
Token(TokenType.WHITESPACE, " "),
247+
Token(TokenType.DEFAULT, "2"),
248+
Token(TokenType.WHITESPACE, " "),
249+
],
250+
),
236251
],
237252
)
238253
def test_options_tokenize(option_string, result):

0 commit comments

Comments
 (0)