Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test: 7.1.0 testing protocols #14135

Merged
merged 31 commits into from
Dec 21, 2023
Merged

test: 7.1.0 testing protocols #14135

merged 31 commits into from
Dec 21, 2023

Conversation

DerekMaggio
Copy link
Contributor

@DerekMaggio DerekMaggio commented Dec 7, 2023

Overview

  • Add new protocols related to fixes, features, and improvements in 7.1.0
  • Update protocol print script
  • Add fixes, features, and cleaner output to Protocol Analysis testing

Important

The ABR testing protocols are currently failing, and will not be fixed in this PR
@y3rsh is fixing them

Test Plan

  • Verify all tests, new and old, pass, except for the ABR tests
  • Mark expected failures accordingly

Changelog

Protocols Added

  • OT-2
    • OT2_P300M_P20S_2_16_aspirateDispenseMix0Volume.py
    • OT2_P300M_P20S_TC_HS_TM_2_16_SmokeTestV3.py
  • Flex
    • OT3_None_None_2_16_AnalysisError_AccessToFixedTrashProp.py
    • OT3_None_None_2_16_AnalysisError_TrashBinInCol2.py
    • OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3.py
    • OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol4.py
    • OT3_None_None_MM_2_16_AnalysisError_MagneticModuleInFlexProtocol.py
    • OT3_None_None_TM_2_16_AnalysisError_ModuleInCol2.py
    • OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3.py
    • OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol4.py
    • OT3_P1000_96_2_16_AnalysisError_DropTipsWithNoTrash.py
    • OT3_P1000_96_GRIPPER_2_16_AnalysisError_DropLabwareIntoTrashBin.py
    • OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1.py
    • OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1NoModules.py
    • OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1NoFixtures.py
    • OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_DeckConfiguration1NoModulesNoFixtures.py
    • OT3_P1000_96_GRIPPER_HS_TM_TC_MB_2_16_Smoke.py
    • OT3_P1000_96_TM_2_16_AnalysisError_ModuleAndWasteChuteConflict.py
    • OT3_P300Gen2_None_2_16_AnalysisError_OT2PipetteInFlexProtocol.py

Print Protocols Script

Added printing of protocols mapped in protocols.py, but have no corresponding file in the protocols directory. This was useful when I changed the name of some of the protocols. It helped me make sure I didn't have test definitions that were not connected to a protocol.

Protocol Analysis Testing Updates

  • Add support to mark tests as expected failures (see the OT3_None_None_2_16_AnalysisError_TrashBinInStagingAreaCol3 and OT3_None_None_TM_2_16_AnalysisError_ModuleInStagingAreaCol3 cases)
  • Parameterize each test with the protocol name. This makes it easier to read the pytest output
  • Modify the control flow of the test to ensure that error popout is closed regardless of the test result

Review requests

  • Did I mess with the protocol naming scheme too much?
  • Are the analysis error protocols self-explanatory enough that I don't need to write docs on them?

Risk assessment

Extremely low, not run in CI, nothing depends on this

Copy link

codecov bot commented Dec 12, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (98d98f7) 70.43% compared to head (4b0f46a) 70.47%.
Report is 54 commits behind head on chore_release-7.1.0.

❗ Current head 4b0f46a differs from pull request most recent head 0c339a6. Consider uploading reports for the commit 0c339a6 to get more accurate results

Additional details and impacted files

Impacted file tree graph

@@                   Coverage Diff                   @@
##           chore_release-7.1.0   #14135      +/-   ##
=======================================================
+ Coverage                70.43%   70.47%   +0.04%     
=======================================================
  Files                     1636     2512     +876     
  Lines                    54506    71219   +16713     
  Branches                  4024     8974    +4950     
=======================================================
+ Hits                     38391    50192   +11801     
- Misses                   15418    18831    +3413     
- Partials                   697     2196    +1499     
Flag Coverage Δ
app 67.72% <ø> (+29.15%) ⬆️
components 59.77% <ø> (ø)
labware-library 51.50% <ø> (ø)
protocol-designer 44.99% <ø> (ø)
react-api-client 65.73% <ø> (ø)
step-generation 86.84% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

see 877 files with indirect coverage changes

@DerekMaggio DerekMaggio self-assigned this Dec 21, 2023
@DerekMaggio DerekMaggio marked this pull request as ready for review December 21, 2023 18:33
@DerekMaggio DerekMaggio requested review from a team as code owners December 21, 2023 18:33
Copy link
Member

@y3rsh y3rsh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great but should it not target edge ?

I'm eager to rebase on this to further enhance the snapshots.

@DerekMaggio DerekMaggio changed the base branch from chore_release-7.1.0 to edge December 21, 2023 18:44
@DerekMaggio
Copy link
Contributor Author

Retargeted, thank you for catching that

Copy link

@nusrat813 nusrat813 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@DerekMaggio DerekMaggio merged commit d9c0321 into edge Dec 21, 2023
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants