google-research
43 строки · 1.3 Кб
1# coding=utf-8
2# Copyright 2024 The Google Research Authors.
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16import anndata17import numpy as np18import scipy.sparse19import tensorflow as tf20
21from schptm_benchmark import resize_bins_lib22
23
24def generate_dummy_data(binsize=1000):25test_x = scipy.sparse.csr_matrix(np.eye(10))26test_bins = [f'chr1:{i*binsize}-{(i+1)*binsize}' for i in range(0, 10)]27test_adata = anndata.AnnData(test_x)28test_adata.var_names = test_bins29return test_adata30
31
32class MergeBinsTest(tf.test.TestCase):33
34def test_proper_sum(self):35test_adata = generate_dummy_data(1000)36resized_adata = resize_bins_lib.merge_bins(test_adata, 2000)37
38self.assertAllEqual(39np.sum(test_adata.X, axis=1), np.sum(resized_adata.X, axis=1))40
41
42if __name__ == '__main__':43tf.test.main()44