Skip to content

Commit fd15315

Browse files
committed
Slightly improve test layer setup by invoking the CrateLayer at runtime
This is the foundation to improve the situation later by adding support for running CrateDB through Docker or other means.
1 parent 80295e9 commit fd15315

File tree

1 file changed

+16
-10
lines changed

1 file changed

+16
-10
lines changed

src/crate/client/tests.py

+16-10
Original file line numberDiff line numberDiff line change
@@ -108,17 +108,23 @@ def setUpMocked(test):
108108
crate_port = 44209
109109
crate_transport_port = 44309
110110
local = '127.0.0.1'
111-
crate_layer = CrateLayer('crate',
112-
crate_home=crate_path(),
113-
port=crate_port,
114-
host=local,
115-
transport_port=crate_transport_port,
116-
settings=settings)
117-
118111
crate_host = "{host}:{port}".format(host=local, port=crate_port)
119112
crate_uri = "http://%s" % crate_host
120113

121114

115+
def ensure_cratedb_layer():
116+
global crate_layer
117+
118+
if crate_layer is None:
119+
crate_layer = CrateLayer('crate',
120+
crate_home=crate_path(),
121+
port=crate_port,
122+
host=local,
123+
transport_port=crate_transport_port,
124+
settings=settings)
125+
return crate_layer
126+
127+
122128
def refresh(table):
123129
with connect(crate_host) as conn:
124130
cursor = conn.cursor()
@@ -348,7 +354,7 @@ def test_suite():
348354
optionflags=flags,
349355
encoding='utf-8'
350356
)
351-
s.layer = crate_layer
357+
s.layer = ensure_cratedb_layer()
352358
suite.addTest(s)
353359

354360
s = doctest.DocFileSuite(
@@ -362,7 +368,7 @@ def test_suite():
362368
optionflags=flags,
363369
encoding='utf-8'
364370
)
365-
s.layer = crate_layer
371+
s.layer = ensure_cratedb_layer()
366372
suite.addTest(s)
367373

368374
s = doctest.DocFileSuite(
@@ -372,7 +378,7 @@ def test_suite():
372378
optionflags=flags,
373379
encoding='utf-8'
374380
)
375-
s.layer = crate_layer
381+
s.layer = ensure_cratedb_layer()
376382
suite.addTest(s)
377383

378384
return suite

0 commit comments

Comments
 (0)