コード例 #1
0
    def test_make_control_report(self):
        """
        Test that the report gets written proppa
        """
        cmph5 = os.path.join(self.DATA_DIR, 'control_reads.cmp.h5')
        csv = os.path.join(self.DATA_DIR, 'filtered_summary.csv')
        make_control_report(cmph5, csv, 'foo.json', self._output_dir, 60,
                            False)

        # deserialize report
        s = None
        with open(os.path.join(self._output_dir, 'foo.json'), 'r') as f:
            s = json.load(f)

        report = dict_to_report(s)
        self.assertEqual(7, len(report.attributes))

        for i in range(2):
            pg = report.plotGroups[i]
            self.assertFalse(os.path.isabs(pg.thumbnail))
            self.assertTrue(
                os.path.exists(os.path.join(self._output_dir, pg.thumbnail)))
            p = pg.plots[0]
            self.assertFalse(os.path.isabs(p.image))
            self.assertTrue(
                os.path.exists(os.path.join(self._output_dir, p.image)))
コード例 #2
0
    def test_make_control_report(self):
        """
        Test that the report gets written proppa
        """
        cmph5 = os.path.join(self.DATA_DIR, 'control_reads.cmp.h5')
        csv = os.path.join(self.DATA_DIR, 'filtered_summary.csv')
        make_control_report(cmph5, csv, 'foo.json',
                            self._output_dir, 60, False)

        # deserialize report
        s = None
        with open(os.path.join(self._output_dir, 'foo.json'), 'r') as f:
            s = json.load(f)

        report = dict_to_report(s)
        validate_report_complete(self, report)
        self.assertEqual(7, len(report.attributes))

        for i in range(2):
            pg = report.plotGroups[i]
            self.assertFalse(os.path.isabs(pg.thumbnail))
            self.assertTrue(os.path.exists(
                os.path.join(self._output_dir, pg.thumbnail)))
            p = pg.plots[0]
            self.assertFalse(os.path.isabs(p.image))
            self.assertTrue(os.path.exists(
                os.path.join(self._output_dir, p.image)))
コード例 #3
0
 def test_make_coverage_report_none_csv(self):
     """
     csv cannot be null
     """
     cmph5 = os.path.join(self.DATA_DIR, 'control_reads.cmp.h5')
     with self.assertRaises(PbReportError):
         make_control_report(cmph5, None, 'foo.json',
                             self._output_dir, '1', False)
コード例 #4
0
 def test_make_coverage_report_no_cmp_h5(self):
     """
     cmp.h5 must exist
     """
     csv = os.path.join(self.DATA_DIR, 'filtered_summary.csv')
     with self.assertRaises(IOError):
         make_control_report('foo', csv, 'foo.json',
                             self._output_dir, '1', False)
コード例 #5
0
 def test_make_coverage_report_none_cmp_h5(self):
     """
     cmp.h5 cannot be null
     """
     csv = os.path.join(self.DATA_DIR, 'filtered_summary.csv')
     with self.assertRaises(PbReportError):
         make_control_report(None, csv, 'foo.json',
                             self._output_dir, '1', False)
コード例 #6
0
 def test_make_coverage_report_no_csv(self):
     """
     csv must exist
     """
     cmph5 = os.path.join(self.DATA_DIR, 'control_reads.cmp.h5')
     with self.assertRaises(IOError):
         make_control_report(cmph5, 'foo', 'foo.json',
                             self._output_dir, '1', False)
コード例 #7
0
 def test_make_coverage_report_none_csv(self):
     """
     csv cannot be null
     """
     cmph5 = os.path.join(self.DATA_DIR, 'control_reads.cmp.h5')
     with self.assertRaises(PbReportError):
         make_control_report(cmph5, None, 'foo.json', self._output_dir, '1',
                             False)
コード例 #8
0
 def test_make_coverage_report_no_cmp_h5(self):
     """
     cmp.h5 must exist
     """
     csv = os.path.join(self.DATA_DIR, 'filtered_summary.csv')
     with self.assertRaises(IOError):
         make_control_report('foo', csv, 'foo.json', self._output_dir, '1',
                             False)
コード例 #9
0
 def test_make_coverage_report_none_cmp_h5(self):
     """
     cmp.h5 cannot be null
     """
     csv = os.path.join(self.DATA_DIR, 'filtered_summary.csv')
     with self.assertRaises(PbReportError):
         make_control_report(None, csv, 'foo.json', self._output_dir, '1',
                             False)
コード例 #10
0
 def test_make_coverage_report_no_csv(self):
     """
     csv must exist
     """
     cmph5 = os.path.join(self.DATA_DIR, 'control_reads.cmp.h5')
     with self.assertRaises(IOError):
         make_control_report(cmph5, 'foo', 'foo.json', self._output_dir,
                             '1', False)
コード例 #11
0
    def _create_control_report(self):
        """
        Creates and returns a Control Report
        """
        from pbreports.report.control import make_control_report

        datadir = os.path.join(ROOT_DATA_DIR, 'control')
        log.info('Creating Control report using datadir {d}'.format(d=datadir))

        cmph5 = os.path.join(datadir, 'control_reads.cmp.h5')
        csv = os.path.join(datadir, 'filtered_summary.csv')
        report_json = 'control.json'
        output_json = os.path.join(self._output_dir, report_json)
        dpi = 60
        dumpdata = False
        make_control_report(cmph5, csv, report_json, self._output_dir, dpi,
                            dumpdata)
        return self._deserialize_report(output_json)
コード例 #12
0
    def _create_control_report(self):
        """
        Creates and returns a Control Report
        """
        from pbreports.report.control import make_control_report

        datadir = os.path.join(ROOT_DATA_DIR, 'control')
        log.info('Creating Control report using datadir {d}'.format(d=datadir))

        cmph5 = os.path.join(datadir, 'control_reads.cmp.h5')
        csv = os.path.join(datadir, 'filtered_summary.csv')
        report_json = 'control.json'
        output_json = os.path.join(self._output_dir, report_json)
        dpi = 60
        dumpdata = False
        make_control_report(
            cmph5, csv, report_json, self._output_dir, dpi, dumpdata)
        return self._deserialize_report(output_json)
コード例 #13
0
ファイル: subparsers.py プロジェクト: skinner/pbreports
 def run_report(args):
      return make_control_report(args.cntrCmpH5, args.csv,
                             args.report, args.output, args.dpi, args.dumpdata)