def test_array_list8(self): lst = ArrayList() for i in range(3): lst = array_list.insert(lst, i, 0) lst, val = array_list.pop(lst, 0) self.assertEqual(val, 2) lst, val = array_list.pop(lst, 0) self.assertEqual(val, 1)
def test_array_list7(self): lst = ArrayList() for i in range(3): lst = array_list.insert(lst, i, 0) lst, val = array_list.pop(lst, array_list.size(lst) - 1) self.assertEqual(val, 0) lst, val = array_list.pop(lst, array_list.size(lst) - 1) self.assertEqual(val, 1)
def test_pop(self): lst = ArrayList() lst.num_items = 2 lst.arr = [1, 2] lst2 = ArrayList() lst2.num_items = 1 lst2.arr = [1, None] self.assertEqual(pop(lst, 1), (lst2, 2)) self.assertRaises(IndexError, pop, lst, 2) lst.arr = [1, 2, None, None] lst.capacity = 4 lst.num_items = 2 lst2.arr = [2, None] lst2.num_items = 1 lst2.capacity = 2 self.assertEqual(pop(lst, 0)[0].arr, [2, None])
def pop(self): """Write signature and purpose """ # pop() from array_list only raises IndexError for idx > num_items # not protected against empty stack if self.is_empty(): raise IndexError self.arr_list, val = array_list.pop(self.arr_list, self.num_items - 1) self.num_items = self.num_items - 1 return val
def pop(self): """Pop an item from the stack Args: self (StackArray): The Stack Returns: (int): value popped from stack """ val = 0 if self.num_items == 0: raise IndexError('') self.arr_list, val = array_list.pop(self.arr_list, self.num_items - 1) self.num_items -= 1 return val
def pop(self): """method that removes the item at the top of the stack Args: No args Returns: item (any type) : the item (data) that was removed Raises: IndexError : when the stack is empty """ if self.is_empty(): raise IndexError self.arr_list, item = alist.pop(self.arr_list, self.num_items - 1) self.num_items -= 1 return item