def handle_transfer_from(self, tool_obj, tool_settings, from_info, volume, extra_pull=False): extra_pull_delay = (tool_settings.get('extra-pull-delay', 0) if extra_pull else 0) extra_pull_volume = (tool_settings.get('extra-pull-volume', 0) if extra_pull else 0) from_well = self.get_well_obj(from_info) should_touch_tip_on_from = from_info.get('touch-tip', False) from_tip_offset = from_info.get('tip-offset', 0) from_delay = from_info.get('delay', 0) from_location = (from_well, from_well.from_center(x=0, y=0, z=-1) + vector.Vector(0, 0, from_tip_offset)) tool_obj.aspirate(volume + extra_pull_volume, from_location) if extra_pull_delay > 0: tool_obj.delay(extra_pull_delay) if extra_pull_volume > 0: tool_obj.dispense(extra_pull_volume) if should_touch_tip_on_from: tool_obj.touch_tip() if from_delay > 0: tool_obj.delay(from_delay)
def test_drop_tip_default_trash(robot, instruments): tiprack = containers_load(robot, 'tiprack-200ul', '1') pip = instruments.P300_Single(mount='right', tip_racks=[tiprack]) trash_loc = vector.Vector([80.00, 80.00, 80.00]) pip.pick_up_tip() with mock.patch.object(robot, 'move_to') as move_to: # NOQA pip.drop_tip() move_to.assert_called_with((robot.fixed_trash[0], trash_loc), instrument=pip, strategy='arc')
def handle_transfer_to(self, tool_obj, to_info, volume): to_well = self.get_well_obj(to_info) should_touch_tip_on_to = to_info.get('touch-tip', False) to_tip_offset = to_info.get('tip-offset', 0) to_delay = to_info.get('delay', 0) blowout = to_info.get('blowout', False) to_location = (to_well, to_well.from_center(x=0, y=0, z=-1) + vector.Vector(0, 0, to_tip_offset)) tool_obj.dispense(volume, to_location) if blowout: tool_obj.blow_out(to_location) if should_touch_tip_on_to: tool_obj.touch_tip() if to_delay is not None: tool_obj.delay(to_delay)