Example #1
0
 def test_grammar_sum_mult_pow(self):
     analzr = Analyzer("5+3*5^2")
     self.assertEqual(analzr.analyze(), 80, 'Cacl sum, mult and pow.')
Example #2
0
 def test_grammar_sum_pow_pow(self):
     analzr = Analyzer("5+3^2^2")
     self.assertEqual(analzr.analyze(), 86, 'Cacl sum and div.')
Example #3
0
 def test_grammar_sum_mult_int_1(self):
     analzr = Analyzer("3*5+20")
     self.assertEqual(analzr.analyze(), 35, 'Cacl mult and sum.')
Example #4
0
 def test_grammar_sum_mult_int_2(self):
     analzr = Analyzer("5+3*5")
     self.assertEqual(analzr.analyze(), 20, 'Cacl sum and mult.')
Example #5
0
 def test_grammar_div_sum_int_float(self):
     analzr = Analyzer("3.2+4/2+6/3")
     self.assertEqual(analzr.analyze(), 7.2, 'Cacl sum and div.')
Example #6
0
 def test_grammar_sum_float_2(self):
     analzr = Analyzer("3.2+2")
     self.assertEqual(analzr.analyze(), 5.2, 'Cacl sum float.')
Example #7
0
 def test_grammar_sum_int(self):
     analzr = Analyzer("2+3")
     self.assertEqual(analzr.analyze(), 5, 'Cacl sum int.')
Example #8
0
 def test_grammar_0(self):
     analzr = Analyzer("0")
     self.assertEqual(analzr.analyze(), 0, 'Cacl 0.')
Example #9
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""calc script."""

import sys

from pycalculator.grammar import Analyzer


def validate_argv(argv):
    """Validates argv."""
    if len(argv) != 2:
        raise Exception("Incorrect number of parameters.")

if __name__ == "__main__":
    validate_argv(sys.argv)

    analzr = Analyzer(sys.argv[1])
    print(analzr.analyze())