Skip to content

Commit 409c66e

Browse files
committedJul 5, 2015
test: convert lda/tcube/409b to hardware_testbench
1 parent 959ba99 commit 409c66e

File tree

4 files changed

+24
-24
lines changed

4 files changed

+24
-24
lines changed
 

‎artiq/test/hardware_testbench.py

+15
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,21 @@
1414
logger = logging.getLogger(__name__)
1515

1616

17+
def get_from_ddb(*path, default="skip"):
18+
if not artiq_root:
19+
raise unittest.SkipTest("no ARTIQ_ROOT")
20+
v = FlatFileDB(os.path.join(artiq_root, "ddb.pyon")).data
21+
try:
22+
for p in path:
23+
v = v.read[v]
24+
return v.read
25+
except KeyError:
26+
if default == "skip":
27+
raise unittest.SkipTest("ddb path {} not found".format(path))
28+
else:
29+
return default
30+
31+
1732
@unittest.skipUnless(artiq_root, "no ARTIQ_ROOT")
1833
class ExperimentCase(unittest.TestCase):
1934
def setUp(self):

‎artiq/test/lda.py

+4-10
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
11
import unittest
2-
import os
32

43
from artiq.devices.lda.driver import Lda, Ldasim
54
from artiq.language.units import dB
6-
7-
8-
lda_serial = os.getenv("ARTIQ_LDA_SERIAL")
5+
from artiq.test.hardware_testbench import get_from_ddb
96

107

118
class GenericLdaTest:
@@ -19,16 +16,13 @@ def test_attenuation(self):
1916
self.assertEqual(i, self.cont.get_attenuation())
2017

2118

22-
@unittest.skipUnless(lda_serial, "no hardware")
2319
class TestLda(GenericLdaTest, unittest.TestCase):
2420
def setUp(self):
25-
product = os.getenv("ARTIQ_LDA_PRODUCT")
26-
self.cont = Lda(serial=lda_serial, product=product)
21+
lda_serial = get_from_ddb("lda", "device")
22+
lda_product = get_from_ddb("lda", "product")
23+
self.cont = Lda(serial=lda_serial, product=lda_product)
2724

2825

2926
class TestLdaSim(GenericLdaTest, unittest.TestCase):
3027
def setUp(self):
3128
self.cont = Ldasim()
32-
33-
if __name__ == "__main__":
34-
unittest.main()

‎artiq/test/novatech409b.py

+2-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
import unittest
2-
import os
32

43
from artiq.devices.novatech409b.driver import Novatech409B
5-
6-
7-
novatech409b_device = os.getenv("NOVATECH409B_DEVICE")
4+
from artiq.test.hardware_testbench import get_from_ddb
85

96

107
class GenericNovatech409BTest:
@@ -23,9 +20,9 @@ def test_parameters_readback(self):
2320
self.assertEqual(r[0:23], "00989680 2000 01F5 0000")
2421

2522

26-
@unittest.skipUnless(novatech409b_device, "no hardware")
2723
class TestNovatech409B(GenericNovatech409BTest, unittest.TestCase):
2824
def setUp(self):
25+
novatech409b_device = get_from_ddb("novatech409b", "device")
2926
self.driver = Novatech409B(novatech409b_device)
3027

3128

‎artiq/test/thorlabs_tcube.py

+3-9
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import unittest
2-
import os
32
import time
43

54
from artiq.devices.thorlabs_tcube.driver import Tdc, Tpz, TdcSim, TpzSim
65
from artiq.language.units import V
6+
from artiq.test.hardware_testbench import get_from_ddb
77

88

99
class GenericTdcTest:
@@ -131,12 +131,9 @@ def test_tpz_io_settings(self):
131131
self.assertEqual(test_vector, self.cont.get_tpz_io_settings())
132132

133133

134-
tdc_serial = os.getenv("ARTIQ_TDC_SERIAL")
135-
136-
137-
@unittest.skipUnless(tdc_serial, "no hardware")
138134
class TestTdc(unittest.TestCase, GenericTdcTest):
139135
def setUp(self):
136+
tdc_serial = get_from_ddb("tdc", "device")
140137
self.cont = Tdc(serial_dev=tdc_serial)
141138

142139

@@ -145,12 +142,9 @@ def setUp(self):
145142
self.cont = TdcSim()
146143

147144

148-
tpz_serial = os.getenv("ARTIQ_TPZ_SERIAL")
149-
150-
151-
@unittest.skipUnless(tpz_serial, "no hardware")
152145
class TestTpz(unittest.TestCase, GenericTpzTest):
153146
def setUp(self):
147+
tpz_serial = get_from_ddb("tpz", "device")
154148
self.cont = Tpz(serial_dev=tpz_serial)
155149

156150

0 commit comments

Comments
 (0)
Please sign in to comment.