From b6b10149b78651813038f2baa108ee102d4cb704 Mon Sep 17 00:00:00 2001 From: jfh Date: Wed, 16 Jun 2021 19:48:54 +0300 Subject: [PATCH] Fix test_vars in test_builtins. --- Lib/test/test_builtin.py | 2 -- vm/src/builtins/make_module.rs | 4 +++- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py index 324fc4b3e..bb7bbbb62 100644 --- a/Lib/test/test_builtin.py +++ b/Lib/test/test_builtin.py @@ -1377,8 +1377,6 @@ class BuiltinTest(unittest.TestCase): return {'a':2} __dict__ = property(fget=getDict) - # TODO: RUSTPYTHON - @unittest.expectedFailure def test_vars(self): self.assertEqual(set(vars()), set(dir())) self.assertEqual(set(vars(sys)), set(dir(sys))) diff --git a/vm/src/builtins/make_module.rs b/vm/src/builtins/make_module.rs index b69849378..15fad8a2e 100644 --- a/vm/src/builtins/make_module.rs +++ b/vm/src/builtins/make_module.rs @@ -819,7 +819,9 @@ mod decl { #[pyfunction] fn vars(obj: OptionalArg, vm: &VirtualMachine) -> PyResult { if let OptionalArg::Present(obj) = obj { - vm.get_attribute(obj, "__dict__") + vm.get_attribute(obj, "__dict__").map_err(|_| { + vm.new_type_error("vars() argument must have __dict__ attribute".to_owned()) + }) } else { Ok(vm.current_locals()?.into_object()) }