Skip to content

Commit 94bbb99

Browse files
authored
enable the pipette script to skip all pressure based things (#16934)
<!-- Thanks for taking the time to open a Pull Request (PR)! Please make sure you've read the "Opening Pull Requests" section of our Contributing Guide: https://github.com/Opentrons/opentrons/blob/edge/CONTRIBUTING.md#opening-pull-requests GitHub provides robust markdown to format your PR. Links, diagrams, pictures, and videos along with text formatting make it possible to create a rich and informative PR. For more information on GitHub markdown, see: https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax To ensure your code is reviewed quickly and thoroughly, please fill out the sections below to the best of your ability! --> # Overview Add an option for skipping pressure, we won't actually need this apparently since they changed their mind about skipping the step of drilling out the back vent of the diaphragm but if they change that in the future we can use this. <!-- Describe your PR at a high level. State acceptance criteria and how this PR fits into other work. Link issues, PRs, and other relevant resources. --> ## Test Plan and Hands on Testing <!-- Describe your testing of the PR. Emphasize testing not reflected in the code. Attach protocols, logs, screenshots and any other assets that support your testing. --> ## Changelog <!-- List changes introduced by this PR considering future developers and the end user. Give careful thought and clear documentation to breaking changes. --> ## Review requests <!-- - What do you need from reviewers to feel confident this PR is ready to merge? - Ask questions. --> ## Risk assessment <!-- - Indicate the level of attention this PR needs. - Provide context to guide reviewers. - Discuss trade-offs, coupling, and side effects. - Look for the possibility, even if you think it's small, that your change may affect some other part of the system. - For instance, changing return tip behavior may also change the behavior of labware calibration. - How do your unit tests and on hands on testing mitigate this PR's risks and the risk of future regressions? - Especially in high risk PRs, explain how you know your testing is enough. -->
1 parent cb182a0 commit 94bbb99

File tree

1 file changed

+24
-9
lines changed
  • hardware-testing/hardware_testing/production_qc/pipette_assembly_qc_ot3

1 file changed

+24
-9
lines changed

hardware-testing/hardware_testing/production_qc/pipette_assembly_qc_ot3/__main__.py

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ class TestConfig:
119119
num_trials: int
120120
droplet_wait_seconds: int
121121
simulate: bool
122+
skip_all_pressure: bool
122123

123124

124125
@dataclass
@@ -700,9 +701,12 @@ async def _test_for_leak(
700701
accumulate_raw_data_cb
701702
), "pressure fixture requires recording data to disk"
702703
await _move_to_fixture(api, mount)
703-
test_passed = await _fixture_check_pressure(
704-
api, mount, test_config, fixture, write_cb, accumulate_raw_data_cb
705-
)
704+
if not test_config.skip_all_pressure:
705+
test_passed = await _fixture_check_pressure(
706+
api, mount, test_config, fixture, write_cb, accumulate_raw_data_cb
707+
)
708+
else:
709+
test_passed = True
706710
else:
707711
await _pick_up_tip_for_tip_volume(api, mount, tip_volume=tip_volume)
708712
await _move_to_reservoir_liquid(api, mount)
@@ -1129,7 +1133,9 @@ async def _read_pressure(_sensor_id: SensorId) -> float:
11291133
return all(results)
11301134

11311135

1132-
async def _test_diagnostics(api: OT3API, mount: OT3Mount, write_cb: Callable) -> bool:
1136+
async def _test_diagnostics(
1137+
api: OT3API, mount: OT3Mount, write_cb: Callable, cfg: TestConfig
1138+
) -> bool:
11331139
# ENVIRONMENT SENSOR
11341140
environment_pass = await _test_diagnostics_environment(api, mount, write_cb)
11351141
print(f"environment: {_bool_to_pass_fail(environment_pass)}")
@@ -1146,9 +1152,14 @@ async def _test_diagnostics(api: OT3API, mount: OT3Mount, write_cb: Callable) ->
11461152
print(f"capacitance: {_bool_to_pass_fail(capacitance_pass)}")
11471153
write_cb(["diagnostics-capacitance", _bool_to_pass_fail(capacitance_pass)])
11481154
# PRESSURE
1149-
pressure_pass = await _test_diagnostics_pressure(api, mount, write_cb)
1150-
print(f"pressure: {_bool_to_pass_fail(pressure_pass)}")
1155+
if not cfg.skip_all_pressure:
1156+
pressure_pass = await _test_diagnostics_pressure(api, mount, write_cb)
1157+
print(f"pressure: {_bool_to_pass_fail(pressure_pass)}")
1158+
else:
1159+
print("Skipping pressure")
1160+
pressure_pass = True
11511161
write_cb(["diagnostics-pressure", _bool_to_pass_fail(pressure_pass)])
1162+
11521163
return environment_pass and pressure_pass and encoder_pass and capacitance_pass
11531164

11541165

@@ -1674,7 +1685,9 @@ async def _main(test_config: TestConfig) -> None: # noqa: C901
16741685
if not test_config.skip_diagnostics:
16751686
await api.move_to(mount, hover_over_slot_3)
16761687
await api.move_rel(mount, Point(z=-20))
1677-
test_passed = await _test_diagnostics(api, mount, csv_cb.write)
1688+
test_passed = await _test_diagnostics(
1689+
api, mount, csv_cb.write, test_config
1690+
)
16781691
await api.retract(mount)
16791692
csv_cb.results("diagnostics", test_passed)
16801693
if not test_config.skip_plunger:
@@ -1806,6 +1819,7 @@ async def _main(test_config: TestConfig) -> None: # noqa: C901
18061819
arg_parser.add_argument("--skip-plunger", action="store_true")
18071820
arg_parser.add_argument("--skip-tip-presence", action="store_true")
18081821
arg_parser.add_argument("--skip-liquid-probe", action="store_true")
1822+
arg_parser.add_argument("--skip-all-pressure", action="store_true")
18091823
arg_parser.add_argument("--fixture-side", choices=["left", "right"], default="left")
18101824
arg_parser.add_argument("--port", type=str, default="")
18111825
arg_parser.add_argument("--num-trials", type=int, default=2)
@@ -1841,11 +1855,11 @@ async def _main(test_config: TestConfig) -> None: # noqa: C901
18411855
_cfg = TestConfig(
18421856
operator_name=operator,
18431857
skip_liquid=args.skip_liquid,
1844-
skip_fixture=args.skip_fixture,
1858+
skip_fixture=args.skip_fixture or args.skip_all_pressure,
18451859
skip_diagnostics=args.skip_diagnostics,
18461860
skip_plunger=args.skip_plunger,
18471861
skip_tip_presence=args.skip_tip_presence,
1848-
skip_liquid_probe=args.skip_liquid_probe,
1862+
skip_liquid_probe=args.skip_liquid_probe or args.skip_all_pressure,
18491863
fixture_port=args.port,
18501864
fixture_side=args.fixture_side,
18511865
fixture_aspirate_sample_count=args.aspirate_sample_count,
@@ -1859,6 +1873,7 @@ async def _main(test_config: TestConfig) -> None: # noqa: C901
18591873
num_trials=args.num_trials,
18601874
droplet_wait_seconds=args.wait,
18611875
simulate=args.simulate,
1876+
skip_all_pressure=args.skip_all_pressure,
18621877
)
18631878
# NOTE: overwrite default aspirate sample-count from user's input
18641879
# FIXME: this value is being set in a few places, maybe there's a way to clean this up

0 commit comments

Comments
 (0)