From 2aa4a82499d4becd2284cdb482213d541b8804dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 16:29:10 +0200 Subject: Adding upstream version 86.0.1. Signed-off-by: Daniel Baumann --- .../taskgraph/test/test_util_python_path.py | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 taskcluster/taskgraph/test/test_util_python_path.py (limited to 'taskcluster/taskgraph/test/test_util_python_path.py') diff --git a/taskcluster/taskgraph/test/test_util_python_path.py b/taskcluster/taskgraph/test/test_util_python_path.py new file mode 100644 index 0000000000..2c5f415b31 --- /dev/null +++ b/taskcluster/taskgraph/test/test_util_python_path.py @@ -0,0 +1,43 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +from __future__ import absolute_import, print_function, unicode_literals + +import unittest +from taskgraph.util import python_path +from mozunit import main + + +class TestObject(object): + + testClassProperty = object() + + +class TestPythonPath(unittest.TestCase): + def test_find_object_no_such_module(self): + """find_object raises ImportError for a nonexistent module""" + self.assertRaises( + ImportError, python_path.find_object, "no_such_module:someobj" + ) + + def test_find_object_no_such_object(self): + """find_object raises AttributeError for a nonexistent object""" + self.assertRaises( + AttributeError, + python_path.find_object, + "taskgraph.test.test_util_python_path:NoSuchObject", + ) + + def test_find_object_exists(self): + """find_object finds an existing object""" + from taskgraph.test.test_util_python_path import TestObject + + obj = python_path.find_object( + "taskgraph.test.test_util_python_path:TestObject.testClassProperty" + ) + self.assertIs(obj, TestObject.testClassProperty) + + +if __name__ == "__main__": + main() -- cgit v1.2.3