def test_OsDetect_nomatch(): from rospkg.os_detect import OsDetect, OsNotDetected detect = OsDetect([('Dummy', FalseOs())]) assert isinstance(detect.get_detector('Dummy'), FalseOs) try: detect.get_name() assert False except OsNotDetected: pass try: detect.get_version() assert False except OsNotDetected: pass try: detect.get_detector() assert False except OsNotDetected: pass
def test_ubuntu(): import rospkg.os_detect from rospkg.os_detect import LsbDetect, OsDetect, OsNotDetected test_dir = os.path.join(get_test_dir(), 'ubuntu') rospkg.os_detect._lsb_release = os.path.join(test_dir, 'lsb_release') detect = OsDetect().get_detector('ubuntu') assert detect.is_os() assert detect.get_version() == '10.04' assert detect.get_codename() == 'lucid' # test freely if not detect.is_os(): try: detect.get_version() assert False except OsNotDetected: pass try: detect.get_codename() assert False except OsNotDetected: pass
def test_OsDetect_single(): # test each method twice with new instance b/c of caching from rospkg.os_detect import OsDetect detect = OsDetect([('TrueOs', TrueOs())]) assert "TrueOs" == detect.get_name() assert "TrueOs" == detect.get_name() detect = OsDetect([('TrueOs', TrueOs())]) assert "os_version" == detect.get_version() assert "os_version" == detect.get_version() detect = OsDetect([('TrueOs', TrueOs())]) assert "os_codename" == detect.get_codename() assert "os_codename" == detect.get_codename() detect = OsDetect([('TrueOs', TrueOs())]) assert isinstance(detect.get_detector(), TrueOs) assert isinstance(detect.get_detector('TrueOs'), TrueOs)