def test_sampletab_load_dump_round_trip_GSB_537(self): with open(os.path.join(self._sampletab_data_dir, 'GSB-537.txt')) as fp: ISA = sampletab.load(fp) # load into ISA objects with open(os.path.join(self._tmp_dir, "out.txt"), "w") as out_fp: sampletab.dump(ISA, out_fp) # dump out to SampleTab from ISA objects with open(os.path.join(self._tmp_dir, "out.txt"), "r") as in_fp: ISA = sampletab.load(in_fp) # load into ISA objects again from dumped SampleTab and check contents self.assertEqual(len(ISA.studies), 1) sources = ISA.studies[0].sources samples = ISA.studies[0].samples self.assertEqual(len(sources), 4) self.assertEqual(len(samples), 80) self.assertEqual(len(ISA.studies[0].process_sequence), 8)
def convert(source_sampletab_fp, target_dir): """ Converter for ISA-JSON to SampleTab. :param source_sampletab_fp: File descriptor of input SampleTab file :param target_dir: Path to write out ISA-Tab files to """ ISA = sampletab.load(source_sampletab_fp) isatab.dump(ISA, target_dir)
def convert(source_sampletab_fp, target_json_fp): """ Converter for ISA-JSON to SampleTab. :param source_sampletab_fp: File descriptor of input SampleTab file :param target_json_fp: File descriptor to write output ISA JSON (must be writeable) """ ISA = sampletab.load(source_sampletab_fp) json.dump(ISA, fp=target_json_fp, cls=ISAJSONEncoder)
def test_sampletab_load_GSB_718(self): with open(os.path.join(self._sampletab_data_dir, 'GSB-718.txt')) as fp: ISA = sampletab.load(fp) self.assertEqual(len(ISA.studies), 1) sources = ISA.studies[0].sources samples = ISA.studies[0].samples self.assertEqual(len(sources), 51) self.assertEqual(len(samples), 2409) self.assertEqual(len(ISA.studies[0].process_sequence), 109)
def test_sampletab_load_GSB_3(self): with open(os.path.join(self._sampletab_data_dir, 'GSB-3.txt')) as fp: ISA = sampletab.load(fp) self.assertEqual(len(ISA.studies), 1) sources = ISA.studies[0].sources samples = ISA.studies[0].samples self.assertEqual(len(sources), 1157) self.assertEqual(len(samples), 3858) self.assertEqual(len(ISA.studies[0].process_sequence), 1747)
def test_sampletab_load_GSB_537(self): with open(os.path.join(self._sampletab_data_dir, 'GSB-537.txt')) as fp: ISA = sampletab.load(fp) self.assertEqual(len(ISA.studies), 1) sources = ISA.studies[0].materials['sources'] samples = ISA.studies[0].materials['samples'] self.assertEqual(len(sources), 4) self.assertEqual(len(samples), 80) self.assertEqual(len(ISA.studies[0].process_sequence), 8)
def test_sampletab_load_test1(self): with open(os.path.join(self._sampletab_data_dir, 'test1.txt')) as fp: ISA = sampletab.load(fp) self.assertEqual(len(ISA.studies), 1) sources = ISA.studies[0].sources samples = ISA.studies[0].samples self.assertEqual(len(sources), 1) self.assertEqual(len(samples), 1) process = ISA.studies[0].process_sequence[0] for source in sources: self.assertIn(source, process.inputs) for sample in samples: self.assertIn(sample, process.outputs)