Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Goblin OGM
AIO Gremlin
Commits
ba1bdb55
Commit
ba1bdb55
authored
Jul 29, 2015
by
davebshow
Browse files
refactored tests to run agains titan 0.9.0-M2 as well as GA 3.0.0. Closes issue
#1
parent
eae145c9
Changes
1
Hide whitespace changes
Inline
Side-by-side
tests/tests.py
View file @
ba1bdb55
...
...
@@ -6,7 +6,7 @@ import unittest
import
uuid
from
aiogremlin
import
(
submit
,
GremlinConnector
,
GremlinClient
,
GremlinClientSession
)
GremlinClientSession
,
GremlinServerError
)
class
SubmitTest
(
unittest
.
TestCase
):
...
...
@@ -18,36 +18,44 @@ class SubmitTest(unittest.TestCase):
def
tearDown
(
self
):
self
.
loop
.
close
()
def
test_submit
(
self
):
# def test_submit(self):
#
# @asyncio.coroutine
# def go():
# resp = yield from submit("4 + 4", bindings={"x": 4},
# loop=self.loop)
# results = yield from resp.get()
# return results
#
# results = self.loop.run_until_complete(go())
# self.assertEqual(results[0].data[0], 8)
@
asyncio
.
coroutine
def
go
():
resp
=
yield
from
submit
(
"4 + 4"
,
bindings
=
{
"x"
:
4
},
loop
=
self
.
loop
)
results
=
yield
from
resp
.
get
()
return
results
def
test_rebinding
(
self
):
results
=
self
.
loop
.
run_until_complete
(
go
())
self
.
assertEqual
(
results
[
0
].
data
[
0
],
8
)
@
asyncio
.
coroutine
def
go1
():
result
=
yield
from
submit
(
"graph2.addVertex()"
,
loop
=
self
.
loop
)
resp
=
yield
from
result
.
get
()
def
test_rebinding
(
self
):
execute
=
submit
(
"graph2.addVertex()"
,
loop
=
self
.
loop
)
try
:
self
.
loop
.
run_until_complete
(
execute
.
get
())
self
.
loop
.
run_until_complete
(
go1
())
error
=
False
except
:
except
GremlinServerError
:
error
=
True
self
.
assertTrue
(
error
)
@
asyncio
.
coroutine
def
go
():
def
go
2
():
result
=
yield
from
submit
(
"graph2.addVertex()"
,
rebindings
=
{
"graph2"
:
"graph"
},
loop
=
self
.
loop
)
resp
=
yield
from
result
.
get
()
self
.
assertEqual
(
len
(
resp
),
1
)
self
.
loop
.
run_until_complete
(
go
())
try
:
self
.
loop
.
run_until_complete
(
go2
())
except
GremlinServerError
:
print
(
"RELEASE DOES NOT SUPPORT REBINDINGS"
)
class
GremlinClientTest
(
unittest
.
TestCase
):
...
...
@@ -120,7 +128,7 @@ class GremlinClientTest(unittest.TestCase):
try
:
self
.
loop
.
run_until_complete
(
execute
)
error
=
False
except
:
except
GremlinServerError
:
error
=
True
self
.
assertTrue
(
error
)
...
...
@@ -130,8 +138,10 @@ class GremlinClientTest(unittest.TestCase):
"graph2.addVertex()"
,
rebindings
=
{
"graph2"
:
"graph"
})
self
.
assertEqual
(
len
(
result
),
1
)
self
.
loop
.
run_until_complete
(
go
())
try
:
self
.
loop
.
run_until_complete
(
go
())
except
GremlinServerError
:
print
(
"RELEASE DOES NOT SUPPORT REBINDINGS"
)
class
GremlinClientSessionTest
(
unittest
.
TestCase
):
...
...
@@ -141,10 +151,9 @@ class GremlinClientSessionTest(unittest.TestCase):
asyncio
.
set_event_loop
(
None
)
self
.
gc
=
GremlinClientSession
(
url
=
"ws://localhost:8182/"
,
loop
=
self
.
loop
)
self
.
script1
=
"""graph = TinkerFactory.createModern()
g = graph.traversal(standard())"""
self
.
script1
=
"""v = graph.addVertex('name', 'Dave')"""
self
.
script2
=
"
g.V().has('name','marko').out('knows').values
('name')"
self
.
script2
=
"
v.property
('name')"
def
tearDown
(
self
):
self
.
loop
.
run_until_complete
(
self
.
gc
.
close
())
...
...
@@ -159,7 +168,7 @@ class GremlinClientSessionTest(unittest.TestCase):
return
results
results
=
self
.
loop
.
run_until_complete
(
go
())
self
.
assert
True
(
len
(
results
[
0
].
data
),
2
)
self
.
assert
Equal
(
results
[
0
].
data
[
0
][
'value'
],
'Dave'
)
def
test_session_reset
(
self
):
...
...
@@ -169,9 +178,12 @@ class GremlinClientSessionTest(unittest.TestCase):
self
.
gc
.
reset_session
()
results
=
yield
from
self
.
gc
.
execute
(
self
.
script2
)
return
results
results
=
self
.
loop
.
run_until_complete
(
go
())
self
.
assertIsNone
(
results
[
0
].
data
)
try
:
results
=
self
.
loop
.
run_until_complete
(
go
())
error
=
False
except
GremlinServerError
:
error
=
True
self
.
assertTrue
(
error
)
def
test_session_manual_reset
(
self
):
...
...
@@ -184,9 +196,12 @@ class GremlinClientSessionTest(unittest.TestCase):
self
.
assertEqual
(
self
.
gc
.
session
,
new_sess
)
results
=
yield
from
self
.
gc
.
execute
(
self
.
script2
)
return
results
results
=
self
.
loop
.
run_until_complete
(
go
())
self
.
assertIsNone
(
results
[
0
].
data
)
try
:
results
=
self
.
loop
.
run_until_complete
(
go
())
error
=
False
except
GremlinServerError
:
error
=
True
self
.
assertTrue
(
error
)
def
test_session_set
(
self
):
...
...
@@ -198,9 +213,12 @@ class GremlinClientSessionTest(unittest.TestCase):
self
.
assertEqual
(
self
.
gc
.
session
,
new_sess
)
results
=
yield
from
self
.
gc
.
execute
(
self
.
script2
)
return
results
results
=
self
.
loop
.
run_until_complete
(
go
())
self
.
assertIsNone
(
results
[
0
].
data
)
try
:
results
=
self
.
loop
.
run_until_complete
(
go
())
error
=
False
except
GremlinServerError
:
error
=
True
self
.
assertTrue
(
error
)
def
test_resp_session
(
self
):
...
...
@@ -218,32 +236,5 @@ class GremlinClientSessionTest(unittest.TestCase):
self
.
loop
.
run_until_complete
(
go
())
class
ContextMngrTest
(
unittest
.
TestCase
):
def
setUp
(
self
):
self
.
loop
=
asyncio
.
new_event_loop
()
asyncio
.
set_event_loop
(
None
)
self
.
connector
=
GremlinConnector
(
loop
=
self
.
loop
)
def
tearDown
(
self
):
self
.
loop
.
run_until_complete
(
self
.
connector
.
close
())
self
.
loop
.
close
()
# def test_connection_manager(self):
# results = []
#
# @asyncio.coroutine
# def go():
# with (yield from self.connector) as conn:
# client = SimpleGremlinClient(conn, loop=self.loop)
# resp = yield from client.submit("1 + 1")
# while True:
# mssg = yield from resp.stream.read()
# if mssg is None:
# break
# results.append(mssg)
# self.loop.run_until_complete(go())
if
__name__
==
"__main__"
:
unittest
.
main
()
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment