Esempio n. 1
0
 def testAddedItemsAreSorted1(self):
     a = [3, 2, 4, 1, 5]
     s = MedianFinder()
     for i in range(1, len(a) + 1):
         s.addItem(a[i - 1])
         m = a[0:i]
         self.assertEquals(sorted(m), s.items)
Esempio n. 2
0
 def testItemsSortedAfterRemoval1(self):
     a = [3, 2, 4, 1, 5]
     s = MedianFinder()
     for i in a:
         s.addItem(i)
     
     for i in range(1, len(a) + 1):
         s.remItem(a[i - 1])
         m = a[i: len(a)]
         self.assertEquals(sorted(m),s.items)
Esempio n. 3
0
    def testMedianOnRemoval(self):
        a = [-3, -2, -4, -1, -5]
        aMedian = [-3, -4, -3, -5, "Wrong!"]
        s = MedianFinder()
        
        self.assertEquals("Wrong!", s.remItem(a[0]))

        for i in a:
            s.addItem(i)
        
        for i in range(1, len(a) + 1):
            self.assertEquals(aMedian[i - 1], s.remItem(a[i - 1]))
Esempio n. 4
0
 def testInput01(self):
     x = "C:/xampp/htdocs/PracticeCodePy/testInputs/medianInputs/Input01.txt"
     data = open(x)
     N = data.readline();
     s = MedianFinder()
     for i in range(int(N)):
         Q = data.readline().split(" ")
         num = int(Q[1])
         if(Q[0] == "a"):
             print(s.addItem(num))
         elif(Q[0] == "r"):
             print(s.remItem(num))
Esempio n. 5
0
 def testMedianOnAdd(self):
     a = [3, 2, 4, 1, 5]
     aMedian = [3, 2.5, 3, 2.5, 3]
     s = MedianFinder()
     for i in range(1, len(a) + 1):
         self.assertEquals(aMedian[i - 1], s.addItem(a[i - 1]))                              
Esempio n. 6
0
 def testRemoveItemNotInMedianFinder(self):
     a = [3, 2, 4, 1, 5]
     s = MedianFinder()
     for i in a:
         s.addItem(i)
     self.assertEquals(s.remItem(10), "Wrong!")