Esempio n. 1
0
  def setUp(self):
    self.__arrayDeque = get_deque(ARR_DEQUE_TYPE)
    self.__arrayStack = Stack()
    self.__arrayQueue = Queue()

    self.__linkedDeque = get_deque(LL_DEQUE_TYPE)
    self.__linkedStack = Stack()
    self.__linkedQueue = Queue()
Esempio n. 2
0
 def setUp(self):
   self.__deque = get_deque(LL_DEQUE_TYPE)
   self.__stack = Stack()
   self.__queue = Queue()
   
   self.__deque1 = get_deque(ARR_DEQUE_TYPE)
   self.__stack1 = Stack()
   self.__queue1 = Queue()
Esempio n. 3
0
 def test_ARR_deque_push_pop(self):#test if multiple push and pops work expectedly
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.__deque.push_back(2)
   self.__deque.pop_back()
   self.__deque.push_front(3)
   self.__deque.pop_front()
   self.assertEqual('[ 2, 1 ]', str(self.__deque))
Esempio n. 4
0
def delimiter_check(filename):
  # TODO replace pass with an implementation that returns True
  # if the delimiters (), [], and {} are balanced and False otherwise.
  deque = get_deque()
  file = open(filename, 'r')
  content = file.read()
  for char in content:
      a = 0
      if char == "(":
          deque.push_back(char)
          a = 1
      if char == "[":
          deque.push_back(char)
          a = 2
      if char == "{":
          deque.push_back(char)
          a = 3
      if char == ")":
          if a == 2 or a == 3:
              return False
          if deque.peek_back() == "(":
              deque.pop_back()
              a = 0
          else: 
              return False
      if char == "]":
          if a == 1 or a == 3:
              return False
          if deque.peek_back() == "[":
              deque.pop_back()
              a = 0
          else: 
              return False
      if char == "}":
          if a == 1 or a == 2:
              return False
          if deque.peek_back() == "{":
              deque.pop_back()
              a = 0
          else: 
              return False
      if a == 0 is False:
          deque.push_back(char)
  if len(deque) == 0:
      return True
  else:
      return False
Esempio n. 5
0
 def test_empty_ARR_deque_len(self):
   self.__deque = get_deque(1)
   self.assertEqual(0, len(self.__deque))
Esempio n. 6
0
 def __init__(self):
     # TODO replace pass with your implementation.
     self.__queue = get_deque()
Esempio n. 7
0
 def test_ARR_deque_pop_back_circularity(self):#tests pop_back when back index is 0.
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.__deque.pop_back()
   self.assertEqual('[ 2 ]', str(self.__deque))
Esempio n. 8
0
 def test_ARR_deque_push_back_circularity(self):#similarly,tests if circular array works
   self.__deque = get_deque(1)
   self.__deque.push_back(1)
   self.__deque.push_back(2)
   self.__deque.push_back(3)
   self.assertEqual('[ 1, 2, 3 ]', str(self.__deque))
Esempio n. 9
0
 def test_two_ARR_deque_string(self):#same tests for a deque with size 2.
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.assertEqual('[ 2, 1 ]', str(self.__deque))
Esempio n. 10
0
 def test_one_ARR_deque_len(self):
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.assertEqual(1, len(self.__deque))
Esempio n. 11
0
 def test_one_ARR_deque_peek_front(self):
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   returned = self.__deque.peek_front()
   self.assertEqual(1, returned)
Esempio n. 12
0
 def test_one_ARR_deque_pop_back_return(self):
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   returned = self.__deque.pop_back()
   self.assertEqual(1, returned)
Esempio n. 13
0
 def test_one_ARR_deque_push_back(self):#also tests if __grow works
   self.__deque = get_deque(1)
   self.__deque.push_back(1)
   self.__deque.push_back(2)
   self.assertEqual('[ 1, 2 ]', str(self.__deque))
Esempio n. 14
0
 def test_one_ARR_deque_push_front(self):#also tests if __grow works
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.assertEqual('[ 2, 1 ]', str(self.__deque))
Esempio n. 15
0
 def test_one_ARR_deque_string(self):#same testing for a deque of size 1.
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.assertEqual('[ 1 ]', str(self.__deque))
Esempio n. 16
0
 def test_two_ARR_deque_push_front(self):
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.__deque.push_front(3)
   self.assertEqual('[ 3, 2, 1 ]', str(self.__deque))
Esempio n. 17
0
 def test_ARR_deque_push_front_circularity(self):#tests push_front when front index is 0.
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.__deque.push_front(3)
   self.assertEqual('[ 3, 2, 1 ]', str(self.__deque))
Esempio n. 18
0
 def test_two_ARR_deque_push_back(self):
   self.__deque = get_deque(1)
   self.__deque.push_back(1)
   self.__deque.push_back(2)
   self.__deque.push_back(3)
   self.assertEqual('[ 1, 2, 3 ]', str(self.__deque))
Esempio n. 19
0
 def test_ARR_deque_pop_front_circularity(self):#tests pop_front when front index is capacity-1.
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.__deque.pop_front()
   self.assertEqual('[ 1 ]', str(self.__deque))
Esempio n. 20
0
 def test_two_ARR_deque_pop_front_return(self):#tests if pop method returns correctly.
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   returned = self.__deque.pop_front()
   self.assertEqual(2, returned)
Esempio n. 21
0
def is_palindrome(character_string):
    dq = get_deque()
    for c in character_string:
        dq.push_back(c)
    return rec_palindrome(dq)
Esempio n. 22
0
 def test_two_ARR_deque_pop_front(self):#tests if pop method removes correctly.
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.__deque.pop_front()
   self.assertEqual('[ 1 ]', str(self.__deque))
 def setUp(self):
     self.__deque = get_deque()
     self.__stack = Stack()
     self.__queue = Queue()
Esempio n. 24
0
 def test_two_ARR_deque_pop_back(self):
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.__deque.pop_back()
   self.assertEqual('[ 2 ]', str(self.__deque))
Esempio n. 25
0
 def __init__(self):
     # TODO replace pass with your implementation.
     self.__dq = get_deque()  #initalize deque object
Esempio n. 26
0
 def test_two_ARR_deque_peek_back(self):
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   returned = self.__deque.peek_back()
   self.assertEqual(1, returned)
Esempio n. 27
0
 def setUp(self):
     # Run your tests with each deque type to ensure that
     # they behave identically.
     self.__deque = get_deque(LL_DEQUE_TYPE)
     self.__stack = Stack()
     self.__queue = Queue()
Esempio n. 28
0
 def test_two_ARR_deque_len(self):
   self.__deque = get_deque(1)
   self.__deque.push_front(1)
   self.__deque.push_front(2)
   self.assertEqual(2, len(self.__deque))
Esempio n. 29
0
 def __init__(self):
     self._dq = get_deque(0)
Esempio n. 30
0
 def test_empty_ARR_deque_peek_back(self):
   self.__deque = get_deque(1)
   returned = self.__deque.peek_back()
   self.assertEqual(None, returned)