コード例 #1
0
def test_parse_distribution_file_clear_linux_no_match():
    # Test against data from Linux Mint and CoreOS to ensure we do not get a reported
    # match from parse_distribution_file_ClearLinux()

    scenarios = [
        {
            # CoreOS
            'case': {
                'name': 'Clearlinux',
                'data': 'NAME="Container Linux by CoreOS"\nID=coreos\nVERSION=1911.5.0\nVERSION_ID=1911.5.0\nBUILD_ID=2018-12-15-2317\nPRETTY_NAME="Container L'
                        'inux by CoreOS 1911.5.0 (Rhyolite)"\nANSI_COLOR="38;5;75"\nHOME_URL="https://coreos.com/"\nBUG_REPORT_URL="https://issues.coreos.com"'
                        '\nCOREOS_BOARD="amd64-usr"',
                'path': '/usr/lib/os-release',
                'collected_facts': None,
            },
            'result': (False, {}),
        },
        {
            # Linux Mint
            'case': {
                'name': 'Clearlinux',
                'data': 'NAME="Linux Mint"\nVERSION="19.1 (Tessa)"\nID=linuxmint\nID_LIKE=ubuntu\nPRETTY_NAME="Linux Mint 19.1"\nVERSION_ID="19.1"\nHOME_URL="h'
                        'ttps://www.linuxmint.com/"\nSUPPORT_URL="https://forums.ubuntu.com/"\nBUG_REPORT_URL="http://linuxmint-troubleshooting-guide.readthedo'
                        'cs.io/en/latest/"\nPRIVACY_POLICY_URL="https://www.linuxmint.com/"\nVERSION_CODENAME=tessa\nUBUNTU_CODENAME=bionic',
                'path': '/usr/lib/os-release',
                'collected_facts': None,
            },
            'result': (False, {}),
        },
    ]

    distribution = DistributionFiles(module=mock_module())
    for scenario in scenarios:
        assert scenario['result'] == distribution.parse_distribution_file_ClearLinux(**scenario['case'])
コード例 #2
0
def test_parse_distribution_file_clear_linux_no_match(mock_module, distro_file,
                                                      test_input):
    """
    Test against data from Linux Mint and CoreOS to ensure we do not get a reported
    match from parse_distribution_file_ClearLinux()
    """
    test_input['data'] = open(
        os.path.join(os.path.dirname(__file__),
                     '../../fixtures/distribution_files', distro_file)).read()

    result = (False, {})

    distribution = DistributionFiles(module=mock_module())
    assert result == distribution.parse_distribution_file_ClearLinux(
        **test_input)
コード例 #3
0
def test_parse_distribution_file_clear_linux(mock_module, test_input):
    test_input['data'] = open(
        os.path.join(os.path.dirname(__file__),
                     '../../fixtures/distribution_files/ClearLinux')).read()

    result = (True, {
        'distribution': 'Clear Linux OS',
        'distribution_major_version': '28120',
        'distribution_release': 'clear-linux-os',
        'distribution_version': '28120'
    })

    distribution = DistributionFiles(module=mock_module())
    assert result == distribution.parse_distribution_file_ClearLinux(
        **test_input)
コード例 #4
0
def test_distribution_sles4sap_suse_sles_sap(mock_module, mocker, realpath):
    mocker.patch('os.path.islink', return_value=True)
    mocker.patch('os.path.realpath',
                 return_value='/etc/products.d/' + realpath)

    test_input = {
        'name': 'SUSE',
        'path': '',
        'data': 'suse',
        'collected_facts': None,
    }

    test_result = (True, {
        'distribution': 'SLES_SAP',
    })

    distribution = DistributionFiles(module=mock_module())
    assert test_result == distribution.parse_distribution_file_SUSE(
        **test_input)
コード例 #5
0
def test_parse_distribution_file_clear_linux():
    test_input = {
        'name': 'Clearlinux',
        'data': 'NAME="Clear Linux OS"\nVERSION=1\nID=clear-linux-os\nID_LIKE=clear-linux-os\nVERSION_ID=28120\nPRETTY_NAME="Clear Linux OS"\nANSI_COLOR="1;35"'
                '\nHOME_URL="https://clearlinux.org"\nSUPPORT_URL="https://clearlinux.org"\nBUG_REPORT_URL="mailto:[email protected]"',
        'path': '/usr/lib/os-release',
        'collected_facts': None,
    }

    result = (
        True,
        {
            'distribution': 'Clear Linux OS',
            'distribution_major_version': '28120',
            'distribution_release': 'clear-linux-os',
            'distribution_version': '28120'
        }
    )

    distribution = DistributionFiles(module=mock_module())
    assert result == distribution.parse_distribution_file_ClearLinux(**test_input)
コード例 #6
0
def test_parse_distribution_file_slackware(mock_module, distro_file,
                                           expected_version):
    test_input = {
        'name':
        'Slackware',
        'data':
        open(
            os.path.join(os.path.dirname(__file__),
                         '../../fixtures/distribution_files',
                         distro_file)).read(),
        'path':
        '/etc/os-release',
        'collected_facts':
        None,
    }

    result = (True, {
        'distribution': 'Slackware',
        'distribution_version': expected_version
    })
    distribution = DistributionFiles(module=mock_module())
    assert result == distribution.parse_distribution_file_Slackware(
        **test_input)