@parameterized.parameters([0, 10, 100, (0, 10)], [5, 10, 100, (5, 10)], [10, 10, 100, (10, 10)], [10, 100, 100, (10, 100)], [100, 100, 100, (100, 100)], [0, 200, 100, (0, 100)], [0, 200, 100, (0, 100)], [0, 1000, 100, (0, 100)], [0, 10000, 100, (0, 100)], [1, 200, 100, (1, 100)], [1, 1000, 100, (1, 100)], [1, 10000, 100, (1, 100)], [1, 100000, 100, (1, 100)], [2, 200, 100, (1, 100)], [3, 200, 100, (2, 100)], [4, 200, 100, (2, 100)], [10, 200, 100, (5, 100)], [50, 200, 100, (25, 100)], [100, 200, 100, (50, 100)], [200, 200, 100, (100, 100)], [99, 100, 100, (99, 100)])
def test_rescale_read_counts(self, n_ref, n_total, max_allowed_reads, expected):
    actual = variant_caller._rescale_read_counts_if_necessary(n_ref, n_total, max_allowed_reads)
    self.assertEqual(actual, expected)
@parameterized.parameters([0, 10, 100, (0, 10)], [5, 10, 100, (5, 10)], [10, 10, 100, (10, 10)], [10, 100, 100, (10, 100)], [100, 100, 100, (100, 100)], [0, 200, 100, (0, 100)], [0, 200, 100, (0, 100)], [0, 1000, 100, (0, 100)], [0, 10000, 100, (0, 100)], [1, 200, 100, (1, 100)], [1, 1000, 100, (1, 100)], [1, 10000, 100, (1, 100)], [1, 100000, 100, (1, 100)], [2, 200, 100, (1, 100)], [3, 200, 100, (2, 100)], [4, 200, 100, (2, 100)], [10, 200, 100, (5, 100)], [50, 200, 100, (25, 100)], [100, 200, 100, (50, 100)], [200, 200, 100, (100, 100)], [99, 100, 100, (99, 100)])
def test_rescale_read_counts(self, n_ref, n_total, max_allowed_reads, expected):
    actual = variant_caller._rescale_read_counts_if_necessary(n_ref, n_total, max_allowed_reads)
    self.assertEqual(actual, expected)