From 51030e4f7ae39918ee3d7a3c697a17addb7b6a77 Mon Sep 17 00:00:00 2001
From: Tobias Schmidt <tobias.schmidt@unibas.ch>
Date: Wed, 13 Jul 2011 14:29:21 +0200
Subject: [PATCH] add missing weight matrix test file

---
 modules/seq/alg/tests/test_weight_matrix.py | 45 +++++++++++++++++++++
 1 file changed, 45 insertions(+)
 create mode 100644 modules/seq/alg/tests/test_weight_matrix.py

diff --git a/modules/seq/alg/tests/test_weight_matrix.py b/modules/seq/alg/tests/test_weight_matrix.py
new file mode 100644
index 000000000..7d85996fb
--- /dev/null
+++ b/modules/seq/alg/tests/test_weight_matrix.py
@@ -0,0 +1,45 @@
+import unittest
+from ost import *
+from ost import settings
+from ost import seq
+
+class TestWeightMatrix(unittest.TestCase):
+  
+  def test_GetWeight(self):
+    mat = seq.alg.BLOSUM62
+    self.assertEqual(mat.GetWeight('A', 'A'), 4)
+    self.assertEqual(mat.GetWeight('A', 'B'), -2)
+    self.assertEqual(mat.GetWeight('a', 'A'), 4)
+    self.assertEqual(mat.GetWeight('A', 'b'), -2)
+    self.assertEqual(mat.GetWeight('A', '?'), 0)
+    self.assertEqual(mat.GetWeight('E', '?'), 0)
+    self.assertEqual(mat.GetWeight('Y', '?'), 0)
+    self.assertEqual(mat.GetWeight('?', 'A'), 0)
+    self.assertEqual(mat.GetWeight('?', 'E'), 0)
+    self.assertEqual(mat.GetWeight('?', 'Y'), 0)
+    self.assertEqual(mat.GetWeight('?', 'y'), 0)
+    
+    
+  def test_SetWeight(self):
+    mat = seq.alg.BLOSUM62
+    self.assertEqual(mat.GetWeight('A', 'A'), 4)
+    mat.SetWeight('A', 'A', -1)
+    self.assertEqual(mat.GetWeight('A', 'A'), -1)
+    
+    self.assertEqual(mat.GetWeight('A', 'B'), -2)
+    mat.SetWeight('A', 'B', 10)
+    self.assertEqual(mat.GetWeight('A', 'B'), 10)
+    
+    self.assertEqual(mat.GetWeight('E', '?'), 0)
+    mat.SetWeight('E', '?', 10)
+    self.assertEqual(mat.GetWeight('E', '?'), 0)
+    
+    self.assertEqual(mat.GetWeight('?', 'E'), 0)
+    mat.SetWeight('?', 'E', 10)
+    self.assertEqual(mat.GetWeight('?', 'E'), 0)
+
+if __name__ == "__main__":
+  try:
+    unittest.main()
+  except Exception, e:
+    print e
-- 
GitLab