def test_invalid_only_call(self, num_calls): calls = [ variants_pb2.VariantCall(call_set_name=str(x)) for x in range(num_calls) ] variant = variants_pb2.Variant(calls=calls) with self.assertRaisesRegexp(ValueError, 'Expected exactly one VariantCall'): variant_utils.only_call(variant)
def test_modify_only_call(self): variant = variants_pb2.Variant(calls=[variants_pb2.VariantCall()]) call = variant_utils.only_call(variant) call.call_set_name = 'name' call.genotype[:] = [0, 1] self.assertLen(variant.calls, 1) self.assertEqual(variant.calls[0].call_set_name, 'name') self.assertEqual(variant.calls[0].genotype, [0, 1])
def test_only_call(self): expected = variants_pb2.VariantCall(call_set_name='name', genotype=[0, 1]) variant = variants_pb2.Variant(calls=[expected]) actual = variant_utils.only_call(variant) self.assertEqual(actual, expected)