Merge pull request #2713 from DimitrisJim/vars_error

Fix test_vars in test_builtins.
This commit is contained in:
Jeong YunWon
2021-07-07 23:14:57 +09:00
committed by GitHub
2 changed files with 3 additions and 3 deletions

View File

@@ -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)))

View File

@@ -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())
}