for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
import unittest
from digit_stack import digit_stack
class Tests(unittest.TestCase):
TESTS = {
"Basics": [
{
"input": [
'PUSH 3',
'POP',
'PUSH 4',
'PEEK',
'PUSH 9',
'PUSH 0',
'PUSH 1',
],
"answer": 8,
},
{"input": ['POP', 'POP'], "answer": 0},
{"input": ['PUSH 9', 'PUSH 9', 'POP'], "answer": 9},
{"input": [], "answer": 0},
"Edge": [
'PUSH 2',
'PUSH 5',
'PUSH 6',
'PUSH 7',
'PUSH 8',
"answer": 0,
{"input": ['PEEK'], "answer": 0},
{"input": ['POP'], "answer": 0},
"answer": 45,
"Extra": [
"answer": 3,
"answer": 26,
{"input": ['POP', 'PUSH 1', 'POP', 'PUSH 8', 'PEEK', 'POP'], "answer": 17},
"answer": 30,
"answer": 20,
}
def test_Basics(self):
for i in self.TESTS['Basics']:
assert digit_stack(i['input']) == i['answer']
def test_Edge(self):
for i in self.TESTS['Edge']:
def test_Extra(self):
for i in self.TESTS['Extra']:
if __name__ == "__main__": # pragma: no cover
unittest.main()