-
Notifications
You must be signed in to change notification settings - Fork 233
/
test_server_api.py
70 lines (48 loc) · 2.51 KB
/
test_server_api.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
import unittest
import unittest
class TestApi(unittest.TestCase):
def test_default_engine_configuration(self):
from optimus.server import Session
s1 = Session(engineConfiguration="pandas")
s2 = Session(engineConfiguration={"engine": "pandas"})
s3 = Session({"engineConfiguration": "pandas"})
s4 = Session({"engineConfiguration": {"engine": "pandas"}})
self.assertEqual(s1.config["engineConfiguration"], "pandas")
self.assertEqual(s2.config["engineConfiguration"], {"engine": "pandas"})
self.assertEqual(s3.config["engineConfiguration"], "pandas")
self.assertEqual(s4.config["engineConfiguration"], {"engine": "pandas"})
def test_default_engine_configuration_initialized(self):
from optimus.server import Session
s1 = Session(engineConfiguration="pandas")
s2 = Session(engineConfiguration={"engine": "pandas"})
s3 = Session({"engineConfiguration": "pandas"})
s4 = Session({"engineConfiguration": {"engine": "pandas"}})
self.assertEqual(s1.default_engine.name, "op")
self.assertEqual(s2.default_engine.name, "op")
self.assertEqual(s3.default_engine.name, "op")
self.assertEqual(s4.default_engine.name, "op")
def test_engine_configuration(self):
from optimus.server import Session
session = Session()
e1 = session.engine("pandas")
e2 = session.engine({"engine": "pandas"})
self.assertEqual(e1.name, "op")
self.assertEqual(e2.name, "op2")
def test_session_request(self):
from optimus.server import Session
session = Session()
response = session.request(operation="createDataframe", dict={"foo": [1, 2.0, "bar"]})
self.assertEqual(response["updated"], "df")
def test_engine_request(self):
from optimus.server import Session
session = Session()
e1 = session.engine("pandas")
e2 = session.engine({"engine": "pandas"})
r1 = e1.request(operation="createDataframe", dict={"foo": [1, 2.0, "bar"]})
r2 = e2.request(operation="createDataframe", dict={"zoo": [1.0, 2, "baz"]})
self.assertEqual(r1["updated"], "df")
self.assertEqual(r2["updated"], "df2")
def test_direct_request(self):
from optimus.server.functions import run
response = run("default", dict(source="op", operation="createDataframe", dict={"foo": [1, 2.0, "bar"]}))
self.assertEqual(response["updated"], "df")