Permalink
Browse files

updated tests with FastQ example files from NAR

  • Loading branch information...
1 parent 416d6c6 commit d724cad4a3fa7d74ea18a0be4ebb07b6769c812e @fstrozzi committed Mar 12, 2012
Showing with 464 additions and 92 deletions.
  1. +55 −0 spec/fastq_error_spec.rb
  2. +29 −42 spec/parser_spec.rb
  3. 0 test/data/{ → errors}/error_header.fastq
  4. 0 test/data/{ → errors}/error_long_qual.fastq
  5. 0 test/data/{ → errors}/error_qual_del.fastq
  6. 0 test/data/{ → errors}/error_qual_escape.fastq
  7. BIN test/data/{ → errors}/error_qual_null.fastq
  8. 0 test/data/{ → errors}/error_qual_space.fastq
  9. 0 test/data/{ → errors}/error_qual_tab.fastq
  10. 0 test/data/{ → errors}/error_qual_unit_sep.fastq
  11. 0 test/data/{ → errors}/error_qual_vtab.fastq
  12. 0 test/data/{ → errors}/error_spaces.fastq
  13. 0 test/data/{ → errors}/error_tabs.fastq
  14. 0 test/data/{ → errors}/error_trunc_at_qual.fastq
  15. 0 test/data/{ → errors}/error_trunc_at_seq.fastq
  16. 0 test/data/{ → errors}/error_trunc_in_qual.fastq
  17. 0 test/data/{ → errors}/error_trunc_in_seq.fastq
  18. +8 −0 test/data/formats/illumina_full_range_as_illumina.fastq
  19. +8 −0 test/data/formats/illumina_full_range_as_sanger.fastq
  20. +8 −0 test/data/formats/illumina_full_range_as_solexa.fastq
  21. +8 −0 test/data/formats/illumina_full_range_original_illumina.fastq
  22. +40 −0 test/data/formats/longreads_as_illumina.fastq
  23. +40 −0 test/data/formats/longreads_as_sanger.fastq
  24. +40 −0 test/data/formats/longreads_as_solexa.fastq
  25. +16 −0 test/data/formats/misc_dna_as_illumina.fastq
  26. +16 −0 test/data/formats/misc_dna_as_sanger.fastq
  27. +16 −0 test/data/formats/misc_dna_as_solexa.fastq
  28. +16 −0 test/data/formats/misc_dna_original_sanger.fastq
  29. +16 −0 test/data/formats/misc_rna_as_illumina.fastq
  30. +16 −0 test/data/formats/misc_rna_as_sanger.fastq
  31. +16 −0 test/data/formats/misc_rna_as_solexa.fastq
  32. +16 −0 test/data/formats/misc_rna_original_sanger.fastq
  33. +8 −0 test/data/formats/sanger_full_range_as_illumina.fastq
  34. +8 −0 test/data/formats/sanger_full_range_as_sanger.fastq
  35. +8 −0 test/data/formats/sanger_full_range_as_solexa.fastq
  36. +8 −0 test/data/formats/sanger_full_range_original_sanger.fastq
  37. +8 −0 test/data/formats/solexa_full_range_as_illumina.fastq
  38. +8 −0 test/data/formats/solexa_full_range_as_sanger.fastq
  39. +8 −0 test/data/formats/solexa_full_range_as_solexa.fastq
  40. +8 −0 test/data/formats/solexa_full_range_original_solexa.fastq
  41. +12 −0 test/data/formats/wrapping_as_illumina.fastq
  42. +12 −0 test/data/formats/wrapping_as_sanger.fastq
  43. +12 −0 test/data/formats/wrapping_as_solexa.fastq
  44. +0 −10 test/data/sample.fasta
  45. +0 −24 test/data/sample.fastq
  46. BIN test/data/sample.fastq.gz
  47. +0 −16 test/data/sff_sample.fastq
