Esempio n. 1
0
 def test_02_should_return_element_when_peeking(self):
     testList = LinkedList()
     testList.append(5)
     testList.append(15)
     firstElement = testList.peek()
     self.assertEqual(firstElement, 5)
     self.assertEqual(testList.list[0], 15)
Esempio n. 2
0
    def testUnionTwoLinkedLists(self):

        listes = []

        for n in range(5):
            liste = LinkedList()

            for i in range(10):
                liste.append(i + n*100)

            listes.append(liste)

        for i in range(len(listes)):
            for j in range(i):
                resultat = Calculator.union(listes[i], listes[j])

                self.assertIsInstance(resultat, LinkedList)
                self.assertNotIsInstance(resultat, Stack)
                self.assertNotIsInstance(resultat, Queue)

                self.assertEqual(resultat.size(), listes[i].size() + listes[j].size())

                for k in range(len(listes)):
                    if k==i:
                        for elem in listes[k].list:
                            self.assertTrue(contient(resultat, elem))
                            
                    elif k==j:
                        for elem in listes[k].list:
                            self.assertTrue(contient(resultat, elem))
                    else:
                        for elem in listes[k].list:
                            self.assertFalse(contient(resultat, elem))
Esempio n. 3
0
    def testPrependPeek(self):
        linkedList = LinkedList()
        linkedList.append("debut")

        for i in range(5):
            linkedList.prepend(i)
            self.assertEqual(linkedList.check(), i)
            self.assertFalse(linkedList.isEmpty())
            self.assertEqual(linkedList.size(), i + 2)

        listSize = linkedList.size()

        for i in range(4, -1, -1):
            self.assertEqual(linkedList.peek(), i)
            self.assertFalse(linkedList.isEmpty())
            listSize -= 1
            self.assertEqual(linkedList.size(), listSize)

        self.assertEqual(linkedList.peek(), "debut")

        self.assertTrue(linkedList.isEmpty())
        self.assertEqual(linkedList.size(), 0)

        self.assertRaises(ValueError, linkedList.check)
        self.assertRaises(ValueError, linkedList.peek)
Esempio n. 4
0
 def test_05_test_Visit_Log_LinkedList(self):
     linkedList = LinkedList()
     for i in range(5):
         linkedList.append(i)
     linkedList.accept(ScreenPrinter("test"))
     self.assertEqual(self.capturedOutput.getvalue(),
                      "test\n\n(0,1,2,3,4)\n\n")
Esempio n. 5
0
    def testInit(self):
        linkedList = LinkedList()

        self.assertTrue(linkedList.isEmpty())
        self.assertEqual(linkedList.size(), 0)

        self.assertRaises(ValueError, linkedList.check)
        self.assertRaises(ValueError, linkedList.peek)
Esempio n. 6
0
 def test_05_test_Visit_Log_LinkedList(self):
     linkedList = LinkedList();
     for i in range(5):
         linkedList.append(i);
     linkedList.accept(FilePrinter("./ThisIsATestFile.txt","name"));
     with open('./ThisIsATestFile.txt', 'r') as myfile:
         result = myfile.read();
     self.assertEqual(result, "name\n(0,1,2,3,4)\n");
Esempio n. 7
0
 def test_02_should_return_element_when_peeking(self):
     testList = LinkedList()
     testList.append(5)
     testList.append(15)
     firstNode = testList.peek()
     self.assertEqual(testList.n, 1)
     self.assertEqual(firstNode, 5)
     self.assertEqual(testList.first.value, 15)
    def testVisitLogLinkedList(self):

        liste = LinkedList()

        for i in range(5):
            liste.append(i)

        liste.accept(ScreenPrinter(""))

        self.assertEqual(self.capturedOutput.getvalue(), "\n\n(0,1,2,3,4)\n\n")
Esempio n. 9
0
    def testVisitLogLinkedList(self):

        liste = LinkedList()

        for i in range(5):
            liste.append(i)

        liste.accept(FilePrinter("./test.txt", ""))

        with open('./test.txt', 'r') as myfile:
            result = myfile.read()

        self.assertEqual(result, "\n(0,1,2,3,4)\n")
Esempio n. 10
0
 def test_02_should_prepend_new_element_with_an_empty_list(self):
     testList = LinkedList()
     testList.prepend(5)
     self.assertEqual(testList.first.value, 5)
Esempio n. 11
0
 def test_02_should_return_first_node_if_empty(self):
     testList = LinkedList()
     testList.append(5)
     self.assertEqual(testList.first.value, 5)
Esempio n. 12
0
 def test_02_should_return_2_as_number_of_nodes(self):
     testList = LinkedList()
     testList.append(5)
     testList.append(15)
     self.assertEqual(testList.n, 2)
