Completed
Pull Request — master (#1116)
by Lasse
01:39
created

bears.tests.c_languages.codeclone_detection.CloneDetectionRoutinesTest   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 13
Duplicated Lines 0 %
Metric Value
dl 0
loc 13
rs 10
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A test_relative_difference() 0 12 1
1
import sys
2
import unittest
3
4
sys.path.insert(0, ".")
5
from bears.c_languages.codeclone_detection.CloneDetectionRoutines import (
6
    relative_difference)
7
8
9
class CloneDetectionRoutinesTest(unittest.TestCase):
10
    def test_relative_difference(self):
11
        # This test is needed because our exclusion heuristic is grown so
12
        # good that during our "real code" tests some corner cases just
13
        # don't happen anymore. For simplicity we're whitebox-testing this
14
        # function, its whole purpose of life is to return 1 if it should
15
        # normalize with a zero (second parameter).
16
17
        self.assertEqual(relative_difference(0, 1), 0)
18
        self.assertEqual(relative_difference(1, 1), 1)
19
        self.assertEqual(relative_difference(0, 0), 1)
20
        self.assertEqual(relative_difference(1, 0), 1)
21
        self.assertEqual(relative_difference(0.5, 2), 0.25)
22
23
24
if __name__ == '__main__':
25
    unittest.main(verbosity=2)
26