Sha256: 311f6be62c2687713e8f5f865ccb8fb2dd27a308e4ad388c15000e8f7acfd4a1

Contents?: true

Size: 1.32 KB

Versions: 7

Compression:

Stored size: 1.32 KB

Contents

#!/usr/bin/env ruby

def install_from_source
  system 'rake install'
end

def test_with(fa, db)
  # Only FASTA.
  run "rm -r #{fa}.html",
      "genevalidator -d #{db} #{fa}"

  # With BLAST XML.
  run "rm -r #{fa}.html",
      "genevalidator -d #{db} #{fa} -x #{fa}.blast_xml"

  # With BLAST TSV.
  run "rm -r #{fa}.html",
      "genevalidator -d #{db} #{fa} -x #{fa}.blast_tabular"

  # With BLAST XML and hit sequences.
  run "rm -r #{fa}.html",
      "genevalidator -d #{db} #{fa} -x #{fa}.blast_xml" \
      " -r #{fa}.blast_xml.raw_seq"

  # With BLAST TSV and hit sequences.
  run "rm -r #{fa}.html",
      "genevalidator -d #{db} #{fa} -x #{fa}.blast_tabular" \
      " -r #{fa}.blast_tabular.raw_seq"

  # Retrieving hit sequences given BLAST XML.
  run "genevalidator -d #{db} -e #{fa}.blast_xml"

  # Retrieving hit sequences given BLAST TSV.
  run "genevalidator -d #{db} -e #{fa}.blast_tabular"
end

def run(*cmds)
  puts 'Will run:'
  puts cmds.join("\n")
  print 'Proceed? [Y/n/q]: '

  input = gets.chomp.downcase
  input = 'y' if input.empty?

  case input
  when 'y' then cmds.each { |cmd| system(cmd) || exit }
  when 'n' then return
  when 'q' then exit
  else
    puts "\nInvalid input.\n"
    run(*cmds)
  end
end

db = ENV['db'] || 'swissprot -remote'
%w(data/protein_data.fasta data/mrna_data.fasta).each { |fa| test_with fa, db }

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
genevalidator-1.6.12 test/overall.rb
genevalidator-1.6.11 test/overall.rb
genevalidator-1.6.10 test/overall.rb
genevalidator-1.6.9 test/overall.rb
genevalidator-1.6.8 test/overall.rb
genevalidator-1.6.6 test/overall.rb
genevalidator-1.6.5 test/overall.rb