From b5ff429fe5afe30aae090e313b015c29039027c1 Mon Sep 17 00:00:00 2001 From: martinahansen Date: Tue, 23 Aug 2011 11:03:26 +0000 Subject: [PATCH] worked on unit tests for sam.rb git-svn-id: http://biopieces.googlecode.com/svn/trunk@1490 74ccb610-7750-0410-82ae-013aeee3265d --- code_ruby/lib/maasha/sam.rb | 4 + code_ruby/test/maasha/test_sam.rb | 154 +++++++++++++++++++++++++++++- 2 files changed, 154 insertions(+), 4 deletions(-) diff --git a/code_ruby/lib/maasha/sam.rb b/code_ruby/lib/maasha/sam.rb index 4a6670d..67e950c 100644 --- a/code_ruby/lib/maasha/sam.rb +++ b/code_ruby/lib/maasha/sam.rb @@ -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. diff --git a/code_ruby/test/maasha/test_sam.rb b/code_ruby/test/maasha/test_sam.rb index ee3c346..7410263 100755 --- a/code_ruby/test/maasha/test_sam.rb +++ b/code_ruby/test/maasha/test_sam.rb @@ -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 -- 2.39.2