This repository has been archived by the owner on Apr 27, 2019. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
tests.py
101 lines (80 loc) · 3.31 KB
/
tests.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from baanlib import (Baan,
BaanWrapper,
UnknownDllException,
UnknownMethodException
)
from unittest import TestCase
from mock import Mock
class TestBaanWrapper(TestCase):
def test_dll_name(self):
b = Baan('Baan.Application.erpln', dispatcher=Mock())
self.assertEqual(b.ottstpapihand._dll_name, "ottstpapihand")
self.assertEqual(b.ottstpapihand.stpapi.put.field._dll_name, "ottstpapihand")
b.close()
def test_method_name(self):
b = Baan('Baan.Application.erpln', dispatcher=Mock())
self.assertEqual(b.ottstpapihand.stpapi._method_name,
"stpapi")
self.assertEqual(b.ottstpapihand.stpapi.put.field._method_name,
"stpapi.put.field")
b.close()
def test_get_calling_method(self):
b = Baan('Baan.Application.erpln', dispatcher=Mock())
wrapper = b.ottstpapihand.stpapi.put.field
calling_method = wrapper._get_calling_method(
*('tcibd0501m000', 'tcibd001.item', 'TEST'))
self.assertEqual(
'stpapi.put.field("tcibd0501m000", "tcibd001.item", "TEST")',
calling_method
)
b.close()
def test_call(self):
mock = Mock()
b = Baan('Baan.Application.erpln', dispatcher=mock)
baanmock = mock.return_value
b.ottstpapihand.stpapi.put.field("tcibd0501m000", "tcibd001.item", "TEST")
baanmock.ParseExecFunction.assert_called_with(
'ottstpapihand',
'stpapi.put.field("tcibd0501m000", "tcibd001.item", "TEST")',
)
b.test.some.foo("test", 10)
baanmock.ParseExecFunction.assert_called_with(
'test',
'some.foo("test", 10)',
)
b.test.some.foo("test", 10.0)
baanmock.ParseExecFunction.assert_called_with(
'test',
'some.foo("test", 10.0)',
)
b.close()
def test_with_statement(self):
with Baan('Baan.Application.erpln', dispatcher=Mock()) as b:
b.test.foo(1)
self.assertIsNone(b._baan)
def test_has_properties(self):
with Baan('Baan.Application.erpln', dispatcher=Mock()) as b:
self.assertNotIsInstance(b.Timeout, BaanWrapper)
self.assertEqual(b.Timeout, 3600)
self.assertNotIsInstance(b.ReturnValue, BaanWrapper)
self.assertNotIsInstance(b.FunctionCall, BaanWrapper)
self.assertNotIsInstance(b.ReturnCall, BaanWrapper)
self.assertNotIsInstance(b.Binary, BaanWrapper)
def test_setter(self):
with Baan('Baan.Application.erpln', dispatcher=Mock()) as b:
b.Timeout = 3800
b.Binary = True
def test_error_unknown_dll(self):
mock = Mock()
with Baan('Baan.Application.erpln', dispatcher=mock) as b:
baanmock = mock.return_value
baanmock.Error = -1
self.assertRaises(UnknownDllException, b.unkowndll.foo)
def test_error_unknown_method(self):
mock = Mock()
with Baan('Baan.Application.erpln', dispatcher=mock) as b:
baanmock = mock.return_value
baanmock.Error = -2
self.assertRaises(UnknownMethodException, b.dll.unknown_method)