Skip to content

Commit daadee2

Browse files
authored
update ItemizedResource naming from indices to canonical (#737)
1 parent b5ee6e1 commit daadee2

File tree

3 files changed

+75
-73
lines changed

3 files changed

+75
-73
lines changed

pylabrobot/resources/itemized_resource_tests.py

Lines changed: 72 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,21 @@ def setUp(self) -> None:
4444

4545
def test_initialize_with_wells(self):
4646
self.assertEqual(len(self.plate.children), 96)
47-
self.assertEqual(self.plate.children[0].name, "plate_well_0_0")
48-
self.assertEqual(self.plate.children[95].name, "plate_well_11_7")
47+
self.assertEqual(self.plate.children[0].name, "plate_well_A1")
48+
self.assertEqual(self.plate.children[95].name, "plate_well_H12")
4949

5050
def test_get_item_int(self):
51-
self.assertEqual(self.plate.get_item(0).name, "plate_well_0_0")
52-
self.assertEqual(self.plate.get_item(95).name, "plate_well_11_7")
51+
self.assertEqual(self.plate.get_item(0).name, "plate_well_A1")
52+
self.assertEqual(self.plate.get_item(95).name, "plate_well_H12")
5353

5454
def test_get_item_str(self):
55-
self.assertEqual(self.plate.get_item("A1").name, "plate_well_0_0")
56-
self.assertEqual(self.plate.get_item("B1").name, "plate_well_0_1")
57-
self.assertEqual(self.plate.get_item("A2").name, "plate_well_1_0")
55+
self.assertEqual(self.plate.get_item("A1").name, "plate_well_A1")
56+
self.assertEqual(self.plate.get_item("B1").name, "plate_well_B1")
57+
self.assertEqual(self.plate.get_item("A2").name, "plate_well_A2")
5858

5959
def test_get_item_tuple(self):
60-
self.assertEqual(self.plate.get_item((0, 0)).name, "plate_well_0_0")
61-
self.assertEqual(self.plate.get_item((7, 11)).name, "plate_well_11_7")
60+
self.assertEqual(self.plate.get_item((0, 0)).name, "plate_well_A1")
61+
self.assertEqual(self.plate.get_item((7, 11)).name, "plate_well_H12")
6262

6363
def test_well_get_absolute_location(self):
6464
self.assertEqual(
@@ -83,48 +83,48 @@ def test_well_get_absolute_location(self):
8383
)
8484

8585
def test_getitem_int(self):
86-
self.assertEqual(self.plate[0][0].name, "plate_well_0_0")
86+
self.assertEqual(self.plate[0][0].name, "plate_well_A1")
8787

8888
def test_getitem_str(self):
89-
self.assertEqual(self.plate["A1"][0].name, "plate_well_0_0")
90-
self.assertEqual(self.plate["B2"][0].name, "plate_well_1_1")
89+
self.assertEqual(self.plate["A1"][0].name, "plate_well_A1")
90+
self.assertEqual(self.plate["B2"][0].name, "plate_well_B2")
9191

9292
def test_getitem_slice(self):
9393
self.assertEqual(
9494
[w.name for w in self.plate[0:7]],
9595
[
96-
"plate_well_0_0",
97-
"plate_well_0_1",
98-
"plate_well_0_2",
99-
"plate_well_0_3",
100-
"plate_well_0_4",
101-
"plate_well_0_5",
102-
"plate_well_0_6",
96+
"plate_well_A1",
97+
"plate_well_B1",
98+
"plate_well_C1",
99+
"plate_well_D1",
100+
"plate_well_E1",
101+
"plate_well_F1",
102+
"plate_well_G1",
103103
],
104104
)
105105

106106
def test_getitem_range(self):
107107
self.assertEqual(
108108
[w.name for w in self.plate[range(7)]],
109109
[
110-
"plate_well_0_0",
111-
"plate_well_0_1",
112-
"plate_well_0_2",
113-
"plate_well_0_3",
114-
"plate_well_0_4",
115-
"plate_well_0_5",
116-
"plate_well_0_6",
110+
"plate_well_A1",
111+
"plate_well_B1",
112+
"plate_well_C1",
113+
"plate_well_D1",
114+
"plate_well_E1",
115+
"plate_well_F1",
116+
"plate_well_G1",
117117
],
118118
)
119119

120120
def test_getitem_str_range(self):
121121
self.assertEqual(
122122
[w.name for w in self.plate["A1:B2"]],
123123
[
124-
"plate_well_0_0",
125-
"plate_well_1_0",
126-
"plate_well_0_1",
127-
"plate_well_1_1",
124+
"plate_well_A1",
125+
"plate_well_A2",
126+
"plate_well_B1",
127+
"plate_well_B2",
128128
],
129129
)
130130

@@ -137,49 +137,49 @@ def test_getitem_str_error(self):
137137
def test_getitem_tuple_int(self):
138138
self.assertEqual(
139139
[w.name for w in self.plate[0, 4, 1]],
140-
["plate_well_0_0", "plate_well_0_4", "plate_well_0_1"],
140+
["plate_well_A1", "plate_well_E1", "plate_well_B1"],
141141
)
142142

143143
def test_getitem_tuple_str(self):
144144
self.assertEqual(
145145
[w.name for w in self.plate["A1", "B2", "A2"]],
146-
["plate_well_0_0", "plate_well_1_1", "plate_well_1_0"],
146+
["plate_well_A1", "plate_well_B2", "plate_well_A2"],
147147
)
148148

149149
def test_get_row(self):
150150
self.assertEqual(
151151
[w.name for w in self.plate.row(0)],
152152
[
153-
"plate_well_0_0",
154-
"plate_well_1_0",
155-
"plate_well_2_0",
156-
"plate_well_3_0",
157-
"plate_well_4_0",
158-
"plate_well_5_0",
159-
"plate_well_6_0",
160-
"plate_well_7_0",
161-
"plate_well_8_0",
162-
"plate_well_9_0",
163-
"plate_well_10_0",
164-
"plate_well_11_0",
153+
"plate_well_A1",
154+
"plate_well_A2",
155+
"plate_well_A3",
156+
"plate_well_A4",
157+
"plate_well_A5",
158+
"plate_well_A6",
159+
"plate_well_A7",
160+
"plate_well_A8",
161+
"plate_well_A9",
162+
"plate_well_A10",
163+
"plate_well_A11",
164+
"plate_well_A12",
165165
],
166166
)
167167

168168
self.assertEqual(
169169
[w.name for w in self.plate.row(3)],
170170
[
171-
"plate_well_0_3",
172-
"plate_well_1_3",
173-
"plate_well_2_3",
174-
"plate_well_3_3",
175-
"plate_well_4_3",
176-
"plate_well_5_3",
177-
"plate_well_6_3",
178-
"plate_well_7_3",
179-
"plate_well_8_3",
180-
"plate_well_9_3",
181-
"plate_well_10_3",
182-
"plate_well_11_3",
171+
"plate_well_D1",
172+
"plate_well_D2",
173+
"plate_well_D3",
174+
"plate_well_D4",
175+
"plate_well_D5",
176+
"plate_well_D6",
177+
"plate_well_D7",
178+
"plate_well_D8",
179+
"plate_well_D9",
180+
"plate_well_D10",
181+
"plate_well_D11",
182+
"plate_well_D12",
183183
],
184184
)
185185

@@ -203,28 +203,28 @@ def test_get_column(self):
203203
self.assertEqual(
204204
[w.name for w in self.plate.column(0)],
205205
[
206-
"plate_well_0_0",
207-
"plate_well_0_1",
208-
"plate_well_0_2",
209-
"plate_well_0_3",
210-
"plate_well_0_4",
211-
"plate_well_0_5",
212-
"plate_well_0_6",
213-
"plate_well_0_7",
206+
"plate_well_A1",
207+
"plate_well_B1",
208+
"plate_well_C1",
209+
"plate_well_D1",
210+
"plate_well_E1",
211+
"plate_well_F1",
212+
"plate_well_G1",
213+
"plate_well_H1",
214214
],
215215
)
216216

217217
self.assertEqual(
218218
[w.name for w in self.plate.column(3)],
219219
[
220-
"plate_well_3_0",
221-
"plate_well_3_1",
222-
"plate_well_3_2",
223-
"plate_well_3_3",
224-
"plate_well_3_4",
225-
"plate_well_3_5",
226-
"plate_well_3_6",
227-
"plate_well_3_7",
220+
"plate_well_A4",
221+
"plate_well_B4",
222+
"plate_well_C4",
223+
"plate_well_D4",
224+
"plate_well_E4",
225+
"plate_well_F4",
226+
"plate_well_G4",
227+
"plate_well_H4",
228228
],
229229
)
230230

pylabrobot/resources/utils.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,8 @@ def create_ordered_items_2d(
176176
**kwargs,
177177
)
178178
keys = [f"{LETTERS[j]}{i+1}" for i in range(num_items_x) for j in range(num_items_y)]
179+
for key, item in zip(keys, (item for sublist in items for item in sublist)):
180+
item.name = f"{klass.__name__.lower()}_{key}"
179181
return dict(zip(keys, [item for sublist in items for item in sublist]))
180182

181183

pylabrobot/visualizer/visualizer_tests.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,6 @@ async def test_state_updated(self):
145145
call_args = self.vis.send_command.call_args[1] # type: ignore[attr-defined]
146146
self.assertEqual(call_args["event"], "set_state")
147147
self.assertEqual(
148-
call_args["data"]["plate_01_well_11_7"]["liquids"],
148+
call_args["data"]["plate_01_well_H12"]["liquids"],
149149
[[None, 500]],
150150
)

0 commit comments

Comments
 (0)