-
Notifications
You must be signed in to change notification settings - Fork 179
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
feat(labware-creator): export and import tiprack defs #7947
Conversation
Codecov Report
@@ Coverage Diff @@
## edge #7947 +/- ##
==========================================
+ Coverage 83.86% 85.92% +2.06%
==========================================
Files 352 348 -4
Lines 21730 21235 -495
==========================================
+ Hits 18223 18246 +23
+ Misses 3507 2989 -518
Continue to review full report at Codecov.
|
@@ -82,7 +82,7 @@ describe('DeckSetup', () => { | |||
calBlock: mockTipLengthCalBlock, | |||
}) | |||
expect(wrapper.text()).toContain( | |||
'Clear the deck and place a full Opentrons GEB 300uL Tiprack and Calibration Block on' | |||
'Clear the deck and place a full 300ul Tiprack FIXTURE and Calibration Block on' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought it would be clearer if the fixture has "FIXTURE" in its name, instead of being called "Opentrons GEB" which isn't what this labware def is
labware-library/src/labware-creator/__tests__/loadAndSaveIntegration.test.ts
Outdated
Show resolved
Hide resolved
@@ -114,7 +115,7 @@ export function labwareDefToFields( | |||
shape.shape === 'rectangular' ? String(shape.yDimension) : null, | |||
|
|||
brand: def.brand.brand, | |||
brandId: def.brand.brandId ? def.brand.brandId.join(',') : null, // comma-separated values | |||
brandId: def.brand.brandId != null ? def.brand.brandId.join(',') : null, // comma-separated values |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just getting rid of some lint warnings about implicit falsey while I'm in here
@@ -2817,7 +2817,7 @@ Object { | |||
"tiprack1Id": Object { | |||
"def": Object { | |||
"brand": Object { | |||
"brand": "Opentrons", | |||
"brand": "Fixture Brand", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
step-generation
's makeContext
fn is snapshot tested bc it's a huge fixture built up of other fixtures, including the tiprack def. So this is an expected change. All the tests still pass, which isn't a surprise bc they don't care about the geometry other than it being a 96-tip tiprack
@@ -91,7 +91,7 @@ export interface LabwareFields { | |||
aluminumBlockType: string | null | undefined // eg, '24well' or '96well' | |||
aluminumBlockChildType: string | null | undefined | |||
|
|||
handPlacedTipFit: string | null | undefined | |||
handPlacedTipFit: 'snug' | 'loose' | null | undefined |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
'snug' | 'loose'
is similar to BooleanString = 'true' | 'false'
here
@@ -79,7 +80,9 @@ export function labwareDefToFields( | |||
tubeRackInsertLoadName: null, | |||
aluminumBlockType: null, | |||
aluminumBlockChildType: null, | |||
handPlacedTipFit: null, | |||
|
|||
// We assume all tipracks are snug upon import |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@howisthisnamenottakenyet said:
Let’s not ask again. If a definition is being imported we can assume it was a snug fit when created.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Everything looks good to me 🌵
@@ -10622,7 +10622,7 @@ exports[`LabwareList component renders 1`] = ` | |||
"dimensions": Object { | |||
"xDimension": 127.76, | |||
"yDimension": 85.48, | |||
"zDimension": 64.48, | |||
"zDimension": 64.49, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
was this just some rounding error that snuck in? I'm not too worried about it, just curious.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IDK where the fixture's original 64.48 came from, but to re-generate it I copied opentrons_96_tiprack_300ul's 64.49 🤷
Overview
Closes #7696 and closes #7697
Changelog
createRegularLabware
Review requests
Risk assessment
Low, as long as all tests are passing. This fixture is widely used in tests, but not in production code, so if all tests still pass we should be fine.
Notes
Eventually we could save this data elsewhere instead of in a PR, but, how I generated the 300 ul tiprack fixture def:
Then, oops, I manually changed tipLength from 123 to 59.3
And manually changed the namespace to
"fixture"
, and manually changed load name tofixture_tiprack_300_ul
to match file name