1 """Test wrappers around ucsc file formats
4 from unittest import TestCase
5 from htsworkflow.util.test import TEST_DATA_DIR
6 from htsworkflow.util.ucsc import bigWigInfo
8 from distutils.spawn import find_executable
10 class TestUCSC(TestCase):
11 def test_bigwig_info(self):
12 if not find_executable('bigWigInfo'):
13 self.skipTest('Need bigWigInfo on path to test')
15 filename = os.path.join(TEST_DATA_DIR, 'foo.bigWig')
16 info = bigWigInfo(filename)
17 self.assertEqual(info.version, 4)
18 self.assertEqual(info.isCompressed, True)
19 # what should i do for byteswapped arch?
20 self.assertEqual(info.isSwapped, False)
21 self.assertEqual(info.primaryDataSize, 48)
22 self.assertEqual(info.primaryIndexSize, 6204)
23 self.assertEqual(info.zoomLevels, 2)
24 self.assertEqual(info.basesCovered, 30)
25 self.assertAlmostEqual(info.mean, 0.0)
26 self.assertAlmostEqual(info.min, -5.5)
27 self.assertAlmostEqual(info.max, 5.5)
28 self.assertAlmostEqual(info.std, 4.567501)