]> git.donarmstrong.com Git - biopieces.git/commitdiff
worked on unit tests for sam.rb
authormartinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Tue, 23 Aug 2011 11:03:26 +0000 (11:03 +0000)
committermartinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Tue, 23 Aug 2011 11:03:26 +0000 (11:03 +0000)
git-svn-id: http://biopieces.googlecode.com/svn/trunk@1490 74ccb610-7750-0410-82ae-013aeee3265d

code_ruby/lib/maasha/sam.rb
code_ruby/test/maasha/test_sam.rb

index 4a6670d71df6990f46263ea3a3ed79eb53aacddd..67e950c082347425865b3745dc5cb8f2a4a5d95d 100644 (file)
@@ -1,3 +1,7 @@
+# Copyright (C) 2007-2011 Martin A. Hansen.
+
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
 # as published by the Free Software Foundation; either version 2
 # of the License, or (at your option) any later version.
 
index ee3c346cef31a0f98b0ad71bb4fa2da1a6a4e267..7410263976b2fc654930be0102b3a4b8f61d689a 100755 (executable)
@@ -200,10 +200,156 @@ class SamTest < Test::Unit::TestCase
     assert_nothing_raised { sam.each }
   end
 
-#  def test_Sam_each_with_bad_qname_raises
-#  end
+  def test_Sam_each_with_bad_qname_raises
+    sam = Sam.new(" \t*\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
 
-#  def test_Sam_each_with_ok_qname_dont_raise
-#  end
+  def test_Sam_each_with_ok_qname_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_bad_flag_raises
+    sam = Sam.new("*\t-1\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+
+    sam = Sam.new("*\t65536\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_flag_dont_raise
+    sam = Sam.new("*\t0\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t65535\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_rname_raises
+    sam = Sam.new("*\t*\t \t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_rname_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_pos_raises
+    sam = Sam.new("*\t*\t*\t-1\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+
+    sam = Sam.new("*\t*\t*\t536870912\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_pos_dont_raise
+    sam = Sam.new("*\t*\t*\t0\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t*\t*\t536870911\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_mapq_raises
+    sam = Sam.new("*\t*\t*\t*\t-1\t*\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t256\t*\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_mapq_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t0\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t255\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_cigar_raises
+    sam = Sam.new("*\t*\t*\t*\t*\t24\t*\t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_cigar_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t*\t24M2I3D\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_rnext_raises
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t \t*\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_rnext_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t=\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t!\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_pnext_raises
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t-1\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t536870912\t*\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_pnext_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t0\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t536870911\t*\t*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_tlen_raises
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t-536870912\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t536870912\t*\t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_tlen_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t-536870911\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t536870911\t*\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_seq_raises
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t\*\t \t*\n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_seq_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t\*\t*\t*\n")
+    assert_nothing_raised { sam.each }
+
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t\*\tATCGatcg=.\t*\n")
+    assert_nothing_raised { sam.each }
+  end
+
+  def test_Sam_each_with_bad_qual_raises
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t\*\t*\t \n")
+    assert_raise(SamError) { sam.each }
+  end
+
+  def test_Sam_each_with_ok_qual_dont_raise
+    sam = Sam.new("*\t*\t*\t*\t*\t*\t*\t*\t\*\t*\t@\n")
+    assert_nothing_raised(SamError) { sam.each }
+  end
 end