Пример #1
0
Файл: test.py Проект: 5j9/kalk
def test_ignore_underscore_in_numbers():
    assert evaluate('1_2.3_4e0_6J') == 12340000j
Пример #2
0
Файл: test.py Проект: 5j9/kalk
def test_eulers_number():
    assert evaluate('e') is e
Пример #3
0
Файл: test.py Проект: 5j9/kalk
def test_complex():
    assert evaluate('1+2j 0j -') == 1 + 2j
Пример #4
0
Файл: test.py Проект: 5j9/kalk
def test_capital_e():
    assert evaluate('2E-2') == .02
Пример #5
0
Файл: test.py Проект: 5j9/kalk
def test_thousand_separator():
    assert evaluate('1,234 5 +') == 1239
Пример #6
0
Файл: test.py Проект: 5j9/kalk
def test_float_without_leading_zero():
    assert evaluate('.9') == .9
Пример #7
0
Файл: test.py Проект: 5j9/kalk
def test_zero_division(mocked_print):
    assert evaluate('1 0 /') is None
    mocked_print.assert_called_once_with('ZeroDivisionError')
Пример #8
0
Файл: test.py Проект: 5j9/kalk
def test_chr(mocked_print):
    assert evaluate('65.1 chr') == 65.1
    mocked_print.assert_called_once_with('A')
Пример #9
0
Файл: test.py Проект: 5j9/kalk
def test_repeat():
    APPEND(7)
    assert evaluate('rep +') == 14
Пример #10
0
Файл: test.py Проект: 5j9/kalk
def test_sto_rcl(mocked_print):
    CLEAR()
    assert evaluate('1 2 sto 3 4 + 2 rcl +') == 8
    assert evaluate('1 rcl +') is None
    mocked_print.assert_called_once_with('KeyError')
Пример #11
0
Файл: test.py Проект: 5j9/kalk
def test_empty():
    CLEAR()
    assert evaluate('') is None
    APPEND(1)
    assert evaluate('') == 1
Пример #12
0
Файл: test.py Проект: 5j9/kalk
def test_pop():
    CLEAR()
    APPEND(7)
    APPEND(8)
    assert evaluate('1 del') == 7
    assert STACK == [7]
Пример #13
0
Файл: test.py Проект: 5j9/kalk
def test_copy_paste(copy_mock):
    assert evaluate('pst') == 0j
    evaluate('cp')
    copy_mock.assert_called_once_with('0j')
Пример #14
0
Файл: test.py Проект: 5j9/kalk
def test_add():
    assert evaluate('1 +2 +') == 3
Пример #15
0
Файл: test.py Проект: 5j9/kalk
def test_percent():
    assert evaluate('1 2 %%') == 100.0
Пример #16
0
Файл: test.py Проект: 5j9/kalk
def test_distance():
    assert evaluate('0 1 0 0 dist2') == 1.0
Пример #17
0
Файл: test.py Проект: 5j9/kalk
def test_persian_digits():
    assert evaluate('۱ ۲ /') == 0.5
Пример #18
0
Файл: test.py Проект: 5j9/kalk
def test_sum_fsum():
    CLEAR()
    assert evaluate('1 2 3sum') == 6
    assert evaluate('6fsum') == 12.0
Пример #19
0
Файл: test.py Проект: 5j9/kalk
def test_float():
    assert evaluate('1.2 1e2 *') == 120
Пример #20
0
Файл: test.py Проект: 5j9/kalk
def test_swap():
    CLEAR()
    APPEND(1)
    APPEND(2)
    evaluate('<>')
    assert STACK == [2, 1]
Пример #21
0
Файл: test.py Проект: 5j9/kalk
def test_cos():
    assert evaluate('pi cos') == -1.0
Пример #22
0
Файл: test.py Проект: 5j9/kalk
def test_leading_positive_sign():
    assert evaluate('+1 -1 +') == 0
Пример #23
0
Файл: test.py Проект: 5j9/kalk
def test_factorial():
    assert evaluate('3!') == 6
Пример #24
0
Файл: test.py Проект: 5j9/kalk
def test_negative():
    assert evaluate('-1 -2 -') == 1
Пример #25
0
Файл: test.py Проект: 5j9/kalk
def test_invalid_op(mocked_print):
    CLEAR()
    assert evaluate('sin') is None
    mocked_print.assert_called_once_with('Error: not enough arguments')
Пример #26
0
Файл: test.py Проект: 5j9/kalk
def test_syntax_error(mocked_print):
    assert evaluate('a') is None
    mocked_print.assert_called_once_with('SyntaxError')
Пример #27
0
Файл: test.py Проект: 5j9/kalk
def test_preserve_stack_on_binary_fail(mocked_print):
    CLEAR()
    APPEND(1)
    evaluate('*')
    assert STACK == [1]
    mocked_print.assert_called_once_with('Error: not enough arguments')