@Test
public void testReassignGeneToMostPhenotypicallySimilarGeneInAnnotationsMissenseAnnotationsAreNotReassigned() {

    Stream<VariantContext> variantContext = TestVcfParser
            .forSamples("Adam", "Eve")
            .parseVariantContext("1 145510730 . T C,A 123.15 PASS GENE=GNRHR2 GT 1/1 0/2");
    VariantFactory variantFactory = TestFactory.buildDefaultVariantFactory();
    List<VariantEvaluation> variants = variantFactory.createVariantEvaluations(variantContext).collect(toList());
    Gene GNRHR2 = TestFactory.newGeneGNRHR2();
    allGenes.put(GNRHR2.getGeneSymbol(), GNRHR2);
    TopologicalDomain unimportantForThisTestTad = makeTad(1, 1, 20000, gene1, gene2);
    instance = makeInstance(PriorityType.HIPHIVE_PRIORITY, unimportantForThisTestTad);
    variants.forEach(variantEvaluation -> {
        logger.info("{} {}:{} {} {} {} {}", variantEvaluation.getGeneSymbol(), variantEvaluation.getChromosome(), variantEvaluation
                .getPosition(), variantEvaluation.getRef(), variantEvaluation.getAlt(), variantEvaluation.getVariantEffect(), variantEvaluation
                .getTranscriptAnnotations()
                .size());
        VariantEffect originalVariantEffect = VariantEffect.MISSENSE_VARIANT;
        List<TranscriptAnnotation> originalAnnotations = new ArrayList<>(variantEvaluation.getTranscriptAnnotations());
        assertThat(variantEvaluation, isAssignedTo(GNRHR2));
        assertThat(variantEvaluation.getVariantEffect(), equalTo(originalVariantEffect));
        assertThat(variantEvaluation.getTranscriptAnnotations(), equalTo(originalAnnotations));
        instance.reassignGeneToMostPhenotypicallySimilarGeneInAnnotations(variantEvaluation);
        assertThat(variantEvaluation, isAssignedTo(GNRHR2));
        assertThat(variantEvaluation.getVariantEffect(), equalTo(originalVariantEffect));
        assertThat(variantEvaluation.getTranscriptAnnotations(), equalTo(originalAnnotations));
    });
}