Skip to content
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion app/models/transfer_request.rb
Original file line number Diff line number Diff line change
Expand Up @@ -154,9 +154,11 @@ def source_and_target_assets_are_different
# @note This is particularly important when transferring out of the initial
# {Receptacle} when there may be multiple active {Receptacle#requests_as_source}
# @param request [Request] The request which is being processed
# NB. in rare circumstances we transfer out of input plates without submissions for
# aggregation, in which cases outer request is nil, so we also cannot get submission_id
def outer_request=(request)
@outer_request = request
self.submission_id = request.submission_id
self.submission_id = request&.submission_id
end

# Sets the {#outer_request} from just a request_id
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
# scRNA Core aggregation plate purpose definitions
LRC GEM-X 5p CITE Cherrypick:
input_plate: false
stock_plate: false
cherrypickable_target: true
target_type: Plate
size: 96
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@ limber_scrna_core_library_prep:
product_line_name: Short Read
acceptable_purposes:
- LRC GEM-X 5p Cherrypick
- LRC GEM-X 5p CITE SUP Input
- LRC GEM-X 5p CITE SUP XP
- LRC GEM-X 5p CITE Cherrypick
library_types:
- Chromium single cell GEM-X 5p v3 GE
- Chromium single cell GEM-X 5p v3 BCR
Expand Down
20 changes: 20 additions & 0 deletions spec/models/transfer_request_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -384,6 +384,26 @@
end
end

describe '#outer_request=' do
subject(:transfer_request) { build(:transfer_request, asset: source, target_asset: destination) }

context 'when request is nil' do
it 'sets submission_id to nil' do
transfer_request.outer_request = nil
expect(transfer_request.submission_id).to be_nil
end
end

context 'when request is present' do
let(:library_request) { create(:library_request, asset: source) }

it 'sets submission_id to the request submission_id' do
transfer_request.outer_request = library_request
expect(transfer_request.submission_id).to eq(library_request.submission_id)
end
end
end

context 'when failing a transfer request with downstream assets' do
# Labware
let(:original_plate) { create(:plate_with_untagged_wells, well_count: 1) }
Expand Down
Loading