Completed
Pull Request — master (#2542)
by Zatreanu
01:56
created

DistributionRequirementTestCase   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 20
rs 10
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A test_install_command_mock_fedora() 0 6 1
A test_install_command_mock_incompatible_os() 0 5 1
1
import platform
2
import unittest
3
from unittest.mock import patch
4
5
from coalib.bears.requirements.DistributionRequirement import (
6
    DistributionRequirement)
7
8
9
class DistributionRequirementTestCase(unittest.TestCase):
10
11
    @patch('platform.linux_distribution', return_value=('Fedora',))
12
    def test_install_command_mock_fedora(self, fun_mock):
13
        self.assertEqual(platform.linux_distribution()[0], 'Fedora')
14
        self.assertEqual(DistributionRequirement(
15
            dnf='libclang', apt_get='libclangs').install_command(),
16
            'dnf install libclang')
17
18
    @patch('platform.linux_distribution', return_value=('Fedora',))
19
    def test_install_command_mock_fedora(self, fun_mock):
20
        self.assertEqual(platform.linux_distribution()[0], 'Fedora')
21
        self.assertRaises(NotImplementedError, DistributionRequirement(
22
            dlf='package1', apt_gel='package2').install_command())
23
24
    @patch('platform.linux_distribution', return_value=('bad_os',))
25
    def test_install_command_mock_incompatible_os(self, fun_mock):
26
        self.assertEqual(platform.linux_distribution()[0], 'bad_os')
27
        self.assertEqual(DistributionRequirement(
28
            dnf='libclang', apt_get='libclangs').install_command(), '')
29