# # test/unit/bio/db/kegg/test_glycan.rb - Unit test for Bio::KEGG::GLYCAN # # Copyright:: Copyright (C) 2009 Naohisa Goto # License:: The Ruby License # # loading helper routine for testing bioruby require 'pathname' load Pathname.new(File.join(File.dirname(__FILE__), ['..'] * 4, 'bioruby_test_helper.rb')).cleanpath.to_s # libraries needed for the tests require 'test/unit' require 'bio/db/kegg/glycan' module Bio class TestBioKeggGLYCAN < Test::Unit::TestCase def setup filename = File.join(BioRubyTestDataPath, 'KEGG/G00024.glycan') @obj = Bio::KEGG::GLYCAN.new(File.read(filename)) end def test_dblinks_as_hash expected = { "JCGGDB"=>["JCGG-STR025711"], "GlycomeDB"=>["475"], "CCSD" => %w( 98 99 100 2225 2236 2237 2238 2239 2240 2241 2242 2243 3406 5035 5038 5887 14321 18613 25363 27572 28182 29046 29092 29175 29393 29521 29554 30734 30735 30848 30849 30850 30917 32646 33022 33851 33878 33952 34823 34829 34986 34995 35029 35050 35107 35108 35805 35833 35991 36236 36826 36863 37982 38587 38640 38672 42797 43915 44029 44775 45346 46438 46466 47186 48015 48891 49283 49293 50466 50469 50477 ) } assert_equal(expected, @obj.dblinks_as_hash) assert_equal(expected, @obj.dblinks) end def test_pathways_as_hash expected = { "ko01100" => "Metabolic pathways", "ko00512" => "O-Glycan biosynthesis" } assert_equal(expected, @obj.pathways_as_hash) assert_equal(expected, @obj.pathways) end def test_orthologs_as_hash expected = { "K00780" => "beta-galactoside alpha-2,3-sialyltransferase (sialyltransferase 4A) [EC:2.4.99.4]", "K00727" => "beta-1,3-galactosyl-O-glycosyl-glycoprotein beta-1,6-N-acetylglucosaminyltransferase [EC:2.4.1.102]", "K03368" => "beta-galactoside alpha-2,3-sialyltransferase (sialyltransferase 4B) [EC:2.4.99.4]", "K00731" => "glycoprotein-N-acetylgalactosamine 3-beta-galactosyltransferase [EC:2.4.1.122]" } assert_equal(expected, @obj.orthologs_as_hash) assert_equal(expected, @obj.orthologs) end def test_entry_id assert_equal("G00024", @obj.entry_id) end def test_name assert_equal("T antigen", @obj.name) end def test_composition expected = {"Ser/Thr"=>1, "Gal"=>1, "GalNAc"=>1} assert_equal(expected, @obj.composition) end def test_mass assert_equal(365.3, @obj.mass) end def test_keggclass expected = "Glycoprotein; O-Glycan Neoglycoconjugate" assert_equal(expected, @obj.keggclass) end def test_compounds assert_equal([], @obj.compounds) end def test_reactions expected = ["R05908", "R05912", "R05913", "R06140"] assert_equal(expected, @obj.reactions) end def test_pathways_as_strings expected = [ "PATH: ko00512 O-Glycan biosynthesis", "PATH: ko01100 Metabolic pathways" ] assert_equal(expected, @obj.pathways_as_strings) end def test_enzymes expected = ["2.4.1.102", "2.4.1.122", "2.4.99.4", "3.2.1.97"] assert_equal(expected, @obj.enzymes) end def test_orthologs_as_strings expected = [ "KO: K00727 beta-1,3-galactosyl-O-glycosyl-glycoprotein beta-1,6-N-acetylglucosaminyltransferase [EC:2.4.1.102]", "KO: K00731 glycoprotein-N-acetylgalactosamine 3-beta-galactosyltransferase [EC:2.4.1.122]", "KO: K00780 beta-galactoside alpha-2,3-sialyltransferase (sialyltransferase 4A) [EC:2.4.99.4]", "KO: K03368 beta-galactoside alpha-2,3-sialyltransferase (sialyltransferase 4B) [EC:2.4.99.4]" ] assert_equal(expected, @obj.orthologs_as_strings) end def test_comment assert_equal("", @obj.comment) end def test_remark assert_equal("Same as: C04750 C04776", @obj.remark) end def test_references expected = [ "1 [PMID:12950230] Backstrom M, Link T, Olson FJ, Karlsson H, Graham R, Picco G, Burchell J, Taylor-Papadimitriou J, Noll T, Hansson GC. Recombinant MUC1 mucin with a breast cancer-like O-glycosylation produced in large amounts in Chinese-hamster ovary cells. Biochem. J. 376 (2003) 677-86.", "2 [PMID:14631106] Wu AM. Carbohydrate structural units in glycoproteins and polysaccharides as important ligands for Gal and GalNAc reactive lectins. J. Biomed. Sci. 10 (2003) 676-88." ] assert_equal(expected, @obj.references) end def test_dblinks_as_strings expected = [ "CCSD: 98 99 100 2225 2236 2237 2238 2239 2240 2241 2242 2243 3406 5035 5038 5887 14321 18613 25363 27572 28182 29046 29092 29175 29393 29521 29554 30734 30735 30848 30849 30850 30917 32646 33022 33851 33878 33952 34823 34829 34986 34995 35029 35050 35107 35108 35805 35833 35991 36236 36826 36863 37982 38587 38640 38672 42797 43915 44029 44775 45346 46438 46466 47186 48015 48891 49283 49293 50466 50469 50477", "GlycomeDB: 475", "JCGGDB: JCGG-STR025711" ] assert_equal(expected, @obj.dblinks_as_strings) end def test_kcf expected = <["JCGG-STR026574"], "GlycomeDB"=>["5567"], "CCSD"=>["2549", "2550", "16559", "25204"] } assert_equal(expected, @obj.dblinks_as_hash) assert_equal(expected, @obj.dblinks) end def test_pathways_as_hash assert_equal({}, @obj.pathways_as_hash) assert_equal({}, @obj.pathways) end def test_orthologs_as_hash assert_equal({}, @obj.orthologs_as_hash) assert_equal({}, @obj.orthologs) end def test_entry_id assert_equal("G01366", @obj.entry_id) end def test_name assert_equal("", @obj.name) end def test_composition expected = {"GlcNAc"=>1, "4dlyxHex"=>1, "Man"=>2} assert_equal(expected, @obj.composition) end def test_mass assert_equal(691.6, @obj.mass) end def test_keggclass expected = "Glycoprotein; N-Glycan" assert_equal(expected, @obj.keggclass) end def test_compounds assert_equal([], @obj.compounds) end def test_reactions assert_equal([], @obj.reactions) end def test_pathways_as_strings assert_equal([], @obj.pathways_as_strings) end def test_enzymes assert_equal([], @obj.enzymes) end def test_orthologs_as_strings assert_equal([], @obj.orthologs_as_strings) end def test_comment expected = "synthetic (CCSD:2549)" assert_equal(expected, @obj.comment) end def test_remark assert_equal("", @obj.remark) end def test_references assert_equal([], @obj.references) end def test_dblinks_as_strings expected = [ "CCSD: 2549 2550 16559 25204", "GlycomeDB: 5567", "JCGGDB: JCGG-STR026574" ] assert_equal(expected, @obj.dblinks_as_strings) end def test_kcf expected = <