@@ -33,6 +33,46 @@ def are_files_equal(file1, file2, delta=2, skip=0):
3333 return equal
3434
3535
36+ def test_target_list ():
37+ outfile_aggregate = NamedTemporaryFile (suffix = '.hdf5' , delete = False )
38+ outfile_aggregate .close ()
39+ args = "--interactionFile {} --targetFile {} --outFileName {} \
40+ -t {}" .format (ROOT + 'chicViewpoint/two_matrices.hdf5' ,
41+ ROOT + 'chicAggregateStatistic/target_list_3col.bed' ,
42+ outfile_aggregate .name , 10 ).split ()
43+ chicAggregateStatistic .main (args )
44+
45+ aggregateFileH5Object = h5py .File (outfile_aggregate .name , 'r' )
46+ assert 'FL-E13-5_chr1_MB-E10-5_chr1' in aggregateFileH5Object
47+ assert 'FL-E13-5_chr1' in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]
48+ assert 'MB-E10-5_chr1' in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]
49+
50+ assert 'genes' in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['FL-E13-5_chr1' ]
51+ assert 'genes' in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['MB-E10-5_chr1' ]
52+ assert len (aggregateFileH5Object ) == 1
53+ assert aggregateFileH5Object .attrs ['type' ] == 'aggregate'
54+
55+ for chromosome in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['FL-E13-5_chr1' ]:
56+
57+ assert len (aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['FL-E13-5_chr1' ][chromosome ]) == 3
58+
59+ for gene in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['FL-E13-5_chr1' ][chromosome ]:
60+ assert len (aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['FL-E13-5_chr1' ][chromosome ][gene ]) == 7
61+ for data in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['FL-E13-5_chr1' ][chromosome ][gene ]:
62+ assert data in ['chromosome' , 'end_list' , 'gene_name' , 'raw_target_list' , 'relative_distance_list' , 'start_list' , 'sum_of_interactions' ]
63+
64+ for chromosome in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['MB-E10-5_chr1' ]:
65+
66+ assert len (aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['MB-E10-5_chr1' ][chromosome ]) == 3
67+
68+ for gene in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['MB-E10-5_chr1' ][chromosome ]:
69+ assert len (aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['MB-E10-5_chr1' ][chromosome ][gene ]) == 7
70+ for data in aggregateFileH5Object ['FL-E13-5_chr1_MB-E10-5_chr1' ]['MB-E10-5_chr1' ][chromosome ][gene ]:
71+ assert data in ['chromosome' , 'end_list' , 'gene_name' , 'raw_target_list' , 'relative_distance_list' , 'start_list' , 'sum_of_interactions' ]
72+
73+ aggregateFileH5Object .close ()
74+
75+
3676def test_regular_mode ():
3777 outfile_aggregate = NamedTemporaryFile (suffix = '.hdf5' , delete = False )
3878 outfile_aggregate .close ()
0 commit comments