Я бегал
result = runner.invoke(cli, ['sync'])
вместо
result = runner.invoke(cli, ['--debug', 'sync'])
Таким образом, вам нужно указать флаг, введенный через CLI, а не только передавать параметры, используемые функцией, если вы используете @click.option
.
Кроме того, я сделал опечатку для одного из флагов.
Как отлаживать
- Посмотрите на параметры, которые вы передаете
runner.invoke
(проще всего: распечатайте его)
- Выполнить его через CLI (например,
cli(['--debug', 'sync'])
)
В моем случае это дало мне сообщение
Error: no such option: --sync Did you mean --syncs?