View
@@ -0,0 +1,55 @@
+require 'helper'
+
+describe Bio::Faster do
+
+ describe "#each_record error handling" do
+
+ it "should raise an error if the header is wrong" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_header.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise and error if there is a space in the quality string" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_qual_space.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise and error if there is a tab in the quality string" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_qual_tab.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise and error if there is a v-tab in the quality string" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_qual_vtab.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise and error if there is a space in the sequence string" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_spaces.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise and error if there is a tab in the sequence string" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_tabs.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise and error if there is a delete char in the quality string" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_qual_del.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise and error if there is an escape in the quality string" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_qual_escape.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise and error if there is a unit separator char in the quality string" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_qual_unit_sep.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+ it "should raise an error if sequence and quality are truncated or different in length" do
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_trunc_at_qual.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_trunc_at_seq.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_qual_null.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_long_qual.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_trunc_in_seq.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ expect {Bio::Faster.new(File.join(TEST_DATA+"/errors/","error_trunc_in_qual.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ end
+
+
+ end
+
+end
View
@@ -2,59 +2,46 @@
describe Bio::Faster do
- describe "#parse_fastq" do
+ describe "#each_record" do
it "should read a FastQ file returning an array with sequence data" do
- Bio::Faster.new(File.join(TEST_DATA,"sample.fastq")).each_record do |seq|
+ Bio::Faster.new(TEST_DATA+"/formats/illumina_full_range_as_illumina.fastq").each_record do |seq|
seq.class.should == Array
end
end
- it "should raise an error if the header is wrong" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_header.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- end
-
- it "should raise and error if there is a space in the quality string" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_qual_space.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- end
-
- it "should raise and error if there is a tab in the quality string" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_qual_tab.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- end
-
- it "should raise and error if there is a v-tab in the quality string" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_qual_vtab.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- end
-
- it "should raise and error if there is a space in the sequence string" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_spaces.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- end
-
- it "should raise and error if there is a tab in the sequence string" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_tabs.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- end
-
- it "should raise and error if there is a delete char in the quality string" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_qual_del.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- end
+ it "should read different FastQ formats" do
+ files = Dir.glob(TEST_DATA+"/formats/*.fastq")
+ files.each do |file|
+ bioruby_data = []
+ Bio::FlatFile.open(Bio::Fastq,File.open(file)).each_entry do |seq|
+ bioruby_data << [seq.entry_id,seq.seq,seq.qualities]
+ end
+ faster_data = []
+ Bio::Faster.new(file).each_record do |seq|
+ seq[0] = seq[0].split(" ").first
+ faster_data << seq
+ end
+ faster_data.should == bioruby_data
+ end
- it "should raise and error if there is an escape in the quality string" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_qual_escape.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
end
- it "should raise and error if there is a unit separator char in the quality string" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_qual_unit_sep.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
+ it "should handle correctly Phred64 qualities (Solexa)" do
+ file = TEST_DATA+"/formats/misc_rna_as_solexa.fastq"
+ bioruby_data = []
+ Bio::FlatFile.open(File.open(file)).each_entry do |seq|
+ seq.format = "fastq-solexa"
+ bioruby_data << [seq.entry_id,seq.seq,seq.qualities]
+ end
+ faster_data = []
+ Bio::Faster.new(file, :solexa).each_record do |seq|
+ seq[0] = seq[0].split(" ").first
+ faster_data << seq
+ end
+ faster_data.should == bioruby_data
end
- it "should raise an error if sequence and quality are truncated or differ in length" do
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_trunc_at_qual.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_trunc_at_seq.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_qual_null.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_long_qual.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_trunc_in_seq.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
- expect {Bio::Faster.new(File.join(TEST_DATA,"error_trunc_in_qual.fastq")).each_record {|seq|}}.to raise_error(RuntimeError)
-
- end
end
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,8 @@
+@FAKE0005 Original version has PHRED scores from 0 to 62 inclusive (in that order)
+ACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACG
++
+@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
+@FAKE0006 Original version has PHRED scores from 62 to 0 inclusive (in that order)
+GCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCA
++
+~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@
@@ -0,0 +1,8 @@
+@FAKE0005 Original version has PHRED scores from 0 to 62 inclusive (in that order)
+ACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACG
++
+!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
+@FAKE0006 Original version has PHRED scores from 62 to 0 inclusive (in that order)
+GCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCA
++
+_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"!
@@ -0,0 +1,8 @@
+@FAKE0005 Original version has PHRED scores from 0 to 62 inclusive (in that order)
+ACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACG
++
+;;>@BCEFGHJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
+@FAKE0006 Original version has PHRED scores from 62 to 0 inclusive (in that order)
+GCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCA
++
+~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJHGFECB@>;;
@@ -0,0 +1,8 @@
+@FAKE0005 Original version has PHRED scores from 0 to 62 inclusive (in that order)
+ACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACGTACG
++
+@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
+@FAKE0006 Original version has PHRED scores from 62 to 0 inclusive (in that order)
+GCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCA
++
+~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@
@@ -0,0 +1,40 @@
+@FSRRS4401BE7HA [length=395] [gc=36.46] [flows=800] [phred_min=0] [phred_max=40] [trimmed_length=95]
+tcagTTAAGATGGGATAATATCCTCAGATTGCGTGATGAACTTTGTTCTGGTGGAGGAGAAGGAAGTGCATTCGACGTATGCCCGTTTGTCGATATTTGtatttaaagtaatccgtcacaaatcagtgacataaatattatttagatttcgggagcaactttatttattccacaagcaggtttaaattttaaatttaaattattgcagaagactttaaattaacctcgttgtcggagtcatttgttcggttattggtcgaaagtaaccncgggaagtgccgaaaactaacaaacaaaagaagatagtgaaattttaattaaaanaaatagccaaacgtaactaactaaaacggacccgtcgaggaactgccaacggacgacacagggagtagnnn
++
+eeeccccccc`UUU^UWWeegffhhhhhhhhhhhhhhhhhhggghhhhhhhhhfgfeeeee\\\\ceeeeeeeeeeeeeec^^^YRPOSNVU\YTMMMSMRKKKRUUNNNNS[`aa```\bbeccccccccYUUUbceeee\[`a`\ZYRRRPPP[\\\XXZaWWXeeeeeeccacaccc\WWSSQRPMMKKKLKKKKKKKKPPRRMMLLLPVPPPKKKKKQQTTTPRPPQPMLLMKRRRPPKMKKRLLKKMKKLLKRTPPPQRMMLL@KKKKLLKLLLLXKKKKW\KKLKKKLKKKKLLLQUYXYTLMMPKKKKPPNNKKKK@KKPXPVLLKKKKLRMKLLKKPVKKKKLLLJPPPPRMOROOOOKKKOSSSOOORUZXUUUQMNNZV][Z@@@
+@FSRRS4401BRRTC [length=145] [gc=38.62] [flows=800] [phred_min=0] [phred_max=38] [trimmed_length=74]
+tcagCCAGCAATTCCGACTTAATTGTTCTTCTTCCATCATTCATCTCGACTAACAGTTCTACGATTAATGAGTTTGGCtttaatttgttgttcattattgtcacaattacactactgagactgccaaggcacncagggataggnn
++
+eeeeeeeeecccceeeefecccca`````\[SSSS__a\TTTYaaaaa__^WYW[^[WXWXW[WSSSQZ\\RKKKTPSKKKPPKKKMKKQPVVVTTTTPRKMMLLPPPTVTWMNNRSSWW][[ZZZZXXSSN@NSKKKTVWTT@@
+@FSRRS4401B64ST [length=382] [gc=40.58] [flows=800] [phred_min=0] [phred_max=40] [trimmed_length=346]
+tcagTTTTCTTAAATTACTTGAATCTGTTGAAGTGGATGTCCACTTTTGTATGCCAAATATGCCCAGCGTATACGATCTTGGCCACATCTCCACATAATCATCAGTCGGATGCAAAAAGCGATTAAACTAAAAATGAATGCGTTTTTAGATGAGTAAATAGGTAATACTTTGTTTAAATAATAAATGTCACAAACAGAACGCGGATTACAGTACCTGAAAATAGTTGTACTGTATCTGTGCCGGCACTTCCTCGGCCCTGAGAAGTTGTCCCGTTGTTTCCATTCGCACCATCCAATGGCCAAAGTTTGCGAAGAATCTGTTCCGTTCCATTACCAATTGTTTTTCCATGctgagactgccaaggcacacaggggataggnn
++
+hhhhbbbbh^^UUUhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhUUUUh`hhhhh^^^hhhhbbbhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhUURRRdhbdYYRRW\NLLLLKW\]]^^YQLNNNNV]bddhdhggghhhhhhhhhdZZXXPPPXXa^^^habghhhhhhggghhggghhhhhhhhhhhhhhhhhhaabbhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhfffhhhhhhhhhc^\\\chhhggghhhhhhhhhggghhhhhhhhhhggghggghhhhhhhhhhhhhhhhhhhhhh^]ZXXWW\\TLLLLM__`dfhhhhhhhhhgg^^^^dhhheeXXXZdhhaa@@
+@FSRRS4401EJ0YH [length=381] [gc=48.29] [flows=800] [phred_min=0] [phred_max=40] [trimmed_length=343]
+tcagTTTTTGGAGAATTCCGTCAGGGACGGCATGGCATATTTGTGGGTTCGGCACGGCGTCCTGGCCAAGAAGAAGAAGACGAATTAGCCCGTTAATTTAATGACACCTTCCCCAATTTTGCAGCAATGATTGGTTCATTCTTGGCGGTGCGTTTTTGTGCTTCGTCGAATTGTTGGCCATTTTGGTCCACCGGCCATCATCTTTACGCTATCCGACTGATTGGAAATCACCGCCTAGCATTTTGCCGAAGATTGTTGCGTTGTACGGCCATGTGCTGATTGTTTACATTGGCATTCTTGGCAATTTGTCCTTGGTCGGCTTTGACGGCAAATTTGCGGTGTTAAGTctgagactgccaaggcacacagggggatagggnn
++
+hhhh^^^^^hhhhhhhhhhhhhhggghhhhhhhhhhhhhggghhggghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhggghhhhhggghhhhhhhhhhh````hh]]]]hhhhhhhhhhhhhhhhhhhhhhhhhhddhddZRRRRRcVhhhhhhhhhhhhhhhhhhhhhbb__gghhhhhhhhhhhhhhhhggghhhhhhhhhhhhhhhhhhhggghhhhhhhhhhhhhaaaahgbcbghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhggghhhggbbchhhhhhggghhbbbg\bbhhhhhhhhhfffhhhhhhgggggghhhhhhhhhhhhhhhggghhggd^^]]^dedd^NNNNNZYWOLL@@
+@FSRRS4401BK0IB [length=507] [gc=49.31] [flows=800] [phred_min=0] [phred_max=40] [trimmed_length=208]
+tcagTTGACCGGCGTTGTGTAACAATAATTCATTATTCTGAGACGATGCCAATGTAATCGACGGTTTATGCCCAATTATTCCCATCTATGCTTAACTGATCAAATACTATTTGCATTACGTCACGAAATTGCGCGAACACCGCCGGCCGACAATAATTTATACCGGACATACCGGAGTTGATGGTAATCGGTAAAGAGTTTTATTTAATTATntattatcnctattaattattgttancaacaatgtgcacgctntgccgcccgccgccgccgtgtcggtaggaccccggacggacccggacccggttcgggtacccgttttcgggttcccggaaccgtttttcgggtacccggttttttcggggggccccccggtaaaaaaccggggaaccccctaaaacgggtaaacgtaccgtaagggaccccctaaacgggggccccgaaaaaccgggacccaaaccggggggaaacggttaaaggggggggaagtaggngnnnnnnnnnnnn
++
+eee`__eeeeeeeeeeggaYYY_aeeeeffghghhhhhhhhhhhhhhhhhhhhhhheeeeeeeee^\a`_PPPWWOPP[[WWZ^``accb^^^cc````c`UUUc^ccc\\\\\``]^]][[[\[PPPWW[[^^^``^XTTT\`aaa__^\]]^__PPPSQYYcc`^^^ceeeeeeeeeeeeea````[[OOOOMQQ\NNNNWKLLPPPPPP@QRLLNQS@RVYUUUU[ZWQQNMMS@SUTQPPVVTTRMLMQR@QRPPQPPPQKKLKKQPP\\TLLLLLLKPQKKKKKKLKKKLPKKKKLKKPTTLLKKKKPRPPPMKKKKKKKKJJPPPMMPPMMPKKKKKKKKKJRKKKKKLLQQLLLLLNNLLLLTTNNIINLLQQLLIIKKKKIIKKKKKKMPMKIKKKKIIIKKKKKKKKKKKKKKKKKKKKKKKHKKLKKKKKKHKKKKKIINNMHKKKNNNKKKKKKKKKKKMHHRRLLLKKKKKKKKKKGOKKK@M@@@@@@@@@@@@
+@FSRRS4401ARCCB [length=258] [gc=46.90] [flows=800] [phred_min=0] [phred_max=38] [trimmed_length=193]
+tcagTTATTGCAGTCGTTCCGCGCCATCGCCGGTAACCGTCCGCGTGTTATTCTGTGTATCGGCCAACCTTCGTATAACTTCGTATAATGTATGCTATACGAAGTTATTACGATCTATACCGGCGAAACTCAGCCGAAAGGTCTCGCGGTAGAGCCTATGAGCTGCCCGACCGATGCATTTAAATTTCCGGGGATCGtcgctgatctgagactgccaaaggcacactagggggataggnnnnnnnnnnnnnnnnnnnn
++
+eee[WYY_ceeeeeeeffecb`````a__OOOOSU[ZUURQQRUUVUQQSRRSW[[\^^SSSTYY]`a```_[[\\a\YTTTYaac^^\acccceeebbbbbbbeebccceeeeeca``\\WWWWOOOS][[[XXUWWZWWX[WWX^aaaa`\^^^ccaaa__^^WWWWXLLLQRVVVPKKKKKKKKLLPPTQ[[OOPTW`_][[[[[SRQVVVPPKKKLLRV\\\VTKLLLLRSUUU@@@@@@@@@@@@@@@@@@@@
+@FSRRS4401CM938 [length=453] [gc=44.15] [flows=800] [phred_min=0] [phred_max=40] [trimmed_length=418]
+tcagGTTTTAAATCGCTTTCCAAGGAATTTGAGTCTAAATCCGGTGGATCCCATCAGTACAAATGCGGCGACAAGGCCGTGAAAACACTGCTTAATTCTTTGCACTTTTTGGCCACCTTTTTGGAAATGTTGTTTTGTGTTCTCAAAATTTTCCATCTCAGAACAAACATTCCATCGGGCTGATGTTGTGGCTTTTGGCGCGCGAAGTGCTGCTACTGCGCGGCAAAATCAGTCGCCAGACCGGTTTTGTTGTGGACGACAAAGTGATCATGCCTGACTTGTACTTCTACCGCGATCCGCAAGCGCGAATTGGTCACATAGTTATAGAATTTTTGAGCCTTTTTCTTGACATAAAAAGTGTGGTTTTAAAAATTTCCTGGCAGGACCCACGCCAACGTTCAGGAATAATATCTTTTAAAAAGctgagactgccaaggcacacaggggataggn
++
+hhhhhbb]]UUUhhhhbbbhhhhhhhhggghhhhhfUUUhhhhhhhhhhggghhhhhhhhbbbhhhhhhhhhhhhhhhhhh____hhhhhhhhhhhhhggghhhh^^^\ZhhddhYYNNNNNVTSSY^haaVQQSSdWddbdab\_______gghhhhhhhhhhaaahhhhhhhhhggghhhhhhhhhhhhhbbbbhhhhhhhhhhhhhhhhhhhhhhhhhhhhUUUUcdhhgda^^c_VVVVVQQQQcWXddhhhhhhhggghhhhhhhhggghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhggghhhhhhhhhhhhhhh\\^\\hhhhh^^^\ZhURcccWQLLKKKRW\\YYLLLLKKLLLJJJRROUUZ_URWOOOWNYWWX[Yafhhhhhhhhhed[^eTTOOLLLLLTYZZZY]^_b[[VXXXdddddd____ddddd@
+@FSRRS4401EQLIK [length=411] [gc=34.31] [flows=800] [phred_min=0] [phred_max=40] [trimmed_length=374]
+tcagTTTAATTTGGTGCTTCCTTTCAATTCCTTAGTTTAAACTTGGCACTGAAGTCTCGCATTTATAACTAGAGCCCGGATTTTAGAGGCTAAAAAGTTTTCCAGATTTCAAAATTTATTTCGAAACTATTTTTCTGATTGTGATGTGACGGATTTCTAAATTAAATCGAAATGATGTGTATTGAACTTAACAAGTGATTTTTATCAGATTTTGTCAATGAATAAATTTTAATTTAAATCTCTTTCTAACACTTTCATGATTAAAATCTAACAAAGCGCGACCAGTATGTGAGAAGAGCAAAAACAACAAAAAGTGCTAGCACTAAAGAAGGTTCGAACCCAACACATAACGTAAGAGTTACCGGGAAGAAAACCACTctgagactgccaaggcacacagggggataggnn
++
+hhh^UUU^^ggghhhhhhhhhfffhhhhhhhhhhhfffggghhhhhhhhhhhhhhhhhhhhfffhhhhhhhhhhggghhh____hhhhdhdPPPPOOLLLLQQ^\WLLLYLLLLLLLKKKKRRLLLTYRKLLLLYPaadddghhhhhhhhhhha^^`PQQOOOMMMY^\OQSfhhhhhhhhhhhhhhhhhhdbbgga\NNLKKQP^^[TLOOQ\Ueaa^YX[\PPNSSSSNNLNNVV^^fdhddgh`bbhhhggghhhhhhhbbb`hhhgggggghhhhhhhhhhhhhhhhhhhhhhddPNNLLWQQZLLLLMVVV_dhhhhhh^^^hhhhhhhhhhhggghhhhhhhhhhhhhhhhhhhhXXSQQVVVTTTT`dZhdddddhhhhh^^XVTT]_\\YRKKKKKRRRRU@@
+@FSRRS4401AOV6A [length=309] [gc=22.98] [flows=800] [phred_min=0] [phred_max=40] [trimmed_length=273]
+tcagTTTTCAAATTTTCCGAAATTTGCTGTTTGGTAGAAGGCAAATTATTTGATTGAATTTTGTATTTATTTAAAACAATTTATTTTAAAATAATAATTTTCCATTGACTTTTTACATTTAATTGATTTTATTATGCATTTTATATTTGTTTTCTAAATATTCGTTTGCAAACTCACGTTGAAATTGTATTAAACTCGAAATTAGAGTTTTTGAAATTAATTTTTATGTAGCATAATATTTTAAACATATTGGAATTTTATAAAACATTATATTTTTctgagactgccaaggcacacagggggataggn
++
+hhhhbbbbhZZZbbbbhhh^^^ggghhhhggghhhhhhhhhhggghhhggghhhhhhh____hehbbbhb``ZZZZdc^a__cUUSSTTTT[[[fhh]]``hhhhhhhhZZZYYhhh^^^bbbhhhZZZZheehhhhhbbbahahddcbSSSS^Saaad^dhhhbgghhZZZghhhhhhggZZZgghhhhhZZZhhhhggghhhhhh]]^^]hddaffYYPPPPNSUeaeaa^\Z\`^XVVVPPPXYd```ccacVVVV\NPPPPQQc`__aUWZZZhWgghhhhhZZZZ^]hdbbbaNNNNNZVST\@
+@FSRRS4401EG0ZW [length=424] [gc=23.82] [flows=800] [phred_min=0] [phred_max=40] [trimmed_length=389]
+tcagTTTTGATCTTTTAATAATGAATTTTAATGTGTTAAAATGATTGCATTGATGGCATAACCGCATTTAAATTAATTACATGAAGTGTAAGTATGAAATTTTCCTTTCCAAATTGCAAAAACTAAAATTTAAAATTTATCGTAAAAATTAACATATATTTTAAACGATTTTAAGAAACATTTGTAAATTATATTTTTGTGAAGCGTTCAAACAAAAATAAACAATAAAATATTTTTCTATTTAATAGCAAAACATTTGACGATGAAAAGGAAAATGCGGGTTTGAAAATGGGCTTTGCCATGCTATTTTCATAATAACATATTTTTATTATGAATAATAAATTTACATACAATATATACAGTCTTAAATTTATTCATAATATTTTTGAGAATctgagactgccaaggcacacaggggataggn
++
+hh`XSSSTddhh\\\]hhhhhhhhhbbbbhhghhhbbZZZZhhhhhhhhhhhhhhhhhhhhhhhhheZZUUUcchhhhhhhhhhhhhhhhhhhddXSSSQQSS__UUUbb[[acc`\LLLLLQ[KKKKUTXNNOO\\\WbhhhZ]]\\ggZZhhhhhhbb__^^^hhh____hb^UUUghccbh^a^^bb[ddPPPPPaSaccbaZ\_aVVV]NNNNL\RQR^SQRKKKN\PKKKKLYSdZ^^dhhhhhbbbbh]ZZZhhhhhhh[[__^\NNNNV\`XXXWW[[SSTThdddhhhhhhhhhhhhh[XXXghhhhhhhhhhh^^^^^hhhhhhhhhhhb`bZTTTRXdhhhhhhhhhhhhhhhhggXXXgggh`\`ddee_\MMMMM`c___ccddddehhhZZZXVVeebbb_QSSSX^ecc@
Oops, something went wrong.

0 comments on commit d724cad

Please sign in to comment.