From 091828676d280becf20452217727b21fcc713129 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 3 Jan 2024 14:35:58 -0600 Subject: [PATCH] fix(app-testing): cleanup --- app-testing/Makefile | 2 +- app-testing/automation/data/protocol_files.py | 37 +-- app-testing/automation/data/protocols.py | 281 ++++-------------- app-testing/example.env | 38 ++- ...6_AnalysisError_AccessToFixedTrashProp.py} | 0 ...None_2_16_AnalysisError_TrashBinInCol2.py} | 0 ...nalysisError_TrashBinInStagingAreaCol3.py} | 0 ...nalysisError_TrashBinInStagingAreaCol4.py} | 0 ...ysisError_MagneticModuleInFlexProtocol.py} | 0 ...one_TM_2_16_AnalysisError_ModuleInCol2.py} | 0 ..._AnalysisError_ModuleInStagingAreaCol3.py} | 0 ..._AnalysisError_ModuleInStagingAreaCol4.py} | 0 ...2_16_AnalysisError_DropTipsWithNoTrash.py} | 1 - ..._AnalysisError_DropLabwareIntoTrashBin.py} | 0 ...ER_HS_TM_TC_MB_2_16_DeckConfiguration1.py} | 33 +- ..._MB_2_16_DeckConfiguration1_NoFixtures.py} | 25 +- ...C_MB_2_16_DeckConfiguration1_NoModules.py} | 33 +- ...DeckConfiguration1_NoModulesNoFixtures.py} | 25 +- ...1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py} | 1 - ...lysisError_ModuleAndWasteChuteConflict.py} | 1 - ...AnalysisError_OT2PipetteInFlexProtocol.py} | 0 21 files changed, 133 insertions(+), 344 deletions(-) rename app-testing/files/protocols/py/{OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp.py => Flex_None_None_2_16_AnalysisError_AccessToFixedTrashProp.py} (100%) rename app-testing/files/protocols/py/{OT3_None_None_2_16_AnalysisError_TrashBinInCol2.py => Flex_None_None_2_16_AnalysisError_TrashBinInCol2.py} (100%) rename app-testing/files/protocols/py/{OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3.py => Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3.py} (100%) rename app-testing/files/protocols/py/{OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4.py => Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4.py} (100%) rename app-testing/files/protocols/py/{OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol.py => Flex_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol.py} (100%) rename app-testing/files/protocols/py/{OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2.py => Flex_None_None_TM_2_16_AnalysisError_ModuleInCol2.py} (100%) rename app-testing/files/protocols/py/{OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3.py => Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3.py} (100%) rename app-testing/files/protocols/py/{OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4.py => Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4.py} (100%) rename app-testing/files/protocols/py/{OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py => Flex_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py} (99%) rename app-testing/files/protocols/py/{OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin.py => Flex_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin.py} (100%) rename app-testing/files/protocols/py/{OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py => Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py} (84%) rename app-testing/files/protocols/py/{OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures.py => Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures.py} (84%) rename app-testing/files/protocols/py/{OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules.py => Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules.py} (81%) rename app-testing/files/protocols/py/{OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures.py => Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures.py} (81%) rename app-testing/files/protocols/py/{OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py => Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py} (99%) rename app-testing/files/protocols/py/{OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py => Flex_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py} (99%) rename app-testing/files/protocols/py/{OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol.py => Flex_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol.py} (100%) diff --git a/app-testing/Makefile b/app-testing/Makefile index ba5e55fff3b..a99f386a72d 100644 --- a/app-testing/Makefile +++ b/app-testing/Makefile @@ -67,7 +67,7 @@ snapshot-test: snapshot-test-update: python -m pipenv run pytest -k analyses_snapshot_test --snapshot-update -TARGET ?= v7.1.0-alpha.9 +TARGET ?= edge .PHONY: build-opentrons-analysis build-opentrons-analysis: diff --git a/app-testing/automation/data/protocol_files.py b/app-testing/automation/data/protocol_files.py index fad316ca9d3..b9f89115900 100644 --- a/app-testing/automation/data/protocol_files.py +++ b/app-testing/automation/data/protocol_files.py @@ -30,32 +30,33 @@ "OT2_P300SLeft_MM_TM_TM_5_2_6_MOAMTemps", "OT2_P300SLeft_MM1_MM_2_2_EngageMagHeightFromBase", "OT2_P300SLeft_MM1_MM_TM_2_3_Mix", - "OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp", - "OT3_None_None_2_16_AnalysisError_TrashBinInCol2", - "OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3", - "OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4", - "OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol", - "OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3", - "OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4", - "OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2", + "OT2_P300M_P20S_TC_HS_TM_2_16_aspirateDispenseMix0Volume", + "Flex_None_None_2_16_AnalysisError_AccessToFixedTrashProp", + "Flex_None_None_2_16_AnalysisError_TrashBinInCol2", + "Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3", + "Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4", + "Flex_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol", + "Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3", + "Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4", + "Flex_None_None_TM_2_16_AnalysisError_ModuleInCol2", "Flex_P100_96_HS_TM_2_15_Quick_Zymo_RNA_Bacteria", - "OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash", - "OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin", - "OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures", - "OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules", - "OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures", - "OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1", - "OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke", + "Flex_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash", + "Flex_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin", + "Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures", + "Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules", + "Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures", + "Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1", + "Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke", "Flex_P1000_96_HS_TM_MM_2_15_ABR5_6_HDQ_Bacteria_ParkTips_96_channel", "Flex_P1000_96_HS_TM_MM_2_15_MagMaxRNACells96Ch", "Flex_P1000_96_HS_TM_TC_MM_2_15_ABR5_6_Illumina_DNA_Prep_96x_Head_PART_III", "Flex_P1000_96_None_2_15_ABR5_6_IDT_xGen_EZ_96x_Head_PART_I_III_ABR", - "OT3_P1000_96_None_2_16_AnalysisError_TrashBinInStagingAreaCol3", - "OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict", + "Flex_P1000_96_None_2_16_AnalysisError_TrashBinInStagingAreaCol3", + "Flex_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict", "Flex_P1000MLeft_P50MRight_HS_MM_TC_TM_2_15_ABR3_Illumina_DNA_Enrichment_v4", "Flex_P1000MLeft_P50MRight_HS_MM_TC_TM_2_15_ABR3_Illumina_DNA_Enrichment", "Flex_P1000MLeft_P50MRight_HS_TM_MM_TC_2_15_ABR4_Illumina_DNA_Prep_24x", "Flex_P1000SRight_None_2_15_ABR_Simple_Normalize_Long_Right", - "OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol", + "Flex_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol", "Flex_P50MLeft_P1000MRight_None_2_15_ABRKAPALibraryQuantLongv2", ] diff --git a/app-testing/automation/data/protocols.py b/app-testing/automation/data/protocols.py index 889292add24..102b0faf683 100644 --- a/app-testing/automation/data/protocols.py +++ b/app-testing/automation/data/protocols.py @@ -284,6 +284,16 @@ class Protocols: app_error=False, robot_error=False, ) + + OT2_P300M_P20S_TC_HS_TM_2_16_aspirateDispenseMix0Volume: Protocol = Protocol( + file_name="OT2_P300M_P20S_TC_HS_TM_2_16_aspirateDispenseMix0Volume", + file_extension="py", + protocol_name="OT2_P300M_P20S_TC_HS_TM_2_16_aspirateDispenseMix0Volume.py", + robot="OT-2", + app_error=False, + robot_error=False, + ) + Flex_P100_96_HS_TM_2_15_Quick_Zymo_RNA_Bacteria: Protocol = Protocol( file_name="Flex_P100_96_HS_TM_2_15_Quick_Zymo_RNA_Bacteria", file_extension="py", @@ -371,190 +381,21 @@ class Protocols: robot_error=False, ) - OT3_None_None_2_16_AnalysisError_TrashBinInCol2: Protocol = Protocol( - file_name="OT3_None_None_2_16_AnalysisError_TrashBinInCol2", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Trash Bin in Column 2", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="InvalidTrashBinLocationError [line 15]: Invalid location for trash bin: C2. Valid slots: Any slot in column 1 or 3.", # noqa: E501 - ) - - OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3: Protocol = Protocol( - file_name="OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Trash Bin in Staging Area Column 3", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="ProtocolCommandFailedError [line 21]: Error 4000 GENERAL_ERROR (ProtocolCommandFailedError): IncompatibleAddressableAreaError: Cannot use Trash Bin in C3, not compatible with one or more of the following fixtures: Slot C4", # noqa: E501 - expected_test_failure=True, - expected_test_reason="Analysis does not throw error when modules or fixtures are in staging area column 3.", # noqa: E501 - ) - - OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4: Protocol = Protocol( - file_name="OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Trash Bin in Staging Area Column 4", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="ValueError [line 15]: Staging areas not permitted for trash bin.", # noqa: E501 - ) - - OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash: Protocol = Protocol( - file_name="OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Drop Tips with no Trash", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="NoTrashDefinedError [line 24]: Error 4000 GENERAL_ERROR (NoTrashDefinedError): No trash container has been defined in this protocol.", # noqa: E501 - ) - - OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3: Protocol = Protocol( - file_name="OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Module in Staging Area Column 3", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="InvalidModuleError [line 19]: Error 4000 GENERAL_ERROR (InvalidModuleError): Cannot use temperature module in C3, not compatible with one or more of the following fixtures: Slot C4", # noqa: E501 - expected_test_failure=True, - expected_test_reason="Analysis does not throw error when modules or fixtures are in staging area column 3.", # noqa: E501 - ) - - OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4: Protocol = Protocol( - file_name="OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Module in Staging Area Column 4", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="ValueError [line 15]: Cannot load a module onto a staging slot.", # noqa: E501 - ) - - OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict: Protocol = Protocol( - file_name="OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Module and Waste Chute Conflict", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="ProtocolCommandFailedError [line 25]: Error 4000 GENERAL_ERROR (ProtocolCommandFailedError): IncompatibleAddressableAreaError: Cannot use Waste Chute, not compatible with one or more of the following fixtures: Slot D3", # noqa: E501 - ) - - OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp: Protocol = Protocol( - file_name="OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Access to Fixed Trash Property", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="APIVersionError [line 15]: Fixed Trash is not supported on Flex protocols in API Version 2.16 and above.", # noqa: E501 - ) - - OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Drop Labware in Trash Bin", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="ProtocolCommandFailedError [line 20]: Error 4000 GENERAL_ERROR (ProtocolCommandFailedError): IncompatibleAddressableAreaError: Cannot use Slot C3, not compatible with one or more of the following fixtures: Trash Bin in C3", # noqa: E501 - ) - - OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol: Protocol = Protocol( - file_name="OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - OT-2 Pipette in Flex Protocol", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="ProtocolCommandFailedError [line 22]: Error 4000 GENERAL_ERROR (ProtocolCommandFailedError): InvalidSpecificationForRobotTypeError: Cannot load a Gen2 pipette on a Flex.", # noqa: E501 - ) - - OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol: Protocol = Protocol( - file_name="OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Magnetic Module in Flex Protocol", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="ValueError [line 15]: A magneticModuleType cannot be loaded into slot C1", # noqa: E501 - ) - - OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2: Protocol = Protocol( - file_name="OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2", - file_extension="py", - protocol_name="QA Protocol - Analysis Error - Module in Column 2", - robot="OT-3", - app_error=True, - robot_error=False, - app_analysis_error="ValueError [line 15]: A temperatureModuleType cannot be loaded into slot C2", # noqa: E501 - ) - - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures", - file_extension="py", - protocol_name="QA Protocol - Deck Configuration 1 - No Fixtures", - robot="OT-3", - app_error=False, - robot_error=False, - ) - - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules", - file_extension="py", - protocol_name="QA Protocol - Deck Configuration 1 - No Modules", - robot="OT-3", - app_error=False, - robot_error=False, - ) - - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures", - file_extension="py", - protocol_name="QA Protocol - Deck Configuration 1 - No Modules or Fixtures", - robot="OT-3", - app_error=False, - robot_error=False, - ) - - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1", - file_extension="py", - protocol_name="QA Protocol - Deck Configuration 1", - robot="OT-3", - app_error=False, - robot_error=False, - ) - - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke", - file_extension="py", - protocol_name="QA Protocol - MEGAAA PROTOCOL - LETS BREAK, I MEAN TEST, EVERYTHING!!!!!", - robot="OT-3", - app_error=False, - robot_error=False, - ) - - OT3_None_None_2_16_AnalysisError_TrashBinInCol2: Protocol = Protocol( - file_name="OT3_None_None_2_16_AnalysisError_TrashBinInCol2", + Flex_None_None_2_16_AnalysisError_TrashBinInCol2: Protocol = Protocol( + file_name="Flex_None_None_2_16_AnalysisError_TrashBinInCol2", file_extension="py", protocol_name="QA Protocol - Analysis Error - Trash Bin in Column 2", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="InvalidTrashBinLocationError [line 15]: Invalid location for trash bin: C2. Valid slots: Any slot in column 1 or 3.", # noqa: E501 ) - OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3: Protocol = Protocol( - file_name="OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3", + Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3: Protocol = Protocol( + file_name="Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3", file_extension="py", protocol_name="QA Protocol - Analysis Error - Trash Bin in Staging Area Column 3", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="ProtocolCommandFailedError [line 21]: Error 4000 GENERAL_ERROR (ProtocolCommandFailedError): IncompatibleAddressableAreaError: Cannot use Trash Bin in C3, not compatible with one or more of the following fixtures: Slot C4", # noqa: E501 @@ -562,31 +403,31 @@ class Protocols: expected_test_reason="Analysis does not throw error when modules or fixtures are in staging area column 3.", # noqa: E501 ) - OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4: Protocol = Protocol( - file_name="OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4", + Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4: Protocol = Protocol( + file_name="Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4", file_extension="py", protocol_name="QA Protocol - Analysis Error - Trash Bin in Staging Area Column 4", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="ValueError [line 15]: Staging areas not permitted for trash bin.", # noqa: E501 ) - OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash: Protocol = Protocol( - file_name="OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash", + Flex_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash: Protocol = Protocol( + file_name="Flex_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash", file_extension="py", protocol_name="QA Protocol - Analysis Error - Drop Tips with no Trash", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="NoTrashDefinedError [line 24]: Error 4000 GENERAL_ERROR (NoTrashDefinedError): No trash container has been defined in this protocol.", # noqa: E501 ) - OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3: Protocol = Protocol( - file_name="OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3", + Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3: Protocol = Protocol( + file_name="Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3", file_extension="py", protocol_name="QA Protocol - Analysis Error - Module in Staging Area Column 3", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="InvalidModuleError [line 19]: Error 4000 GENERAL_ERROR (InvalidModuleError): Cannot use temperature module in C3, not compatible with one or more of the following fixtures: Slot C4", # noqa: E501 @@ -594,117 +435,117 @@ class Protocols: expected_test_reason="Analysis does not throw error when modules or fixtures are in staging area column 3.", # noqa: E501 ) - OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4: Protocol = Protocol( - file_name="OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4", + Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4: Protocol = Protocol( + file_name="Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4", file_extension="py", protocol_name="QA Protocol - Analysis Error - Module in Staging Area Column 4", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="ValueError [line 15]: Cannot load a module onto a staging slot.", # noqa: E501 ) - OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict: Protocol = Protocol( - file_name="OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict", + Flex_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict: Protocol = Protocol( + file_name="Flex_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict", file_extension="py", protocol_name="QA Protocol - Analysis Error - Module and Waste Chute Conflict", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="ProtocolCommandFailedError [line 25]: Error 4000 GENERAL_ERROR (ProtocolCommandFailedError): IncompatibleAddressableAreaError: Cannot use Waste Chute, not compatible with one or more of the following fixtures: Slot D3", # noqa: E501 ) - OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp: Protocol = Protocol( - file_name="OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp", + Flex_None_None_2_16_AnalysisError_AccessToFixedTrashProp: Protocol = Protocol( + file_name="Flex_None_None_2_16_AnalysisError_AccessToFixedTrashProp", file_extension="py", protocol_name="QA Protocol - Analysis Error - Access to Fixed Trash Property", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="APIVersionError [line 15]: Fixed Trash is not supported on Flex protocols in API Version 2.16 and above.", # noqa: E501 ) - OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin", + Flex_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin: Protocol = Protocol( + file_name="Flex_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin", file_extension="py", protocol_name="QA Protocol - Analysis Error - Drop Labware in Trash Bin", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="ProtocolCommandFailedError [line 20]: Error 4000 GENERAL_ERROR (ProtocolCommandFailedError): IncompatibleAddressableAreaError: Cannot use Slot C3, not compatible with one or more of the following fixtures: Trash Bin in C3", # noqa: E501 ) - OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol: Protocol = Protocol( - file_name="OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol", + Flex_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol: Protocol = Protocol( + file_name="Flex_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol", file_extension="py", protocol_name="QA Protocol - Analysis Error - OT-2 Pipette in Flex Protocol", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="ProtocolCommandFailedError [line 22]: Error 4000 GENERAL_ERROR (ProtocolCommandFailedError): InvalidSpecificationForRobotTypeError: Cannot load a Gen2 pipette on a Flex.", # noqa: E501 ) - OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol: Protocol = Protocol( - file_name="OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol", + Flex_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol: Protocol = Protocol( + file_name="Flex_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol", file_extension="py", protocol_name="QA Protocol - Analysis Error - Magnetic Module in Flex Protocol", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="ValueError [line 15]: A magneticModuleType cannot be loaded into slot C1", # noqa: E501 ) - OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2: Protocol = Protocol( - file_name="OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2", + Flex_None_None_TM_2_16_AnalysisError_ModuleInCol2: Protocol = Protocol( + file_name="Flex_None_None_TM_2_16_AnalysisError_ModuleInCol2", file_extension="py", protocol_name="QA Protocol - Analysis Error - Module in Column 2", - robot="OT-3", + robot="Flex", app_error=True, robot_error=False, app_analysis_error="ValueError [line 15]: A temperatureModuleType cannot be loaded into slot C2", # noqa: E501 ) - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures", + Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures: Protocol = Protocol( + file_name="Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures", file_extension="py", protocol_name="QA Protocol - Deck Configuration 1 - No Fixtures", - robot="OT-3", + robot="Flex", app_error=False, robot_error=False, ) - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules", + Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules: Protocol = Protocol( + file_name="Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules", file_extension="py", protocol_name="QA Protocol - Deck Configuration 1 - No Modules", - robot="OT-3", + robot="Flex", app_error=False, robot_error=False, ) - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures", + Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures: Protocol = Protocol( + file_name="Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures", file_extension="py", protocol_name="QA Protocol - Deck Configuration 1 - No Modules or Fixtures", - robot="OT-3", + robot="Flex", app_error=False, robot_error=False, ) - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1", + Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1: Protocol = Protocol( + file_name="Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1", file_extension="py", protocol_name="QA Protocol - Deck Configuration 1", - robot="OT-3", + robot="Flex", app_error=False, robot_error=False, ) - OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke: Protocol = Protocol( - file_name="OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke", + Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke: Protocol = Protocol( + file_name="Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke", file_extension="py", protocol_name="QA Protocol - MEGAAA PROTOCOL - LETS BREAK, I MEAN TEST, EVERYTHING!!!!!", - robot="OT-3", + robot="Flex", app_error=False, robot_error=False, ) diff --git a/app-testing/example.env b/app-testing/example.env index 440ceeeabf0..a359f3d6770 100644 --- a/app-testing/example.env +++ b/app-testing/example.env @@ -12,29 +12,39 @@ HIGHLIGHT_SECONDS=.3 # default is 2 UPDATE_CHANNEL="beta" # latest beta alpha LOCALHOST=false # Analyses Snapshot test target -TARGET=v7.1.0-alpha.9 +TARGET=edge # run all tests # possible values in \automation\data\protocol_files.py # dynamically generate with make print-protocols -APP_ANALYSIS_TEST_PROTOCOLS="Flex_P1000MLeft_P50MRight_HS_MM_TC_TM_2_15_ABR3_Illumina_DNA_Enrichment, +APP_ANALYSIS_TEST_PROTOCOLS="Flex_None_None_2_16_AnalysisError_AccessToFixedTrashProp, Flex_None_None_2_16_AnalysisError_TrashBinInCol2, +Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3, Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4, +Flex_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol, Flex_None_None_TM_2_16_AnalysisError_ModuleInCol2, +Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3, Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4, +Flex_P1000MLeft_P50MRight_HS_MM_TC_TM_2_15_ABR3_Illumina_DNA_Enrichment, Flex_P1000MLeft_P50MRight_HS_MM_TC_TM_2_15_ABR3_Illumina_DNA_Enrichment_v4, Flex_P1000MLeft_P50MRight_HS_TM_MM_TC_2_15_ABR4_Illumina_DNA_Prep_24x, -Flex_P1000SRight_None_2_15_ABR_Simple_Normalize_Long_Right, +Flex_P1000SRight_None_2_15_ABR_Simple_Normalize_Long_Right, Flex_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash, +Flex_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin, Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1, +Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures, +Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules, +Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures, Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke, Flex_P1000_96_HS_TM_MM_2_15_ABR5_6_HDQ_Bacteria_ParkTips_96_channel, Flex_P1000_96_HS_TM_MM_2_15_MagMaxRNACells96Ch, Flex_P1000_96_HS_TM_TC_MM_2_15_ABR5_6_Illumina_DNA_Prep_96x_Head_PART_III, -Flex_P1000_96_None_2_15_ABR5_6_IDT_xGen_EZ_96x_Head_PART_I_III_ABR, Flex_P100_96_HS_TM_2_15_Quick_Zymo_RNA_Bacteria, -Flex_P50MLeft_P1000MRight_None_2_15_ABRKAPALibraryQuantLongv2, OT2_None_None_2_12_Python310SyntaxRobotAnalysisOnlyError, -OT2_None_None_2_13_PythonSyntaxError, OT2_P1000SLeft_None_6_1_SimpleTransfer, OT2_P10S_P300M_TC1_TM_MM_2_11_Swift, -OT2_P20SRight_None_6_1_SimpleTransferError, OT2_P20S_None_2_7_Walkthrough, OT2_P20S_P300M_HS_6_1_HS_WithCollision_Error, -OT2_P20S_P300M_NoMods_6_1_TransferReTransferLiquid, OT2_P300MLeft_MM_TM_2_4_Zymo, OT2_P300M_P20S_HS_6_1_Smoke620release, -OT2_P300M_P20S_MM_HS_TD_TC_6_1_AllMods_Error, OT2_P300M_P20S_MM_TM_TC1_5_2_6_PD40, -OT2_P300M_P20S_MM_TM_TC1_5_2_6_PD40Error, OT2_P300M_P20S_NoMod_6_1_MixTransferManyLiquids, -OT2_P300M_P20S_None_2_12_FailOnRun, OT2_P300M_P20S_TC_HS_TM_2_13_SmokeTestV3, OT2_P300M_P20S_TC_HS_TM_2_14_SmokeTestV3, -OT2_P300M_P20S_TC_HS_TM_2_15_SmokeTestV3, OT2_P300M_P20S_TC_MM_TM_2_13_Smoke620Release, +Flex_P1000_96_None_2_15_ABR5_6_IDT_xGen_EZ_96x_Head_PART_I_III_ABR, +Flex_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict, Flex_P100_96_HS_TM_2_15_Quick_Zymo_RNA_Bacteria, +Flex_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol, Flex_P50MLeft_P1000MRight_None_2_15_ABRKAPALibraryQuantLongv2, +OT2_None_None_2_12_Python310SyntaxRobotAnalysisOnlyError, OT2_None_None_2_13_PythonSyntaxError, +OT2_P1000SLeft_None_6_1_SimpleTransfer, OT2_P10S_P300M_TC1_TM_MM_2_11_Swift, OT2_P20SRight_None_6_1_SimpleTransferError, +OT2_P20S_None_2_7_Walkthrough, OT2_P20S_P300M_HS_6_1_HS_WithCollision_Error, OT2_P20S_P300M_NoMods_6_1_TransferReTransferLiquid, +OT2_P300MLeft_MM_TM_2_4_Zymo, OT2_P300M_P20S_2_16_aspirateDispenseMix0Volume, OT2_P300M_P20S_HS_6_1_Smoke620release, +OT2_P300M_P20S_MM_HS_TD_TC_6_1_AllMods_Error, OT2_P300M_P20S_MM_TM_TC1_5_2_6_PD40, OT2_P300M_P20S_MM_TM_TC1_5_2_6_PD40Error, +OT2_P300M_P20S_NoMod_6_1_MixTransferManyLiquids, OT2_P300M_P20S_None_2_12_FailOnRun, OT2_P300M_P20S_TC_HS_TM_2_13_SmokeTestV3, +OT2_P300M_P20S_TC_HS_TM_2_14_SmokeTestV3, OT2_P300M_P20S_TC_HS_TM_2_15_SmokeTestV3, OT2_P300M_P20S_TC_HS_TM_2_16_SmokeTestV3, +OT2_P300M_P20S_TC_HS_TM_2_16_aspirateDispenseMix0Volume, OT2_P300M_P20S_TC_MM_TM_2_13_Smoke620Release, OT2_P300M_P300S_HS_6_1_HS_NormalUseWithTransfer, OT2_P300SG1_None_5_2_6_Gen1PipetteSimple, -OT2_P300SLeft_MM1_MM_2_2_EngageMagHeightFromBase, OT2_P300SLeft_MM1_MM_TM_2_3_Mix, -OT2_P300SLeft_MM_TM_TM_5_2_6_MOAMTemps, OT2_P300S_Thermocycler_Moam_Error, OT2_P300S_Twinning_Error" +OT2_P300SLeft_MM1_MM_2_2_EngageMagHeightFromBase, OT2_P300SLeft_MM1_MM_TM_2_3_Mix, OT2_P300SLeft_MM_TM_TM_5_2_6_MOAMTemps, +OT2_P300S_Thermocycler_Moam_Error, OT2_P300S_Twinning_Error" # run one # APP_ANALYSIS_TEST_PROTOCOLS="Flex_P1000MLeft_P50MRight_HS_MM_TC_TM_2_15_ABR3_Illumina_DNA_Enrichment" diff --git a/app-testing/files/protocols/py/OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp.py b/app-testing/files/protocols/py/Flex_None_None_2_16_AnalysisError_AccessToFixedTrashProp.py similarity index 100% rename from app-testing/files/protocols/py/OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp.py rename to app-testing/files/protocols/py/Flex_None_None_2_16_AnalysisError_AccessToFixedTrashProp.py diff --git a/app-testing/files/protocols/py/OT3_None_None_2_16_AnalysisError_TrashBinInCol2.py b/app-testing/files/protocols/py/Flex_None_None_2_16_AnalysisError_TrashBinInCol2.py similarity index 100% rename from app-testing/files/protocols/py/OT3_None_None_2_16_AnalysisError_TrashBinInCol2.py rename to app-testing/files/protocols/py/Flex_None_None_2_16_AnalysisError_TrashBinInCol2.py diff --git a/app-testing/files/protocols/py/OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3.py b/app-testing/files/protocols/py/Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3.py similarity index 100% rename from app-testing/files/protocols/py/OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3.py rename to app-testing/files/protocols/py/Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3.py diff --git a/app-testing/files/protocols/py/OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4.py b/app-testing/files/protocols/py/Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4.py similarity index 100% rename from app-testing/files/protocols/py/OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4.py rename to app-testing/files/protocols/py/Flex_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4.py diff --git a/app-testing/files/protocols/py/OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol.py b/app-testing/files/protocols/py/Flex_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol.py similarity index 100% rename from app-testing/files/protocols/py/OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol.py rename to app-testing/files/protocols/py/Flex_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol.py diff --git a/app-testing/files/protocols/py/OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2.py b/app-testing/files/protocols/py/Flex_None_None_TM_2_16_AnalysisError_ModuleInCol2.py similarity index 100% rename from app-testing/files/protocols/py/OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2.py rename to app-testing/files/protocols/py/Flex_None_None_TM_2_16_AnalysisError_ModuleInCol2.py diff --git a/app-testing/files/protocols/py/OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3.py b/app-testing/files/protocols/py/Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3.py similarity index 100% rename from app-testing/files/protocols/py/OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3.py rename to app-testing/files/protocols/py/Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3.py diff --git a/app-testing/files/protocols/py/OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4.py b/app-testing/files/protocols/py/Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4.py similarity index 100% rename from app-testing/files/protocols/py/OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4.py rename to app-testing/files/protocols/py/Flex_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4.py diff --git a/app-testing/files/protocols/py/OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py b/app-testing/files/protocols/py/Flex_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py similarity index 99% rename from app-testing/files/protocols/py/OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py rename to app-testing/files/protocols/py/Flex_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py index b05ceee8976..7b43ce3be2a 100644 --- a/app-testing/files/protocols/py/OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py +++ b/app-testing/files/protocols/py/Flex_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py @@ -12,7 +12,6 @@ def run(ctx: protocol_api.ProtocolContext) -> None: - ################ ### FIXTURES ### ################ diff --git a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin.py b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin.py similarity index 100% rename from app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin.py rename to app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin.py diff --git a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py similarity index 84% rename from app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py rename to app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py index 529f23becb6..e76c8179098 100644 --- a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py +++ b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py @@ -29,7 +29,6 @@ def default_well(tiprack: protocol_api.labware) -> protocol_api.labware.Well: def run(ctx: protocol_api.ProtocolContext) -> None: - ################ ### FIXTURES ### ################ @@ -60,14 +59,10 @@ def run(ctx: protocol_api.ProtocolContext) -> None: src_pcr_plate = ctx.load_labware(PCR_PLATE_96_NAME, "B2") dest_pcr_plate = ctx.load_labware(PCR_PLATE_96_NAME, "C2") - on_deck_tip_rack_1 = ctx.load_labware( - TIPRACK_96_NAME, TIP_RACK_LOCATION_1, adapter="opentrons_flex_96_tiprack_adapter" - ) + on_deck_tip_rack_1 = ctx.load_labware(TIPRACK_96_NAME, TIP_RACK_LOCATION_1, adapter="opentrons_flex_96_tiprack_adapter") tip_rack_adapter_1 = on_deck_tip_rack_1.parent - on_deck_tip_rack_2 = ctx.load_labware( - TIPRACK_96_NAME, TIP_RACK_LOCATION_2, adapter="opentrons_flex_96_tiprack_adapter" - ) + on_deck_tip_rack_2 = ctx.load_labware(TIPRACK_96_NAME, TIP_RACK_LOCATION_2, adapter="opentrons_flex_96_tiprack_adapter") tip_rack_adapter_2 = on_deck_tip_rack_2.parent off_deck_tip_rack_1 = ctx.load_labware(TIPRACK_96_NAME, protocol_api.OFF_DECK) @@ -110,15 +105,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ######################## pipette_96_channel.pick_up_tip(default_well(on_deck_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(waste_chute) pipette_96_channel.pick_up_tip(default_well(on_deck_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(trash_bin_1) ################################## @@ -140,15 +131,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ############################# pipette_96_channel.pick_up_tip(default_well(staging_area_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(waste_chute) pipette_96_channel.pick_up_tip(default_well(staging_area_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(trash_bin_2) ################################## @@ -166,15 +153,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ctx.move_labware(off_deck_tip_rack_2, tip_rack_adapter_2, use_gripper=not USING_GRIPPER) pipette_96_channel.pick_up_tip(default_well(off_deck_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(waste_chute) pipette_96_channel.pick_up_tip(default_well(off_deck_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(waste_chute) ############################ diff --git a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures.py b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures.py similarity index 84% rename from app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures.py rename to app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures.py index 80450b34cd7..b29e6457338 100644 --- a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures.py +++ b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoFixtures.py @@ -28,7 +28,6 @@ def default_well(tiprack: protocol_api.labware) -> protocol_api.labware.Well: def run(ctx: protocol_api.ProtocolContext) -> None: - ############### ### MODULES ### ############### @@ -51,14 +50,10 @@ def run(ctx: protocol_api.ProtocolContext) -> None: src_pcr_plate = ctx.load_labware(PCR_PLATE_96_NAME, "B2") dest_pcr_plate = ctx.load_labware(PCR_PLATE_96_NAME, "C2") - on_deck_tip_rack_1 = ctx.load_labware( - TIPRACK_96_NAME, TIP_RACK_LOCATION_1, adapter="opentrons_flex_96_tiprack_adapter" - ) + on_deck_tip_rack_1 = ctx.load_labware(TIPRACK_96_NAME, TIP_RACK_LOCATION_1, adapter="opentrons_flex_96_tiprack_adapter") tip_rack_adapter_1 = on_deck_tip_rack_1.parent - on_deck_tip_rack_2 = ctx.load_labware( - TIPRACK_96_NAME, TIP_RACK_LOCATION_2, adapter="opentrons_flex_96_tiprack_adapter" - ) + on_deck_tip_rack_2 = ctx.load_labware(TIPRACK_96_NAME, TIP_RACK_LOCATION_2, adapter="opentrons_flex_96_tiprack_adapter") tip_rack_adapter_2 = on_deck_tip_rack_2.parent off_deck_tip_rack_1 = ctx.load_labware(TIPRACK_96_NAME, protocol_api.OFF_DECK) off_deck_tip_rack_2 = ctx.load_labware(TIPRACK_96_NAME, protocol_api.OFF_DECK) @@ -90,15 +85,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ######################## pipette_96_channel.pick_up_tip(default_well(on_deck_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.return_tip() pipette_96_channel.pick_up_tip(default_well(on_deck_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.return_tip() ##################################### @@ -116,15 +107,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ctx.move_labware(off_deck_tip_rack_2, tip_rack_adapter_2, use_gripper=not USING_GRIPPER) pipette_96_channel.pick_up_tip(default_well(off_deck_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.return_tip() pipette_96_channel.pick_up_tip(default_well(off_deck_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.return_tip() ############################ diff --git a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules.py b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules.py similarity index 81% rename from app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules.py rename to app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules.py index 6b751f1d0e9..680ad37966b 100644 --- a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules.py +++ b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModules.py @@ -28,7 +28,6 @@ def default_well(tiprack: protocol_api.labware) -> protocol_api.labware.Well: def run(ctx: protocol_api.ProtocolContext) -> None: - ################ ### FIXTURES ### ################ @@ -44,14 +43,10 @@ def run(ctx: protocol_api.ProtocolContext) -> None: src_pcr_plate = ctx.load_labware(PCR_PLATE_96_NAME, "B2") dest_pcr_plate = ctx.load_labware(PCR_PLATE_96_NAME, "C2") - on_deck_tip_rack_1 = ctx.load_labware( - TIPRACK_96_NAME, TIP_RACK_LOCATION_1, adapter="opentrons_flex_96_tiprack_adapter" - ) + on_deck_tip_rack_1 = ctx.load_labware(TIPRACK_96_NAME, TIP_RACK_LOCATION_1, adapter="opentrons_flex_96_tiprack_adapter") tip_rack_adapter_1 = on_deck_tip_rack_1.parent - on_deck_tip_rack_2 = ctx.load_labware( - TIPRACK_96_NAME, TIP_RACK_LOCATION_2, adapter="opentrons_flex_96_tiprack_adapter" - ) + on_deck_tip_rack_2 = ctx.load_labware(TIPRACK_96_NAME, TIP_RACK_LOCATION_2, adapter="opentrons_flex_96_tiprack_adapter") tip_rack_adapter_2 = on_deck_tip_rack_2.parent off_deck_tip_rack_1 = ctx.load_labware(TIPRACK_96_NAME, protocol_api.OFF_DECK) off_deck_tip_rack_2 = ctx.load_labware(TIPRACK_96_NAME, protocol_api.OFF_DECK) @@ -93,15 +88,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ######################## pipette_96_channel.pick_up_tip(default_well(on_deck_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(waste_chute) pipette_96_channel.pick_up_tip(default_well(on_deck_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(trash_bin_1) ################################## @@ -123,15 +114,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ############################# pipette_96_channel.pick_up_tip(default_well(staging_area_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(waste_chute) pipette_96_channel.pick_up_tip(default_well(staging_area_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(trash_bin_2) ################################## @@ -149,15 +136,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ctx.move_labware(off_deck_tip_rack_2, tip_rack_adapter_2, use_gripper=not USING_GRIPPER) pipette_96_channel.pick_up_tip(default_well(off_deck_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(waste_chute) pipette_96_channel.pick_up_tip(default_well(off_deck_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.drop_tip(waste_chute) ########################################## diff --git a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures.py b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures.py similarity index 81% rename from app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures.py rename to app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures.py index b809f034447..165d532d5a4 100644 --- a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures.py +++ b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1_NoModulesNoFixtures.py @@ -28,7 +28,6 @@ def default_well(tiprack: protocol_api.labware) -> protocol_api.labware.Well: def run(ctx: protocol_api.ProtocolContext) -> None: - ############### ### LABWARE ### ############### @@ -36,14 +35,10 @@ def run(ctx: protocol_api.ProtocolContext) -> None: src_pcr_plate = ctx.load_labware(PCR_PLATE_96_NAME, "B2") dest_pcr_plate = ctx.load_labware(PCR_PLATE_96_NAME, "C2") - on_deck_tip_rack_1 = ctx.load_labware( - TIPRACK_96_NAME, TIP_RACK_LOCATION_1, adapter="opentrons_flex_96_tiprack_adapter" - ) + on_deck_tip_rack_1 = ctx.load_labware(TIPRACK_96_NAME, TIP_RACK_LOCATION_1, adapter="opentrons_flex_96_tiprack_adapter") tip_rack_adapter_1 = on_deck_tip_rack_1.parent - on_deck_tip_rack_2 = ctx.load_labware( - TIPRACK_96_NAME, TIP_RACK_LOCATION_2, adapter="opentrons_flex_96_tiprack_adapter" - ) + on_deck_tip_rack_2 = ctx.load_labware(TIPRACK_96_NAME, TIP_RACK_LOCATION_2, adapter="opentrons_flex_96_tiprack_adapter") tip_rack_adapter_2 = on_deck_tip_rack_2.parent off_deck_tip_rack_1 = ctx.load_labware(TIPRACK_96_NAME, protocol_api.OFF_DECK) off_deck_tip_rack_2 = ctx.load_labware(TIPRACK_96_NAME, protocol_api.OFF_DECK) @@ -75,15 +70,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ######################## pipette_96_channel.pick_up_tip(default_well(on_deck_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.return_tip() pipette_96_channel.pick_up_tip(default_well(on_deck_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.return_tip() ##################################### @@ -101,15 +92,11 @@ def run(ctx: protocol_api.ProtocolContext) -> None: ctx.move_labware(off_deck_tip_rack_2, tip_rack_adapter_2, use_gripper=not USING_GRIPPER) pipette_96_channel.pick_up_tip(default_well(off_deck_tip_rack_1)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.return_tip() pipette_96_channel.pick_up_tip(default_well(off_deck_tip_rack_2)) - pipette_96_channel.transfer( - TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never" - ) + pipette_96_channel.transfer(TRANSFER_VOL, default_well(src_pcr_plate), default_well(dest_pcr_plate), new_tip="never") pipette_96_channel.return_tip() ########################################## diff --git a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py similarity index 99% rename from app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py rename to app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py index 932fba22f31..2caabd69fb2 100644 --- a/app-testing/files/protocols/py/OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py +++ b/app-testing/files/protocols/py/Flex_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py @@ -40,7 +40,6 @@ def run(ctx: protocol_api.ProtocolContext) -> None: - ################ ### FIXTURES ### ################ diff --git a/app-testing/files/protocols/py/OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py b/app-testing/files/protocols/py/Flex_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py similarity index 99% rename from app-testing/files/protocols/py/OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py rename to app-testing/files/protocols/py/Flex_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py index 0c5fb7cd509..8868e4d49f9 100644 --- a/app-testing/files/protocols/py/OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py +++ b/app-testing/files/protocols/py/Flex_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py @@ -12,7 +12,6 @@ def run(ctx: protocol_api.ProtocolContext) -> None: - ctx.load_waste_chute() tip_rack = ctx.load_labware("opentrons_flex_96_tiprack_1000ul", "A1", adapter="opentrons_flex_96_tiprack_adapter") diff --git a/app-testing/files/protocols/py/OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol.py b/app-testing/files/protocols/py/Flex_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol.py similarity index 100% rename from app-testing/files/protocols/py/OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol.py rename to app-testing/files/protocols/py/Flex_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol.py