From 2533cf2618ac8845d5faa1c9d2f83cbdf43602e6 Mon Sep 17 00:00:00 2001 From: Brian Cooper Date: Thu, 9 May 2024 11:41:17 -0400 Subject: [PATCH 1/5] change to deck hardware copy ion desktop protocol setup --- .../localization/en/protocol_setup.json | 5 ++-- .../Devices/ProtocolRun/ProtocolRunSetup.tsx | 24 ++----------------- 2 files changed, 5 insertions(+), 24 deletions(-) diff --git a/app/src/assets/localization/en/protocol_setup.json b/app/src/assets/localization/en/protocol_setup.json index 9406bbe16f5..ed3a7ca836d 100644 --- a/app/src/assets/localization/en/protocol_setup.json +++ b/app/src/assets/localization/en/protocol_setup.json @@ -83,7 +83,7 @@ "initial_liquids_num_plural": "{{count}} initial liquids", "initial_liquids_num": "{{count}} initial liquid", "initial_location": "Initial Location", - "install_modules_and_fixtures": "Install the required modules and power them on. Install the required fixtures and review the deck configuration.", + "install_modules_and_fixtures": "Install and calibrate the required modules. Install the required fixtures.", "instrument_calibrations_missing_plural": "Missing {{count}} calibrations", "instrument_calibrations_missing": "Missing {{count}} calibration", "instruments_connected_plural": "{{count}} instruments attached", @@ -141,7 +141,7 @@ "module_not_connected": "Not connected", "module_setup_step_description_plural": "Install the required modules and power them on.", "module_setup_step_description": "Install the required modules and power them on.", - "module_setup_step_title": "Modules", + "module_setup_step_title": "Deck hardware", "module_slot_location": "Slot {{slotName}}, {{moduleName}}", "module": "Module", "modules_connected_plural": "{{count}} modules attached", @@ -164,6 +164,7 @@ "name": "Name", "no_custom_values": "No custom values specified", "no_data": "no data", + "no_deck_hardware_specified": "No deck hardware are specified for this protocol.", "no_labware_offset_data": "no labware offset data yet", "no_modules_or_fixtures": "No modules or fixtures are specified for this protocol.", "no_modules_specified": "no modules are specified for this protocol.", diff --git a/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx b/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx index f558f1df037..8a39fe761e5 100644 --- a/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx +++ b/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx @@ -150,34 +150,18 @@ export function ProtocolRunSetup({ if (robot == null) return null const liquids = protocolAnalysis?.liquids ?? [] - const liquidsInLoadOrder = protocolAnalysis != null ? parseLiquidsInLoadOrder(liquids, protocolAnalysis.commands) : [] - const hasLiquids = liquidsInLoadOrder.length > 0 - const hasModules = protocolAnalysis != null && modules.length > 0 - // need config compatibility (including check for single slot conflicts) const requiredDeckConfigCompatibility = getRequiredDeckConfig( deckConfigCompatibility ) - const hasFixtures = requiredDeckConfigCompatibility.length > 0 - let moduleDescription: string = t(`${MODULE_SETUP_KEY}_description`, { - count: modules.length, - }) - if (!hasModules && !isFlex) { - moduleDescription = i18n.format(t('no_modules_specified'), 'capitalize') - } else if (isFlex && (hasModules || hasFixtures)) { - moduleDescription = t('install_modules_and_fixtures') - } else if (isFlex && !hasModules && !hasFixtures) { - moduleDescription = t('no_modules_or_fixtures') - } - const StepDetailMap: Record< StepKey, { stepInternals: JSX.Element; description: string } @@ -213,7 +197,7 @@ export function ProtocolRunSetup({ protocolAnalysis={protocolAnalysis} /> ), - description: moduleDescription, + description: hasModules || hasFixtures ? t('install_modules_and_fixtures') : t('no_deck_hardware_specified'), }, [LPC_KEY]: { stepInternals: ( @@ -273,11 +257,7 @@ export function ProtocolRunSetup({ ) : ( stepsKeysInOrder.map((stepKey, index) => { - const setupStepTitle = t( - isFlex && stepKey === MODULE_SETUP_KEY - ? `module_and_deck_setup` - : `${stepKey}_title` - ) + const setupStepTitle = t(`${stepKey}_title`) const showEmptySetupStep = (stepKey === 'liquid_setup_step' && !hasLiquids) || (stepKey === 'module_setup_step' && From 35dfd84da06d98a7f0ca09f94fdb0956c47cfa9d Mon Sep 17 00:00:00 2001 From: Brian Cooper Date: Thu, 9 May 2024 12:06:15 -0400 Subject: [PATCH 2/5] don't talk about calibration or fixtures for OT2 --- app/src/assets/localization/en/protocol_setup.json | 4 ++-- app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx | 5 ++++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/assets/localization/en/protocol_setup.json b/app/src/assets/localization/en/protocol_setup.json index ed3a7ca836d..a63ceeafd50 100644 --- a/app/src/assets/localization/en/protocol_setup.json +++ b/app/src/assets/localization/en/protocol_setup.json @@ -83,6 +83,8 @@ "initial_liquids_num_plural": "{{count}} initial liquids", "initial_liquids_num": "{{count}} initial liquid", "initial_location": "Initial Location", + "install_modules": "Install the required module.", + "install_modules_plural": "Install the required modules.", "install_modules_and_fixtures": "Install and calibrate the required modules. Install the required fixtures.", "instrument_calibrations_missing_plural": "Missing {{count}} calibrations", "instrument_calibrations_missing": "Missing {{count}} calibration", @@ -139,8 +141,6 @@ "module_mismatch_body": "Check that the modules connected to this robot are of the right type and generation", "module_name": "Module", "module_not_connected": "Not connected", - "module_setup_step_description_plural": "Install the required modules and power them on.", - "module_setup_step_description": "Install the required modules and power them on.", "module_setup_step_title": "Deck hardware", "module_slot_location": "Slot {{slotName}}, {{moduleName}}", "module": "Module", diff --git a/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx b/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx index 8a39fe761e5..decf1c4394c 100644 --- a/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx +++ b/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx @@ -162,6 +162,9 @@ export function ProtocolRunSetup({ ) const hasFixtures = requiredDeckConfigCompatibility.length > 0 + const flexDeckHardwareDescription = hasModules || hasFixtures ? t('install_modules_and_fixtures') : t('no_deck_hardware_specified') + const ot2DeckHardwareDescription = hasModules ? t('install_modules', {count: modules.length}) : t('no_deck_hardware_specified') + const StepDetailMap: Record< StepKey, { stepInternals: JSX.Element; description: string } @@ -197,7 +200,7 @@ export function ProtocolRunSetup({ protocolAnalysis={protocolAnalysis} /> ), - description: hasModules || hasFixtures ? t('install_modules_and_fixtures') : t('no_deck_hardware_specified'), + description: isFlex ? flexDeckHardwareDescription : ot2DeckHardwareDescription }, [LPC_KEY]: { stepInternals: ( From e165e06d9fc9fa3a7d57bf35778c4670db5b0897 Mon Sep 17 00:00:00 2001 From: Brian Cooper Date: Thu, 9 May 2024 14:18:12 -0400 Subject: [PATCH 3/5] closes RQA-2685 --- app/src/assets/localization/en/device_details.json | 2 +- app/src/assets/localization/en/protocol_setup.json | 4 ++-- .../ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx | 5 +++-- .../SetupModuleAndDeck/__tests__/NotConfiguredModal.test.tsx | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/app/src/assets/localization/en/device_details.json b/app/src/assets/localization/en/device_details.json index d3fdab0b04c..a3f5d2de7f3 100644 --- a/app/src/assets/localization/en/device_details.json +++ b/app/src/assets/localization/en/device_details.json @@ -3,7 +3,7 @@ "about_module": "About {{name}}", "about_pipette_name": "About {{name}} Pipette", "about_pipette": "About pipette", - "add_fixture_description": "Add this item to your deck configuration. It will be referenced during protocol analysis.", + "add_fixture_description": "Add this hardware to your deck configuration. It will be referenced during protocol analysis.", "add_to_slot_description": "Choose an item below to add to your deck configuration. It will be referenced during protocol analysis.", "add_to_slot": "Add to slot {{slotName}}", "add": "Add", diff --git a/app/src/assets/localization/en/protocol_setup.json b/app/src/assets/localization/en/protocol_setup.json index a63ceeafd50..4e367e23add 100644 --- a/app/src/assets/localization/en/protocol_setup.json +++ b/app/src/assets/localization/en/protocol_setup.json @@ -3,10 +3,10 @@ "action_needed": "Action needed", "adapter_slot_location_module": "Slot {{slotName}}, {{adapterName}} on {{moduleName}}", "adapter_slot_location": "Slot {{slotName}}, {{adapterName}}", - "add_fixture": "Add {{fixtureName}} to deck configuration", + "add_fixture": "Add {{fixtureName}} to {{locationName}}", "additional_labware": "{{count}} additional labware", "additional_off_deck_labware": "Additional Off-Deck Labware", - "add_this_deck_hardware": "Add this deck hardware to your deck configuration. It will be referenced during protocol analysis.", + "add_this_deck_hardware": "Add this hardware to your deck configuration. It will be referenced during protocol analysis.", "add_to_slot": "Add to slot {{slotName}}", "attach_gripper_failure_reason": "Attach the required gripper to continue", "attach_gripper": "attach gripper", diff --git a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx index 76ceaf202b6..026eba5f656 100644 --- a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx +++ b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx @@ -13,7 +13,7 @@ import { StyledText, TYPOGRAPHY, } from '@opentrons/components' -import { getFixtureDisplayName } from '@opentrons/shared-data' +import { getCutoutDisplayName, getFixtureDisplayName } from '@opentrons/shared-data' import { TertiaryButton } from '../../../../atoms/buttons/TertiaryButton' import { getTopPortalEl } from '../../../../App/portal' import { LegacyModal } from '../../../../molecules/LegacyModal' @@ -45,11 +45,12 @@ export const NotConfiguredModal = ( updateDeckConfiguration(newDeckConfig) onCloseClick() } - + const cutoutDisplayName = getCutoutDisplayName(cutoutId) return createPortal( { const { getByText, getByRole } = render(props) getByText('Add Trash bin to deck configuration') getByText( - 'Add this deck hardware to your deck configuration. It will be referenced during protocol analysis.' + 'Add this hardware to your deck configuration. It will be referenced during protocol analysis.' ) getByText('Trash bin') fireEvent.click(getByRole('button', { name: 'Add' })) From 59bb6ce99a8ef7af4b05684cce2bb200e009f8c4 Mon Sep 17 00:00:00 2001 From: Brian Cooper Date: Thu, 9 May 2024 15:02:06 -0400 Subject: [PATCH 4/5] fix(app): address Design QA comments for modules in deck config Fix Deck hardware table padding in desktop protocol setup. Fix padding in no modules detected modal. standardize copy for title and description fo protocol setup steps. standardize copy for header and description in ODD location conflict modal Closes RQA-2687, Closes RQA-2686, Closes RQA-2684, Closes RQA-2685, Closes RQA-2692 --- .../localization/en/device_details.json | 1 - .../localization/en/protocol_setup.json | 2 +- .../AddFixtureModal.tsx | 2 +- .../Devices/ProtocolRun/ProtocolRunSetup.tsx | 13 ++++-- .../ChooseModuleToConfigureModal.tsx | 36 ++++++---------- .../SetupModuleAndDeck/NotConfiguredModal.tsx | 7 ++- .../UnMatchedModuleWarning.tsx | 43 +++++++++---------- .../ProtocolRun/SetupModuleAndDeck/index.tsx | 8 +--- 8 files changed, 52 insertions(+), 60 deletions(-) diff --git a/app/src/assets/localization/en/device_details.json b/app/src/assets/localization/en/device_details.json index a3f5d2de7f3..73c74021176 100644 --- a/app/src/assets/localization/en/device_details.json +++ b/app/src/assets/localization/en/device_details.json @@ -4,7 +4,6 @@ "about_pipette_name": "About {{name}} Pipette", "about_pipette": "About pipette", "add_fixture_description": "Add this hardware to your deck configuration. It will be referenced during protocol analysis.", - "add_to_slot_description": "Choose an item below to add to your deck configuration. It will be referenced during protocol analysis.", "add_to_slot": "Add to slot {{slotName}}", "add": "Add", "an_error_occurred_while_updating_module": "An error occurred while updating your {{moduleName}}. Please try again.", diff --git a/app/src/assets/localization/en/protocol_setup.json b/app/src/assets/localization/en/protocol_setup.json index 4e367e23add..429bbe61354 100644 --- a/app/src/assets/localization/en/protocol_setup.json +++ b/app/src/assets/localization/en/protocol_setup.json @@ -252,7 +252,7 @@ "slot_number": "Slot Number", "status": "Status", "step": "STEP {{index}}", - "there_are_no_unconfigured_modules": "No {{module}} is connected. Attach one and place it in {{slot}}", + "there_are_no_unconfigured_modules": "No {{module}} is connected. Attach one and place it in {{slot}}.", "there_are_other_configured_modules": "A {{module}} is already configured in a different slot. Exit run setup and update your deck configuration to move to an already connected module. Or attach another {{module}} to continue setup.", "tip_length_cal_description_bullet": "Perform Tip Length Calibration for each new tip type used on a pipette.", "tip_length_cal_description": "This measures the Z distance between the bottom of the tip and the pipetteā€™s nozzle. If you redo the tip length calibration for the tip you used to calibrate a pipette, you will also have to redo that Pipette Offset Calibration.", diff --git a/app/src/organisms/DeviceDetailsDeckConfiguration/AddFixtureModal.tsx b/app/src/organisms/DeviceDetailsDeckConfiguration/AddFixtureModal.tsx index b8297db8f84..47ec3077d61 100644 --- a/app/src/organisms/DeviceDetailsDeckConfiguration/AddFixtureModal.tsx +++ b/app/src/organisms/DeviceDetailsDeckConfiguration/AddFixtureModal.tsx @@ -347,7 +347,7 @@ export function AddFixtureModal({ } > - {t('add_to_slot_description')} + {t('add_fixture_description')} {fixtureOptions} {nextStageOptions} diff --git a/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx b/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx index decf1c4394c..c3f73839bc4 100644 --- a/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx +++ b/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx @@ -162,8 +162,13 @@ export function ProtocolRunSetup({ ) const hasFixtures = requiredDeckConfigCompatibility.length > 0 - const flexDeckHardwareDescription = hasModules || hasFixtures ? t('install_modules_and_fixtures') : t('no_deck_hardware_specified') - const ot2DeckHardwareDescription = hasModules ? t('install_modules', {count: modules.length}) : t('no_deck_hardware_specified') + const flexDeckHardwareDescription = + hasModules || hasFixtures + ? t('install_modules_and_fixtures') + : t('no_deck_hardware_specified') + const ot2DeckHardwareDescription = hasModules + ? t('install_modules', { count: modules.length }) + : t('no_deck_hardware_specified') const StepDetailMap: Record< StepKey, @@ -200,7 +205,9 @@ export function ProtocolRunSetup({ protocolAnalysis={protocolAnalysis} /> ), - description: isFlex ? flexDeckHardwareDescription : ot2DeckHardwareDescription + description: isFlex + ? flexDeckHardwareDescription + : ot2DeckHardwareDescription, }, [LPC_KEY]: { stepInternals: ( diff --git a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/ChooseModuleToConfigureModal.tsx b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/ChooseModuleToConfigureModal.tsx index a2c967ac2a8..ebeaa0101fb 100644 --- a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/ChooseModuleToConfigureModal.tsx +++ b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/ChooseModuleToConfigureModal.tsx @@ -62,7 +62,7 @@ export const ChooseModuleToConfigureModal = ( robotName, displaySlotName, } = props - const { t } = useTranslation(['protocol_setup', 'shared']) + const { t, i18n } = useTranslation(['protocol_setup', 'shared']) const attachedModules = useModulesQuery({ refetchInterval: EQUIPMENT_POLL_MS })?.data?.data ?? [] const deckConfig = useNotifyDeckConfigurationQuery()?.data ?? [] @@ -106,7 +106,7 @@ export const ChooseModuleToConfigureModal = ( handleConfigureModule(serialNumber) }} optionName={getFixtureDisplayName(moduleFixtures[0].id, usbPort)} - buttonText={t('shared:add')} + buttonText={i18n.format(t('shared:add'), 'capitalize')} isOnDevice={isOnDevice} /> ) @@ -117,7 +117,7 @@ export const ChooseModuleToConfigureModal = ( const contents = fixtureOptions.length > 0 ? ( - + {t('add_this_deck_hardware')} {fixtureOptions} @@ -145,13 +145,7 @@ export const ChooseModuleToConfigureModal = ( onClick: onCloseClick, }} > - - - - {contents} - - - + {contents} ) : ( - - - - {contents} - - + + {contents} ), @@ -226,15 +212,16 @@ function NoUnconfiguredModules(props: NoUnconfiguredModulesProps): JSX.Element { @@ -248,7 +235,10 @@ function NoUnconfiguredModules(props: NoUnconfiguredModulesProps): JSX.Element { ) return ( - + {configuredModuleMatches.length > 0 ? ( <> diff --git a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx index 026eba5f656..c5cef1823b0 100644 --- a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx +++ b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/NotConfiguredModal.tsx @@ -13,7 +13,10 @@ import { StyledText, TYPOGRAPHY, } from '@opentrons/components' -import { getCutoutDisplayName, getFixtureDisplayName } from '@opentrons/shared-data' +import { + getCutoutDisplayName, + getFixtureDisplayName, +} from '@opentrons/shared-data' import { TertiaryButton } from '../../../../atoms/buttons/TertiaryButton' import { getTopPortalEl } from '../../../../App/portal' import { LegacyModal } from '../../../../molecules/LegacyModal' @@ -50,7 +53,7 @@ export const NotConfiguredModal = ( { if (!showBanner) return null return ( - - setShowBanner(false)} - > - - - {t('extra_module_attached')} - + setShowBanner(false)} + > + + + {t('extra_module_attached')} + - - {`${t('module_mismatch_body')}.`} - - - - + + {`${t('module_mismatch_body')}.`} + + + ) } diff --git a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/index.tsx b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/index.tsx index 0de1a163356..33451516e41 100644 --- a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/index.tsx +++ b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/index.tsx @@ -84,13 +84,9 @@ export const SetupModuleAndDeck = ({ justifyContent={JUSTIFY_SPACE_BETWEEN} marginTop={SPACING.spacing16} marginLeft={SPACING.spacing20} - marginBottom={SPACING.spacing4} + marginBottom={SPACING.spacing12} > - + {i18n.format(t('deck_hardware'), 'capitalize')} Date: Thu, 9 May 2024 15:41:14 -0400 Subject: [PATCH 5/5] fix up tests --- .../localization/en/protocol_setup.json | 1 - .../__tests__/AddFixtureModal.test.tsx | 12 +++---- .../Devices/ProtocolRun/ProtocolRunSetup.tsx | 1 - .../__tests__/LocationConflictModal.test.tsx | 2 +- .../__tests__/NotConfiguredModal.test.tsx | 2 +- .../__tests__/ProtocolRunSetup.test.tsx | 32 +++++++++---------- 6 files changed, 24 insertions(+), 26 deletions(-) diff --git a/app/src/assets/localization/en/protocol_setup.json b/app/src/assets/localization/en/protocol_setup.json index 429bbe61354..3f4155a5c54 100644 --- a/app/src/assets/localization/en/protocol_setup.json +++ b/app/src/assets/localization/en/protocol_setup.json @@ -134,7 +134,6 @@ "missing_pipettes": "Missing {{count}} pipette", "missing": "Missing", "modal_instructions_title": "{{moduleName}} Setup Instructions", - "module_and_deck_setup": "Modules & deck", "module_connected": "Connected", "module_disconnected": "Disconnected", "module_instructions_link": "{{moduleName}} setup instructions", diff --git a/app/src/organisms/DeviceDetailsDeckConfiguration/__tests__/AddFixtureModal.test.tsx b/app/src/organisms/DeviceDetailsDeckConfiguration/__tests__/AddFixtureModal.test.tsx index de4538d3253..38cc283f8e9 100644 --- a/app/src/organisms/DeviceDetailsDeckConfiguration/__tests__/AddFixtureModal.test.tsx +++ b/app/src/organisms/DeviceDetailsDeckConfiguration/__tests__/AddFixtureModal.test.tsx @@ -58,7 +58,7 @@ describe('Touchscreen AddFixtureModal', () => { render(props) screen.getByText('Add to slot D3') screen.getByText( - 'Choose an item below to add to your deck configuration. It will be referenced during protocol analysis.' + 'Add this hardware to your deck configuration. It will be referenced during protocol analysis.' ) screen.getByText('Fixtures') screen.getByText('Modules') @@ -80,7 +80,7 @@ describe('Touchscreen AddFixtureModal', () => { render(props) screen.getByText('Add to slot D3') screen.getByText( - 'Choose an item below to add to your deck configuration. It will be referenced during protocol analysis.' + 'Add this hardware to your deck configuration. It will be referenced during protocol analysis.' ) expect(screen.queryByText('Staging area slot')).toBeNull() screen.getByText('Trash bin') @@ -111,7 +111,7 @@ describe('Desktop AddFixtureModal', () => { render(props) screen.getByText('Add to slot D3') screen.getByText( - 'Add this item to your deck configuration. It will be referenced during protocol analysis.' + 'Add this hardware to your deck configuration. It will be referenced during protocol analysis.' ) screen.getByText('Fixtures') @@ -131,7 +131,7 @@ describe('Desktop AddFixtureModal', () => { render(props) screen.getByText('Add to slot A1') screen.getByText( - 'Add this item to your deck configuration. It will be referenced during protocol analysis.' + 'Add this hardware to your deck configuration. It will be referenced during protocol analysis.' ) screen.getByText('Fixtures') screen.getByText('Modules') @@ -145,7 +145,7 @@ describe('Desktop AddFixtureModal', () => { render(props) screen.getByText('Add to slot B3') screen.getByText( - 'Add this item to your deck configuration. It will be referenced during protocol analysis.' + 'Add this hardware to your deck configuration. It will be referenced during protocol analysis.' ) screen.getByText('Fixtures') screen.getByText('Modules') @@ -160,7 +160,7 @@ describe('Desktop AddFixtureModal', () => { render(props) screen.getByText('Add to slot B2') screen.getByText( - 'Add this item to your deck configuration. It will be referenced during protocol analysis.' + 'Add this hardware to your deck configuration. It will be referenced during protocol analysis.' ) screen.getByText('Magnetic Block GEN1') expect(screen.getByRole('button', { name: 'Add' })).toBeInTheDocument() diff --git a/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx b/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx index c3f73839bc4..05ee4b41b40 100644 --- a/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx +++ b/app/src/organisms/Devices/ProtocolRun/ProtocolRunSetup.tsx @@ -161,7 +161,6 @@ export function ProtocolRunSetup({ deckConfigCompatibility ) const hasFixtures = requiredDeckConfigCompatibility.length > 0 - const flexDeckHardwareDescription = hasModules || hasFixtures ? t('install_modules_and_fixtures') diff --git a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/__tests__/LocationConflictModal.test.tsx b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/__tests__/LocationConflictModal.test.tsx index 5314acbb283..20e167fc549 100644 --- a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/__tests__/LocationConflictModal.test.tsx +++ b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/__tests__/LocationConflictModal.test.tsx @@ -100,7 +100,7 @@ describe('LocationConflictModal', () => { expect(props.onCloseClick).toHaveBeenCalled() fireEvent.click(screen.getByRole('button', { name: 'Update deck' })) screen.getByText('Heater-Shaker Module GEN1 in USB-1') - fireEvent.click(screen.getByRole('button', { name: 'add' })) + fireEvent.click(screen.getByRole('button', { name: 'Add' })) expect(mockUpdate).toHaveBeenCalled() }) it('should render the modal information for a single slot fixture conflict', () => { diff --git a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/__tests__/NotConfiguredModal.test.tsx b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/__tests__/NotConfiguredModal.test.tsx index ed869af0160..955b827ec66 100644 --- a/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/__tests__/NotConfiguredModal.test.tsx +++ b/app/src/organisms/Devices/ProtocolRun/SetupModuleAndDeck/__tests__/NotConfiguredModal.test.tsx @@ -39,7 +39,7 @@ describe('NotConfiguredModal', () => { }) it('renders the correct text and button works as expected', () => { const { getByText, getByRole } = render(props) - getByText('Add Trash bin to deck configuration') + getByText('Add Trash bin to B3') getByText( 'Add this hardware to your deck configuration. It will be referenced during protocol analysis.' ) diff --git a/app/src/organisms/Devices/ProtocolRun/__tests__/ProtocolRunSetup.test.tsx b/app/src/organisms/Devices/ProtocolRun/__tests__/ProtocolRunSetup.test.tsx index 92dc247b922..0db69d94416 100644 --- a/app/src/organisms/Devices/ProtocolRun/__tests__/ProtocolRunSetup.test.tsx +++ b/app/src/organisms/Devices/ProtocolRun/__tests__/ProtocolRunSetup.test.tsx @@ -67,7 +67,7 @@ vi.mock('@opentrons/shared-data', async importOriginal => { const ROBOT_NAME = 'otie' const RUN_ID = '1' -const MOCK_ROTOCOL_LIQUID_KEY = { liquids: [] } +const MOCK_PROTOCOL_LIQUID_KEY = { liquids: [] } const render = () => { return renderWithProviders( { .calledWith(RUN_ID) .thenReturn({ ...noModulesProtocol, - ...MOCK_ROTOCOL_LIQUID_KEY, + ...MOCK_PROTOCOL_LIQUID_KEY, } as any) when(vi.mocked(useProtocolAnalysisErrors)).calledWith(RUN_ID).thenReturn({ analysisErrors: null, @@ -97,7 +97,7 @@ describe('ProtocolRunSetup', () => { .calledWith(RUN_ID) .thenReturn(({ ...noModulesProtocol, - ...MOCK_ROTOCOL_LIQUID_KEY, + ...MOCK_PROTOCOL_LIQUID_KEY, } as unknown) as SharedData.ProtocolAnalysisOutput) vi.mocked(parseAllRequiredModuleModels).mockReturnValue([]) vi.mocked(parseLiquidsInLoadOrder).mockReturnValue([]) @@ -251,7 +251,7 @@ describe('ProtocolRunSetup', () => { .calledWith(RUN_ID) .thenReturn({ ...withModulesProtocol, - ...MOCK_ROTOCOL_LIQUID_KEY, + ...MOCK_PROTOCOL_LIQUID_KEY, } as any) when(vi.mocked(useRunHasStarted)).calledWith(RUN_ID).thenReturn(false) when(vi.mocked(useModuleCalibrationStatus)) @@ -280,7 +280,7 @@ describe('ProtocolRunSetup', () => { render() screen.getByText('STEP 2') - screen.getByText('Modules & deck') + screen.getByText('Deck hardware') screen.getByText('Calibration needed') }) @@ -305,7 +305,7 @@ describe('ProtocolRunSetup', () => { render() screen.getByText('STEP 2') - screen.getByText('Modules & deck') + screen.getByText('Deck hardware') screen.getByText('Action needed') }) @@ -339,13 +339,13 @@ describe('ProtocolRunSetup', () => { render() screen.getByText('STEP 2') - screen.getByText('Modules & deck') + screen.getByText('Deck hardware') screen.getByText('Action needed') }) it('renders module setup and allows the user to proceed to labware setup', () => { render() - const moduleSetup = screen.getByText('Modules') + const moduleSetup = screen.getByText('Deck hardware') fireEvent.click(moduleSetup) screen.getByText('Mock SetupModules') }) @@ -359,9 +359,9 @@ describe('ProtocolRunSetup', () => { 'Review required pipettes and tip length calibrations for this protocol.' ) screen.getByText('STEP 2') - screen.getByText('Modules') + screen.getByText('Deck hardware') - screen.getByText('Install the required modules and power them on.') + screen.getByText('Install the required modules.') screen.getByText('STEP 3') screen.getByText('Labware') @@ -375,7 +375,7 @@ describe('ProtocolRunSetup', () => { .calledWith(RUN_ID) .thenReturn({ ...withModulesProtocol, - ...MOCK_ROTOCOL_LIQUID_KEY, + ...MOCK_PROTOCOL_LIQUID_KEY, modules: [ { id: '1d57adf0-67ad-11ea-9f8b-3b50068bd62d:magneticModuleType', @@ -395,9 +395,9 @@ describe('ProtocolRunSetup', () => { 'Review required pipettes and tip length calibrations for this protocol.' ) screen.getByText('STEP 2') - screen.getByText('Modules') + screen.getByText('Deck hardware') - screen.getByText('Install the required modules and power them on.') + screen.getByText('Install the required module.') screen.getByText('STEP 3') screen.getByText('Labware') screen.getByText( @@ -411,7 +411,7 @@ describe('ProtocolRunSetup', () => { .calledWith(RUN_ID) .thenReturn({ ...withModulesProtocol, - ...MOCK_ROTOCOL_LIQUID_KEY, + ...MOCK_PROTOCOL_LIQUID_KEY, modules: [ { id: '1d57adf0-67ad-11ea-9f8b-3b50068bd62d:magneticModuleType', @@ -426,9 +426,9 @@ describe('ProtocolRunSetup', () => { render() screen.getByText('STEP 2') - screen.getByText('Modules & deck') + screen.getByText('Deck hardware') screen.getByText( - 'Install the required modules and power them on. Install the required fixtures and review the deck configuration.' + 'Install and calibrate the required modules. Install the required fixtures.' ) })