### Question:
VcfGenotypeData extends AbstractRandomAccessGenotypeData implements SampleVariantsProvider { @Override public List<Boolean> getSamplePhasing(GeneticVariant variant) { VcfRecord vcfRecord = getVcfRecord(variant); final int nrSamples = vcfRecord.getNrSamples(); if (nrSamples == 0) { return Collections.emptyList(); } List<Boolean> phasing = new ArrayList<>(nrSamples); for (VcfSample vcfSample : vcfRecord.getSamples()) { List<Boolean> genotypePhasings = vcfSample.getPhasings(); if (genotypePhasings == null || genotypePhasings.isEmpty()) { phasing.add(Boolean.FALSE); } else if (genotypePhasings.size() == 1) { phasing.add(genotypePhasings.get(0)); } else if (genotypePhasings.contains(Boolean.FALSE)) { phasing.add(Boolean.FALSE); } else { phasing.add(Boolean.TRUE); } } return phasing; } VcfGenotypeData(File bzipVcfFile, int cacheSize, double minimumPosteriorProbabilityToCall);  VcfGenotypeData(File bzipVcfFile, File tabixIndexFile, double minimumPosteriorProbabilityToCall);  VcfGenotypeData(File bzipVcfFile, File tabixIndexFile, int cacheSize, double minimumPosteriorProbabilityToCall); @Override Iterator<GeneticVariant> iterator(); @Override List<Alleles> getSampleVariants(final GeneticVariant variant); @Override Map<String, Annotation> getVariantAnnotationsMap(); @Override List<Sequence> getSequences(); @Override List<Sample> getSamples(); @Override int cacheSize(); @Override List<Boolean> getSamplePhasing(GeneticVariant variant); @Override boolean arePhasedProbabilitiesPresent(GeneticVariant variant); @Override int getSampleVariantProviderUniqueId(); @Override Map<String, SampleAnnotation> getSampleAnnotationsMap(); @Override byte[] getSampleCalledDosage(GeneticVariant variant); @Override float[] getSampleDosage(GeneticVariant variant); @Override void close(); @Override boolean isOnlyContaingSaveProbabilityGenotypes(); @Override float[][] getSampleProbilities(GeneticVariant variant); @Override double[][] getSampleProbabilitiesComplex(GeneticVariant variant); @Override double[][][] getSampleProbabilitiesPhased(GeneticVariant variant); @Override FixedSizeIterable<GenotypeRecord> getSampleGenotypeRecords(GeneticVariant variant); @Override List<String> getSeqNames(); @Override Iterable<GeneticVariant> getSequenceGeneticVariants(String seqName); @Override Iterable<GeneticVariant> getVariantsByPos(final String seqName, final int startPos); @Override GeneticVariant getSnpVariantByPos(String seqName, int startPos); @Override Iterable<GeneticVariant> getVariantsByRange(final String seqName, final int rangeStart, final int rangeEnd); MappedGenotypeField getPreferredGenotypeField(); void setPreferredGenotypeField(String preferredGenotypeField);  }### Answer:
@Test public void testGetSamplePhasing() { GeneticVariant variant = genotypeData.getVariantsByPos("1", 565286).iterator().next(); assertEquals(genotypeData.getSamplePhasing(variant), Arrays.asList(false)); }