コード例 #1
0
    def test_when_ll_is_not_empty(self):

        e1 = s.Node(1)
        e2 = s.Node(2)
        e3 = s.Node(3)

        stack = s.Stack()
        stack.push(e1)

        self.assertEqual(stack.head.value, 1)
        self.assertEqual(stack.head.min, 1)

        stack.push(e2)

        self.assertEqual(stack.head.value, 2)
        self.assertEqual(stack.head.min, 1)

        stack.push(e3)

        self.assertEqual(stack.head.value, 3)
        self.assertEqual(stack.head.min, 1)

        stack.pop()

        self.assertEqual(stack.head.value, 2)
        self.assertEqual(stack.head.min, 1)

        stack.pop()

        self.assertEqual(stack.head.value, 1)
        self.assertEqual(stack.head.min, 1)
コード例 #2
0
    def test_when_linked_list_is_not_empty(self):
        e1 = s.Node(5)
        e2 = s.Node(3)
        e3 = s.Node(4)
        e4 = s.Node(2)
        e5 = s.Node(1)

        stack = s.Stack()

        stack.push(e1)

        self.assertEqual(stack.min(), 5)

        stack.push(e2)

        self.assertEqual(stack.min(), 3)

        stack.push(e3)

        self.assertEqual(stack.min(), 3)

        stack.push(e4)

        self.assertEqual(stack.min(), 2)

        stack.push(e5)

        self.assertEqual(stack.min(), 1)
コード例 #3
0
    def test_when_linked_list_is_not_empty(self):

        stack = s.Stack()
        e1 = s.Node(3)
        e2 = s.Node(2)
        e3 = s.Node(4)
        e4 = s.Node(1)

        stack.push(e1)

        self.assertEqual(stack.head.value, 3)
        self.assertEqual(stack.head.min, 3)

        stack.push(e2)

        self.assertEqual(stack.head.value, 2)
        self.assertEqual(stack.head.min, 2)

        stack.push(e3)

        self.assertEqual(stack.head.value, 4)
        self.assertEqual(stack.head.min, 2)

        stack.push(e4)

        self.assertEqual(stack.head.value, 1)
        self.assertEqual(stack.head.min, 1)
コード例 #4
0
    def test_when_linked_list_is_empty(self):

        stack = s.Stack()
        e1 = s.Node(1)
        stack.push(e1)

        self.assertEqual(stack.head.value, 1)
        self.assertEqual(stack.head.min, 1)
コード例 #5
0
    def test_when_linked_list_is_empty(self):

        stack = s.Stack()

        with self.assertRaises(ValueError):
            stack.min()
コード例 #6
0
    def test_when_there_are_no_nodes_in_linked_list(self):
        stack = s.Stack()

        with self.assertRaises(ValueError):
            stack.pop()
コード例 #7
0
    def test_when_data_type_of_arg_is_incorrect(self):

        stack = s.Stack()

        with self.assertRaises(TypeError):
            stack.push(" ")