Skip to content

Instantly share code, notes, and snippets.

@scottfrazer
Created December 21, 2010 15:52
Show Gist options
  • Save scottfrazer/750093 to your computer and use it in GitHub Desktop.
Save scottfrazer/750093 to your computer and use it in GitHub Desktop.
import unittest
class Stack:
stack = []
size = 0
def push(self, i):
self.stack.append(i)
self.size += 1
pass
def pop(self):
if self.size == 0:
return None
self.size -= 1
return self.stack[self.size]
pass
def peek(self):
pass
class TestStack(unittest.TestCase):
def setUp(self):
pass
def test_stackInitializesWithZeroSize(self):
stack = Stack()
self.assertEqual(stack.size, 0)
def test_pushAddsToStackSize(self):
stack = Stack()
stack.push(2)
self.assertEqual(stack.size, 1)
def test_popEmptyStackReturnsNone(self):
stack = Stack()
item = stack.pop()
self.assertEqual(item, None)
def test_popStackWithOneItemReturnsItem(self):
stack = Stack()
stack.push(2)
item = stack.pop()
self.assertEqual(item, 2)
self.assertEqual(stack.size, 0)
if __name__ == '__main__':
unittest.main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment