def test_OsDetect_register_default_add_detector(): # test behavior of register_default and add_detector. Both take # precedence over previous detectors, but at different scopes. from rospkg.os_detect import OsDetect o1 = TrueOs() o2 = TrueOs2() key = 'TrueOs' detect = OsDetect([(key, o1)]) assert detect.get_detector(key) == o1 detect.register_default(key, o2) assert detect.get_detector(key) == o1 detect.add_detector(key, o2) assert detect.get_detector(key) == o2 detect = OsDetect() assert detect.get_detector(key) == o2 detect.add_detector(key, o1) assert detect.get_detector(key) == o1 # restore precendence of o1 in default list detect.register_default(key, o1) detect = OsDetect() assert detect.get_detector(key) == o1