Esempio n. 13
0
 def test_02_should_raise_error_when_peeking_an_empty_list(self):
     self.assertRaises(ValueError, LinkedList().peek)
Esempio n. 14
0
 def test_04_should_raise_two_empty_linkedList(self):
     self.assertRaises(ValueError, Calculator.union, LinkedList(),
                       LinkedList())
Esempio n. 15
0
 def test_02_should_return_zero_when_list_is_empty(self):
     self.assertEqual(LinkedList().size(), 0)
Esempio n. 16
0
 def test_02_should_return_element_when_checking(self):
     testList = LinkedList()
     testList.append(5)
     self.assertEqual(testList.check().value, 5)
Esempio n. 17
0
 def test_02_empty_list_when_initialized(self):
     listTest = LinkedList()
     self.assertIsNone(listTest.first)
     self.assertEqual(listTest.n, 0)
Esempio n. 18
0
 def test_02_should_return_true_when_list_is_empty(self):
     self.assertTrue(LinkedList().isEmpty())
Esempio n. 19
0
 def setUp(self):
     self.linkedList = LinkedList()
Esempio n. 20
0
 def test_02_should_prepend_new_element_to_first_position(self):
     testList = LinkedList()
     testList.prepend(5)
     testList.prepend(6)
     self.assertEqual(testList.list[0], 6)
     self.assertEqual(testList.size(), 2)
Esempio n. 21
0
 def setUp(self):
     self.printer = FilePrinter("testFile.txt", "testName")
     self.linkedList = LinkedList()
     self.stack = Stack(3)
     self.queue = Queue(3)
Esempio n. 22
0
 def test_02_should_prepend_new_element_to_first_position(self):
     testList = LinkedList()
     testList.prepend(5)
     testList.prepend(6)
     self.assertEqual(testList.first.value, 6)
     self.assertEqual(testList.n, 2)
Esempio n. 23
0
 def setUp(self):
     self.screenPrinter = ScreenPrinter("test")
     self.linkedList = LinkedList()
     self.stack = Stack(1)
     self.queue = Queue(1)
Esempio n. 24
0
    def test_a_UnionLinkedList(self):
        # If list1 is bigger
        list1 = LinkedList()
        list2 = LinkedList()
        numbers = [1, 2, 3, 4, 5]
        numbersList1 = [1, 2, 3]
        numbersList2 = [4, 5]

        for i in numbersList1:
            list1.append(i)

        for i in numbersList2:
            list2.append(i)

        UnitedList = Calculator.union(list1, list2)
        numbersContained = 0
        for i in numbersList1 + numbersList2:
            number = UnitedList.peek().value
            if number in numbersList1 + numbersList2:
                numbersContained += 1
                numbers.remove(number)
        self.assertEqual(numbersContained, len(numbersList1 + numbersList2))

        # If list2 is bigger
        list1 = LinkedList()
        list2 = LinkedList()
        numbers = [1, 2, 3, 4, 5]
        numbersList1 = [1, 2]
        numbersList2 = [3, 4, 5]

        for i in numbersList1:
            list1.append(i)

        for i in numbersList2:
            list2.append(i)

        UnitedList = Calculator.union(list1, list2)
        numbersContained = 0
        for i in numbersList1 + numbersList2:
            number = UnitedList.peek().value
            if number in numbersList1 + numbersList2:
                numbersContained += 1
                numbers.remove(number)
        self.assertEqual(numbersContained, len(numbersList1 + numbersList2))

        # If lists are the same size
        list1 = LinkedList()
        list2 = LinkedList()
        numbers = [1, 2, 3, 4]
        numbersList1 = [1, 2]
        numbersList2 = [3, 4]

        for i in numbersList1:
            list1.append(i)

        for i in numbersList2:
            list2.append(i)

        UnitedList = Calculator.union(list1, list2)
        numbersContained = 0
        for i in numbersList1 + numbersList2:
            number = UnitedList.peek().value
            if number in numbersList1 + numbersList2:
                numbersContained += 1
                numbers.remove(number)
        self.assertEqual(numbersContained, len(numbersList1 + numbersList2))
Esempio n. 25
0
 def testInvalidUnion(self):
     for obj in [LinkedList(), Stack(5), Queue(5)]:
         for invalid in [1, "fail", -3.4, Node(1)]:
             self.assertRaises(ValueError, Calculator.union, obj, invalid)
Esempio n. 26
0
 def setUp(self):
     self.linkedList = LinkedList()
     self.linkedList.append(15)
     self.linkedList.append(1)
     self.linkedList.append(8)
Esempio n. 27
0
 def test_02_empty_list_when_initialized(self):
     listTest = LinkedList()
     self.assertEqual(len(listTest.list), 0)