def test_completion_plugin(self, line_prefix: str, num_tabs: int, line: str, expected: List[str]) -> None: config_loader = create_config_loader() bc = DefaultCompletionPlugin(config_loader) ret = bc._query(config_name="config.yaml", line=line_prefix + line) assert ret == expected ret = bc._query(config_name="config.yaml", line="--multirun " + line_prefix + line) assert ret == expected
def test_file_completion(tmpdir, files, line_prefix, key_eq, fname_prefix, expected, relative): def create_files(in_files): for f in in_files: dirname = os.path.dirname(f) if dirname != "": Path.mkdir(dirname, parents=True) Path(f).touch(exist_ok=True) config_loader = create_config_loader() try: pwd = os.getcwd() os.chdir(str(tmpdir)) create_files(files) bc = DefaultCompletionPlugin(config_loader) probe = line_prefix + key_eq if relative: prefix = "." + os.path.sep probe += prefix + fname_prefix else: prefix = os.path.realpath(".") probe += os.path.join(prefix, fname_prefix) ret = bc._query(line=probe) assert len(expected) == len(ret) for idx, file in enumerate(expected): assert key_eq + os.path.join(prefix, file) == ret[idx] finally: os.chdir(pwd)
def test_file_completion( tmpdir: Path, files: List[str], line_prefix: str, key_eq: str, fname_prefix: str, expected: List[str], relative: bool, ) -> None: def create_files(in_files: List[str]) -> None: for f in in_files: path = Path(f) dirname = path.parent if str(dirname) != ".": Path.mkdir(dirname, parents=True) Path(f).touch(exist_ok=True) config_loader = create_config_loader() try: pwd = os.getcwd() os.chdir(str(tmpdir)) create_files(files) bc = DefaultCompletionPlugin(config_loader) probe = line_prefix + key_eq if relative: prefix = "." + os.path.sep probe += prefix + fname_prefix else: prefix = os.path.realpath(".") probe += os.path.join(prefix, fname_prefix) ret = bc._query(config_name="config.yaml", line=probe) assert len(expected) == len(ret) for idx, file in enumerate(expected): assert key_eq + os.path.join(prefix, file) == ret[idx] finally: os.chdir(pwd)
def test_missing_default_value(line: str, expected: List[str]) -> None: config_loader = create_config_loader() bc = DefaultCompletionPlugin(config_loader) ret = bc._query(config_name="missing_default", line=line) assert ret == expected
def test_with_flags(line: str, expected: List[str]) -> None: config_loader = create_config_loader() bc = DefaultCompletionPlugin(config_loader) ret = bc._query(config_name="config.yaml", line=line) assert ret == expected
def test_completion_plugin(self, line_prefix, num_tabs, line, expected): config_loader = create_config_loader() bc = DefaultCompletionPlugin(config_loader) ret = bc._query(line=line_prefix + line) assert ret == expected
def test_with_flags(line, expected): config_loader = create_config_loader() bc = DefaultCompletionPlugin(config_loader) ret = bc._query(line=line) assert ret == expected