diff test/test_match_library.py @ 0:dffc38727496

initial commit
author pieter.lukasse@wur.nl
date Sat, 07 Feb 2015 22:02:00 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/test_match_library.py	Sat Feb 07 22:02:00 2015 +0100
@@ -0,0 +1,51 @@
+'''
+Created on Mar 6, 2012
+
+@author: marcelk
+'''
+from GCMS import match_library
+import unittest
+from pkg_resources import resource_filename  # @UnresolvedImport # pylint: disable=E0611
+
+
+class Test(unittest.TestCase):
+    '''
+    Tests the 'match_library' Galaxy tool
+    '''
+    nist_db = resource_filename(__name__, "data/RIDB_subset.txt")
+
+    def test_get_column_type(self):
+        '''
+        Tests the 'get_column_type' function that returns tuples of unique elements
+        for column types in the RI database
+        '''
+        galaxy_output = match_library.get_column_type(self.nist_db)
+        self.assertEqual([('Capillary(9999)', 'Capillary', False)], galaxy_output)
+
+    def test_filter_column(self):
+        '''
+        Tests the 'filter_column' function showing the column phase for all 'Capillary' columns
+        '''
+        galaxy_output = match_library.filter_column(self.nist_db, 'Capillary')
+        self.assertEqual([('Semi-standard non-polar(9999)', 'Semi-standard non-polar', False)], galaxy_output)
+
+    def test_filter_column2(self):
+        '''
+        Tests the 'filter_column' function showing all possibilities for columns having both the
+        'Capillary' and 'Semi-standard non-polar' properties
+        '''
+        galaxy_output = match_library.filter_column2(self.nist_db, 'Capillary', 'Semi-standard non-polar')
+        self.failUnless(('Apiezon M(6)', 'Apiezon M', False) in galaxy_output)
+
+    def test_count_occurrence(self):
+        '''
+        Tests the 'count_occurrence' function
+        '''
+        test_list = [2, 0, 0, 2, 1, 3, 4, 5, 3, 2, 3, 4, 5, 5, 4, 2, 5, 3, 4, 3, 5, 4, 2, 0, 4]
+        counts = match_library.count_occurrence(test_list)
+        self.assertEqual({0: 3, 1: 1, 2: 5, 3: 5, 4: 6, 5: 5}, counts)
+
+
+if __name__ == "__main__":
+    #import sys;sys.argv = ['', 'Test.testName']
+    unittest.main()