Skip to content

Commit d0eeb40

Browse files
committed
rm counts_match restrictions
1 parent 224053e commit d0eeb40

File tree

3 files changed

+4
-46
lines changed

3 files changed

+4
-46
lines changed

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -90,3 +90,6 @@ ENV/
9090

9191
# redis
9292
dump.rdb
93+
94+
# tests
95+
qtp_sequencing/tests/test_data/

qtp_sequencing/tests/test_validate.py

-29
Original file line numberDiff line numberDiff line change
@@ -417,35 +417,6 @@ def test_validate_per_sample_FASTQ_error(self):
417417
"If preprocessed_fastq is provided, raw_reverse_seqs "
418418
"should not be provided")
419419

420-
# Count mismatch
421-
files = {'raw_forward_seqs': ['/path/to/file1.fastq'],
422-
'raw_reverse_seqs': ['/path/to/file1.fastq',
423-
'/path/to/file1.fastq']}
424-
job_id, _ = self._create_template_and_job(
425-
prep_info, files, "per_sample_FASTQ")
426-
obs_success, obs_ainfo, obs_error = _validate_per_sample_FASTQ(
427-
self.qclient, job_id, prep_info, files)
428-
self.assertFalse(obs_success)
429-
self.assertIsNone(obs_ainfo)
430-
self.assertEqual(obs_error,
431-
"The number of provided files doesn't match the "
432-
"number of samples (3): 1 raw_forward_seqs, "
433-
"2 raw_reverse_seqs (optional, 0 is ok)")
434-
435-
# preprocessed_fastq count mismatch
436-
files = {'preprocessed_fastq': ['/path/to/file1_R1.fastq',
437-
'/path/to/file1_R2.fastq']}
438-
job_id, _ = self._create_template_and_job(
439-
prep_info, files, "per_sample_FASTQ")
440-
obs_success, obs_ainfo, obs_error = _validate_per_sample_FASTQ(
441-
self.qclient, job_id, prep_info, files)
442-
self.assertFalse(obs_success)
443-
self.assertIsNone(obs_ainfo)
444-
self.assertEqual(obs_error,
445-
"The number of provided files doesn't match the "
446-
"number of samples (3): 2 raw_forward_seqs, "
447-
"0 raw_reverse_seqs (optional, 0 is ok)")
448-
449420
# Run prefix mismatch
450421
files = {'raw_forward_seqs': ['/path/to/prefix1_fwd.fastq',
451422
'/path/to/prefix2_fwd.fastq',

qtp_sequencing/validate.py

+1-17
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,6 @@ def _validate_per_sample_FASTQ(qclient, job_id, prep_info, files, test=False):
248248
job_id, "Step 2: Validating 'per_sample_FASTQ' files")
249249

250250
samples = list(prep_info.keys())
251-
samples_count = len(samples)
252251

253252
# Check if there is any filepath type that is not supported
254253
unsupported_fp_types = set(files) - {'raw_forward_seqs',
@@ -268,19 +267,12 @@ def _validate_per_sample_FASTQ(qclient, job_id, prep_info, files, test=False):
268267
"should not be provided")
269268
return False, None, error_msg
270269
read_files = files['raw_forward_seqs']
271-
read_files_count = len(read_files)
272-
counts_match = read_files_count == samples_count
273270
elif 'preprocessed_fastq' in files:
274271
if 'raw_reverse_seqs' in files:
275272
error_msg = ("If preprocessed_fastq is provided, raw_reverse_seqs "
276273
"should not be provided")
277274
return False, None, error_msg
278275
read_files = files['preprocessed_fastq']
279-
read_files_count = len(read_files)
280-
# In the preprocessed_fastq case, we either have 1 file per sample
281-
# or 4 files per sample
282-
counts_match = ((read_files_count == samples_count) or
283-
(read_files_count == 4 * samples_count))
284276
else:
285277
error_msg = ("Missing required filepath type: raw_forward_seqs or "
286278
"preprocessed_fastq")
@@ -289,17 +281,9 @@ def _validate_per_sample_FASTQ(qclient, job_id, prep_info, files, test=False):
289281
# Make sure that we hve the same number of files than samples
290282
if 'raw_reverse_seqs' in files:
291283
rev_count = len(files['raw_reverse_seqs'])
292-
counts_match = counts_match and (rev_count == samples_count)
293284
else:
294285
rev_count = 0
295286

296-
if not counts_match:
297-
error_msg = ("The number of provided files doesn't match the "
298-
"number of samples (%d): %d raw_forward_seqs, "
299-
"%d raw_reverse_seqs (optional, 0 is ok)"
300-
% (samples_count, read_files_count, rev_count))
301-
return False, None, error_msg
302-
303287
def _check_files(run_prefixes, read_files, rev_count, files):
304288
# Check that the provided files match the run prefixes
305289
fwd_fail = [basename(fp) for fp in read_files
@@ -320,7 +304,7 @@ def _check_files(run_prefixes, read_files, rev_count, files):
320304
run_prefix_present = 'run_prefix' in prep_info[samples[0]]
321305
if (fwd_fail or rev_fail) and run_prefix_present:
322306
run_prefixes = [v['run_prefix'] for k, v in prep_info.items()]
323-
if samples_count != len(set(run_prefixes)):
307+
if len(samples) != len(set(run_prefixes)):
324308
repeated = ["%s (%d)" % (p, run_prefixes.count(p))
325309
for p in set(run_prefixes)
326310
if run_prefixes.count(p) > 1]

0 commit comments

Comments
 (0)