#!/usr/bin/env python import defl import os import shlex import pathlib from defl import log, cl, Path from defl.testing_ import Tester from defl.fzf_ import * tester = Tester(name=__file__) @tester.add() def msg(): r = FuzzyFinder(multi=true, header='test', headerLines=2) cli = r._cli.copy() cli.pop('header') Assert(cli) == { 'exit-0': True, 'no-ignore-case': T, 'extended': True, 'scheme': 'default', 'cycle': True, 'print-query': True, 'select-1': True, 'sync': True, 'black': True, 'ansi': True, 'no-bold': True, 'tabstop': 4, 'info': 'inline-right', 'ellipsis': '…', 'header-lines': 2, 'no-sort': True, 'multi': True, 'bind': 'ctrl-a:select-all' } run = r.run() Assert(run.cli[:-1]) == [ 'fzf', '--exit-0', '--no-ignore-case', '--extended', '--scheme', 'default', '--cycle', '--print-query', '--select-1', '--sync', '--black', '--ansi', '--no-bold', '--tabstop', '4', '--info', 'inline-right', '--ellipsis', '…', '--header-lines', '2', '--no-sort', '--multi', '--bind', 'ctrl-a:select-all', '--header' ] res = r.runChoices(['header1', 'header2', 1]) Assert(res) == [(2, 1)] log.info(tester.run()) tester.exitWithStatus()