diff options
| author | Dylan Baker <dylan@pnwbakers.com> | 2024-01-22 15:49:44 -0800 |
|---|---|---|
| committer | Dylan Baker <dylan@pnwbakers.com> | 2024-01-25 10:01:50 -0800 |
| commit | adc8d6bae4010c06fc3b779b8d84c1c5b4a910ad (patch) | |
| tree | 7b7e810833ffd3d6c346bec7ebcf578413fc9206 /mesonbuild | |
| parent | 37883e7d5fe25f9abcc93f100655b61a0e23f8e5 (diff) | |
| download | meson-adc8d6bae4010c06fc3b779b8d84c1c5b4a910ad.tar.gz | |
interpreter: replace mock keyword argument with unittest.mock
Python provides some nifty tools for mocking, without relying on
altering running code. We should use these to simplify the actual run
paths and move the complicated logic into tests.
Diffstat (limited to 'mesonbuild')
| -rw-r--r-- | mesonbuild/interpreter/interpreter.py | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/mesonbuild/interpreter/interpreter.py b/mesonbuild/interpreter/interpreter.py index b736aea41..bee64aa94 100644 --- a/mesonbuild/interpreter/interpreter.py +++ b/mesonbuild/interpreter/interpreter.py @@ -266,7 +266,6 @@ class Interpreter(InterpreterBase, HoldableObject): subdir: str = '', subproject_dir: str = 'subprojects', default_project_options: T.Optional[T.Dict[OptionKey, str]] = None, - mock: bool = False, ast: T.Optional[mparser.CodeBlockNode] = None, is_translated: bool = False, relaxations: T.Optional[T.Set[InterpreterRuleRelaxation]] = None, @@ -285,12 +284,11 @@ class Interpreter(InterpreterBase, HoldableObject): self.subproject_directory_name = subdir.split(os.path.sep)[-1] self.subproject_dir = subproject_dir self.relaxations = relaxations or set() - if not mock and ast is None: + if ast is None: self.load_root_meson_file() - self.sanity_check_ast() - elif ast is not None: + else: self.ast = ast - self.sanity_check_ast() + self.sanity_check_ast() self.builtin.update({'meson': MesonMain(self.build, self)}) self.generators: T.List[build.Generator] = [] self.processed_buildfiles: T.Set[str] = set() @@ -319,8 +317,7 @@ class Interpreter(InterpreterBase, HoldableObject): build_filename = os.path.join(self.subdir, environment.build_filename) if not is_translated: self.build_def_files.add(build_filename) - if not mock: - self.parse_project() + self.parse_project() self._redetect_machines() def __getnewargs_ex__(self) -> T.Tuple[T.Tuple[object], T.Dict[str, object]]: |
