Completed
Push — master ( 18079e...90dc7f )
by Xianshun
01:17
created

HashedMapWithSeparateChainingUnitTest   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 43
Duplicated Lines 95.35 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
dl 41
loc 43
rs 10
c 1
b 0
f 0
wmc 4

1 Method

Rating   Name   Duplication   Size   Complexity  
B test_binarySearchTree() 41 42 4

How to fix   Duplicated Code   

Duplicated Code

Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.

Common duplication problems, and corresponding solutions are:

1
import unittest
2
3
from pyalgs.data_structures.commons.hashed_map import HashedMapWithSeparateChaining, HashedMap
4
5
6 View Code Duplication
class HashedMapUnitTest(unittest.TestCase):
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
7
    def test_binarySearchTree(self):
8
        map = HashedMap.create()
9
10
        map.put("one", 1)
11
        map.put("two", 2)
12
        map.put("three", 3)
13
        map.put("six", 6)
14
        map.put("ten", 10)
15
        map.put("ten", 10)
16
17
        self.assertEqual(1, map.get("one"))
18
        self.assertEqual(2, map.get("two"))
19
        self.assertEqual(3, map.get("three"))
20
21
        self.assertTrue(map.contains_key("one"))
22
        self.assertTrue(map.contains_key("two"))
23
24
        self.assertEqual(5, map.size())
25
        self.assertFalse(map.is_empty())
26
27
        map.delete("one")
28
        self.assertFalse(map.contains_key("one"))
29
        self.assertEqual(4, map.size())
30
31
        map.delete("ten")
32
        self.assertFalse(map.contains_key("ten"))
33
        self.assertEqual(3, map.size())
34
35
        map.delete("three")
36
        self.assertFalse(map.contains_key("three"))
37
        self.assertEqual(2, map.size())
38
39
        for i in range(100):
40
            map.put(str(i), i)
41
            self.assertEqual(i, map.get(str(i)))
42
43
        for key in map.keys():
44
            print(key)
45
46
        for i in range(100):
47
            map.delete(str(i))
48
            self.assertFalse(map.contains_key(str(i)))
49
50
51
class HashedMapWithSeparateChainingUnitTest(unittest.TestCase):
52
    def test_binarySearchTree(self):
53 View Code Duplication
        map = HashedMapWithSeparateChaining()
0 ignored issues
show
Duplication introduced by
This code seems to be duplicated in your project.
Loading history...
54
55
        map.put("one", 1)
56
        map.put("two", 2)
57
        map.put("three", 3)
58
        map.put("six", 6)
59
        map.put("ten", 10)
60
        map.put("ten", 10)
61
62
        self.assertEqual(1, map.get("one"))
63
        self.assertEqual(2, map.get("two"))
64
        self.assertEqual(3, map.get("three"))
65
66
        self.assertTrue(map.contains_key("one"))
67
        self.assertTrue(map.contains_key("two"))
68
69
        self.assertEqual(5, map.size())
70
        self.assertFalse(map.is_empty())
71
72
        map.delete("one")
73
        self.assertFalse(map.contains_key("one"))
74
        self.assertEqual(4, map.size())
75
76
        map.delete("ten")
77
        self.assertFalse(map.contains_key("ten"))
78
        self.assertEqual(3, map.size())
79
80
        map.delete("three")
81
        self.assertFalse(map.contains_key("three"))
82
        self.assertEqual(2, map.size())
83
84
        for i in range(100):
85
            map.put(str(i), i)
86
            self.assertEqual(i, map.get(str(i)))
87
88
        for key in map.keys():
89
            print(key)
90
91
        for i in range(100):
92
            map.delete(str(i))
93
            self.assertFalse(map.contains_key(str(i)))
94
95
96
if __name__ == '__main__':
97
    unittest.main()
98