From 739415e65b422e64b854fbe8fdf5d38ae997e0c4 Mon Sep 17 00:00:00 2001 From: Frank Austin Nothaft Date: Sat, 9 Jul 2016 09:30:41 -0400 Subject: [PATCH] [ADAM-1040] Remove implicit GenomicRDD to RDD conversion. Resolves #1040. --- .../org/bdgenomics/adam/cli/ADAM2Fasta.scala | 2 +- .../org/bdgenomics/adam/cli/AlleleCount.scala | 4 +- .../org/bdgenomics/adam/cli/PrintGenes.scala | 2 +- .../org/bdgenomics/adam/cli/Transform.scala | 6 +- .../org/bdgenomics/adam/cli/Vcf2ADAM.scala | 2 +- .../adam/cli/VcfAnnotation2ADAM.scala | 11 ++- .../scala/org/bdgenomics/adam/cli/View.scala | 2 +- .../bdgenomics/adam/cli/Fasta2ADAMSuite.scala | 4 +- .../adam/cli/Features2ADAMSuite.scala | 2 +- .../bdgenomics/adam/cli/FlagStatSuite.scala | 2 +- .../ConsensusGeneratorFromKnowns.scala | 2 +- .../bdgenomics/adam/models/IndelTable.scala | 2 +- .../org/bdgenomics/adam/rdd/ADAMContext.scala | 10 +- .../ConsensusGeneratorFromReadsSuite.scala | 2 +- .../adam/converters/FastaConverterSuite.scala | 2 +- .../bdgenomics/adam/models/GeneSuite.scala | 6 +- .../projections/FieldEnumerationSuite.scala | 4 +- .../adam/rdd/ADAMContextSuite.scala | 95 ++++++++++--------- .../rdd/GenomicPositionPartitionerSuite.scala | 2 +- .../NucleotideContigFragmentRDDSuite.scala | 12 +-- .../adam/rdd/features/FeatureRDDSuite.scala | 12 +-- .../rdd/read/AlignmentRecordRDDSuite.scala | 30 +++--- .../read/realignment/RealignIndelsSuite.scala | 19 ++-- .../BaseQualityRecalibrationSuite.scala | 6 +- .../variation/VariantContextRDDSuite.scala | 2 +- 25 files changed, 126 insertions(+), 117 deletions(-) diff --git a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/ADAM2Fasta.scala b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/ADAM2Fasta.scala index 3d5cff96ea..183afe5272 100644 --- a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/ADAM2Fasta.scala +++ b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/ADAM2Fasta.scala @@ -56,7 +56,7 @@ class ADAM2Fasta(val args: ADAM2FastaArgs) extends BDGSparkCommand[ADAM2FastaArg val contigs = contigFragments.mergeFragments() val cc = if (args.coalesce > 0) { - if (args.coalesce > contigs.partitions.size || args.forceShuffle) { + if (args.coalesce > contigs.rdd.partitions.size || args.forceShuffle) { contigs.transform(_.coalesce(args.coalesce, shuffle = true)) } else { contigs.transform(_.coalesce(args.coalesce, shuffle = false)) diff --git a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/AlleleCount.scala b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/AlleleCount.scala index 49dab280e2..a65814fbab 100644 --- a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/AlleleCount.scala +++ b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/AlleleCount.scala @@ -53,8 +53,8 @@ object AlleleCountHelper extends Serializable { case _ => None } - def countAlleles(adamVariants: RDD[Genotype], args: AlleleCountArgs) { - val usefulData = adamVariants.map(p => ( + def countAlleles(adamVariants: GenotypeRDD, args: AlleleCountArgs) { + val usefulData = adamVariants.rdd.map(p => ( p.getVariant.getContigName, p.getVariant.getStart, p.getVariant.getReferenceAllele, diff --git a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/PrintGenes.scala b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/PrintGenes.scala index 2779aaa05d..a7c4072f36 100644 --- a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/PrintGenes.scala +++ b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/PrintGenes.scala @@ -46,7 +46,7 @@ class PrintGenes(protected val args: PrintGenesArgs) val companion = PrintGenes def run(sc: SparkContext): Unit = { - val genes: RDD[Gene] = sc.loadGenes(args.gtfInput) + val genes: RDD[Gene] = sc.loadGenes(args.gtfInput).rdd genes.map(printGene).collect().foreach(println) } diff --git a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/Transform.scala b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/Transform.scala index 8a41dbcd22..f50035e16a 100644 --- a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/Transform.scala +++ b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/Transform.scala @@ -127,7 +127,7 @@ class Transform(protected val args: TransformArgs) extends BDGSparkCommand[Trans def apply(rdd: AlignmentRecordRDD): AlignmentRecordRDD = { var adamRecords = rdd - val sc = rdd.context + val sc = rdd.rdd.context val sl = StorageLevel.fromString(args.storageLevel) val stringencyOpt = Option(args.stringency).map(ValidationStringency.valueOf(_)) @@ -192,7 +192,7 @@ class Transform(protected val args: TransformArgs) extends BDGSparkCommand[Trans if (args.coalesce != -1) { log.info("Coalescing the number of partitions to '%d'".format(args.coalesce)) - if (args.coalesce > adamRecords.partitions.size || args.forceShuffle) { + if (args.coalesce > adamRecords.rdd.partitions.size || args.forceShuffle) { adamRecords = adamRecords.transform(_.coalesce(args.coalesce, shuffle = true)) } else { adamRecords = adamRecords.transform(_.coalesce(args.coalesce, shuffle = false)) @@ -359,6 +359,6 @@ class Transform(protected val args: TransformArgs) extends BDGSparkCommand[Trans } private def createKnownSnpsTable(sc: SparkContext): SnpTable = CreateKnownSnpsTable.time { - Option(args.knownSnpsFile).fold(SnpTable())(f => SnpTable(sc.loadVariants(f).map(new RichVariant(_)))) + Option(args.knownSnpsFile).fold(SnpTable())(f => SnpTable(sc.loadVariants(f).rdd.map(new RichVariant(_)))) } } diff --git a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/Vcf2ADAM.scala b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/Vcf2ADAM.scala index 4f66a5b2f3..d80aa11922 100644 --- a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/Vcf2ADAM.scala +++ b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/Vcf2ADAM.scala @@ -67,7 +67,7 @@ class Vcf2ADAM(val args: Vcf2ADAMArgs) extends BDGSparkCommand[Vcf2ADAMArgs] wit val variantContextRdd = sc.loadVcf(args.vcfPath, sdOpt = dictionary) var variantContextsToSave = if (args.coalesce > 0) { - if (args.coalesce > variantContextRdd.partitions.size || args.forceShuffle) { + if (args.coalesce > variantContextRdd.rdd.partitions.size || args.forceShuffle) { variantContextRdd.transform(_.coalesce(args.coalesce, shuffle = true)) } else { variantContextRdd.transform(_.coalesce(args.coalesce, shuffle = false)) diff --git a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/VcfAnnotation2ADAM.scala b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/VcfAnnotation2ADAM.scala index e2f4246f4e..c933571fe4 100644 --- a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/VcfAnnotation2ADAM.scala +++ b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/VcfAnnotation2ADAM.scala @@ -22,6 +22,7 @@ import org.apache.spark.SparkContext import org.apache.spark.rdd.RDD import org.bdgenomics.adam.models.VariantContext import org.bdgenomics.adam.rdd.ADAMContext._ +import org.bdgenomics.adam.rdd.variation.DatabaseVariantAnnotationRDD import org.bdgenomics.adam.rich.RichVariant import org.bdgenomics.formats.avro._ import org.bdgenomics.utils.cli._ @@ -52,14 +53,14 @@ class VcfAnnotation2ADAM(val args: VcfAnnotation2ADAMArgs) extends BDGSparkComma def run(sc: SparkContext) { log.info("Reading VCF file from %s".format(args.vcfFile)) - val annotations: RDD[DatabaseVariantAnnotation] = sc.loadVcfAnnotations(args.vcfFile) + val annotations = sc.loadVcfAnnotations(args.vcfFile) if (args.currentAnnotations != null) { - val existingAnnotations: RDD[DatabaseVariantAnnotation] = sc.loadVariantAnnotations(args.currentAnnotations) - val keyedAnnotations = existingAnnotations.keyBy(anno => new RichVariant(anno.getVariant)) - val joinedAnnotations = keyedAnnotations.join(annotations.keyBy(anno => new RichVariant(anno.getVariant))) + val existingAnnotations = sc.loadVariantAnnotations(args.currentAnnotations) + val keyedAnnotations = existingAnnotations.rdd.keyBy(anno => new RichVariant(anno.getVariant)) + val joinedAnnotations = keyedAnnotations.join(annotations.rdd.keyBy(anno => new RichVariant(anno.getVariant))) val mergedAnnotations = joinedAnnotations.map(kv => VariantContext.mergeAnnotations(kv._2._1, kv._2._2)) - mergedAnnotations.saveAsParquet(args) + DatabaseVariantAnnotationRDD(mergedAnnotations, existingAnnotations.sequences).saveAsParquet(args) } else { annotations.saveAsParquet(args) } diff --git a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/View.scala b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/View.scala index 7c53e60a57..6d0cad9739 100644 --- a/adam-cli/src/main/scala/org/bdgenomics/adam/cli/View.scala +++ b/adam-cli/src/main/scala/org/bdgenomics/adam/cli/View.scala @@ -169,7 +169,7 @@ class View(val args: ViewArgs) extends BDGSparkCommand[ViewArgs] { reads.save(args) } else { if (args.printCount) { - println(reads.count()) + println(reads.rdd.count()) } else { println(reads.saveAsSamString()) } diff --git a/adam-cli/src/test/scala/org/bdgenomics/adam/cli/Fasta2ADAMSuite.scala b/adam-cli/src/test/scala/org/bdgenomics/adam/cli/Fasta2ADAMSuite.scala index 19e9062814..63acd27c47 100644 --- a/adam-cli/src/test/scala/org/bdgenomics/adam/cli/Fasta2ADAMSuite.scala +++ b/adam-cli/src/test/scala/org/bdgenomics/adam/cli/Fasta2ADAMSuite.scala @@ -28,8 +28,8 @@ class Fasta2ADAMSuite extends ADAMFunSuite { val cmd = Fasta2ADAM(Array(inputPath, convertPath)).run(sc) val contigFragments = sc.loadParquetContigFragments(convertPath) - assert(contigFragments.count() === 26) - val first = contigFragments.first() + assert(contigFragments.rdd.count() === 26) + val first = contigFragments.rdd.first() assert(first.getContig.getContigName === "gi|224384749|gb|CM000682.1|") assert(first.getDescription === "Homo sapiens chromosome 20, GRCh37 primary reference assembly") assert(first.getFragmentNumber === 0) diff --git a/adam-cli/src/test/scala/org/bdgenomics/adam/cli/Features2ADAMSuite.scala b/adam-cli/src/test/scala/org/bdgenomics/adam/cli/Features2ADAMSuite.scala index 31e4299974..12b35a717f 100644 --- a/adam-cli/src/test/scala/org/bdgenomics/adam/cli/Features2ADAMSuite.scala +++ b/adam-cli/src/test/scala/org/bdgenomics/adam/cli/Features2ADAMSuite.scala @@ -80,7 +80,7 @@ class Features2ADAMSuite extends ADAMFunSuite { val schema = Projection(featureId, contigName, start, end, score) val rdd = sc.loadFeatures(outputPath, projection = Some(schema)) - val converted = rdd.collect.toSeq.sortBy(f => f.getStart) + val converted = rdd.rdd.collect.toSeq.sortBy(f => f.getStart) assert(converted.size === 10) assert(converted(0).getContigName == "chr5") diff --git a/adam-cli/src/test/scala/org/bdgenomics/adam/cli/FlagStatSuite.scala b/adam-cli/src/test/scala/org/bdgenomics/adam/cli/FlagStatSuite.scala index 51def1469e..6368122d0b 100644 --- a/adam-cli/src/test/scala/org/bdgenomics/adam/cli/FlagStatSuite.scala +++ b/adam-cli/src/test/scala/org/bdgenomics/adam/cli/FlagStatSuite.scala @@ -50,7 +50,7 @@ class FlagStatSuite extends ADAMFunSuite { AlignmentRecordField.mapq, AlignmentRecordField.failedVendorQualityChecks) - val adamFile: RDD[AlignmentRecord] = sc.loadAlignments(args.inputPath, projection = Some(projection)) + val adamFile: RDD[AlignmentRecord] = sc.loadAlignments(args.inputPath, projection = Some(projection)).rdd val (failedVendorQuality, passedVendorQuality) = apply(adamFile) diff --git a/adam-core/src/main/scala/org/bdgenomics/adam/algorithms/consensus/ConsensusGeneratorFromKnowns.scala b/adam-core/src/main/scala/org/bdgenomics/adam/algorithms/consensus/ConsensusGeneratorFromKnowns.scala index ffb373112b..80cfa18938 100644 --- a/adam-core/src/main/scala/org/bdgenomics/adam/algorithms/consensus/ConsensusGeneratorFromKnowns.scala +++ b/adam-core/src/main/scala/org/bdgenomics/adam/algorithms/consensus/ConsensusGeneratorFromKnowns.scala @@ -48,7 +48,7 @@ private[adam] class ConsensusGeneratorFromKnowns(file: String, * @return Returns an option which wraps an RDD of indel realignment targets. */ def targetsToAdd(): Option[RDD[IndelRealignmentTarget]] = { - val rdd: RDD[Variant] = sc.loadVariants(file) + val rdd: RDD[Variant] = sc.loadVariants(file).rdd Some(rdd.filter(v => v.getReferenceAllele.length != v.getAlternateAllele.length) .map(v => ReferenceRegion(v.getContigName, v.getStart, v.getStart + v.getReferenceAllele.length)) diff --git a/adam-core/src/main/scala/org/bdgenomics/adam/models/IndelTable.scala b/adam-core/src/main/scala/org/bdgenomics/adam/models/IndelTable.scala index cbbf89433b..2b91fcaac2 100644 --- a/adam-core/src/main/scala/org/bdgenomics/adam/models/IndelTable.scala +++ b/adam-core/src/main/scala/org/bdgenomics/adam/models/IndelTable.scala @@ -58,7 +58,7 @@ private[adam] object IndelTable { * @return Returns a table with the known indels populated. */ def apply(knownIndelsFile: String, sc: SparkContext): IndelTable = { - val rdd: RDD[Variant] = sc.loadVariants(knownIndelsFile) + val rdd: RDD[Variant] = sc.loadVariants(knownIndelsFile).rdd apply(rdd) } diff --git a/adam-core/src/main/scala/org/bdgenomics/adam/rdd/ADAMContext.scala b/adam-core/src/main/scala/org/bdgenomics/adam/rdd/ADAMContext.scala index 0dc72401fc..f6bf4165d2 100644 --- a/adam-core/src/main/scala/org/bdgenomics/adam/rdd/ADAMContext.scala +++ b/adam-core/src/main/scala/org/bdgenomics/adam/rdd/ADAMContext.scala @@ -105,8 +105,6 @@ object ADAMContext { implicit def iterableToJavaCollection[A](i: Iterable[A]): java.util.Collection[A] = asJavaCollection(i) implicit def setToJavaSet[A](set: Set[A]): java.util.Set[A] = setAsJavaSet(set) - - implicit def genomicRDDToRDD[T, U <: GenomicRDD[T, U]](gRdd: GenomicRDD[T, U]): RDD[T] = gRdd.rdd } import org.bdgenomics.adam.rdd.ADAMContext._ @@ -558,8 +556,8 @@ class ADAMContext(@transient val sc: SparkContext) extends Serializable with Log stringency match { case ValidationStringency.STRICT | ValidationStringency.LENIENT => - val count1 = reads1.cache.count - val count2 = reads2.cache.count + val count1 = reads1.rdd.cache.count + val count2 = reads2.rdd.cache.count if (count1 != count2) { val msg = s"Fastq 1 ($filePath1) has $count1 reads, fastq 2 ($filePath2) has $count2 reads" @@ -573,7 +571,7 @@ class ADAMContext(@transient val sc: SparkContext) extends Serializable with Log case ValidationStringency.SILENT => } - UnalignedReadRDD.fromRdd(reads1 ++ reads2) + UnalignedReadRDD.fromRdd(reads1.rdd ++ reads2.rdd) } def loadUnpairedFastq( @@ -865,7 +863,7 @@ class ADAMContext(@transient val sc: SparkContext) extends Serializable with Log //TODO(ryan): S3ByteAccess new TwoBitFile(new LocalFileByteAccess(new File(filePath))) } else { - ReferenceContigMap(loadSequences(filePath, fragmentLength = fragmentLength)) + ReferenceContigMap(loadSequences(filePath, fragmentLength = fragmentLength).rdd) } } diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/algorithms/consensus/ConsensusGeneratorFromReadsSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/algorithms/consensus/ConsensusGeneratorFromReadsSuite.scala index b88bc90bf6..8e882420ec 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/algorithms/consensus/ConsensusGeneratorFromReadsSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/algorithms/consensus/ConsensusGeneratorFromReadsSuite.scala @@ -29,7 +29,7 @@ class ConsensusGeneratorFromReadsSuite extends ADAMFunSuite { def artificial_reads: RDD[AlignmentRecord] = { val path = resourcePath("artificial.sam") - sc.loadAlignments(path) + sc.loadAlignments(path).rdd } sparkTest("checking search for consensus list for artificial reads") { diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/converters/FastaConverterSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/converters/FastaConverterSuite.scala index dc2c8eaa10..a3e6375c25 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/converters/FastaConverterSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/converters/FastaConverterSuite.scala @@ -210,7 +210,7 @@ class FastaConverterSuite extends ADAMFunSuite { sparkTest("convert reference fasta file") { //Loading "human_g1k_v37_chr1_59kb.fasta" - val referenceSequences = sc.loadSequences(chr1File, fragmentLength = 10).collect() + val referenceSequences = sc.loadSequences(chr1File, fragmentLength = 10).rdd.collect() assert(referenceSequences.forall(_.getContig.getContigName.toString == "1")) assert(referenceSequences.slice(0, referenceSequences.length - 2).forall(_.getFragmentSequence.length == 10)) diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/models/GeneSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/models/GeneSuite.scala index c8eb96292f..18d29dcbff 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/models/GeneSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/models/GeneSuite.scala @@ -35,7 +35,7 @@ class GeneSuite extends ADAMFunSuite { val fixedParentIds = features.reassignParentIds - val genes = fixedParentIds.toGenes() + val genes = fixedParentIds.toGenes().rdd assert(genes.count() === 4) val transcripts = genes.flatMap(_.transcripts) @@ -51,7 +51,7 @@ class GeneSuite extends ADAMFunSuite { val fixedParentIds = features.reassignParentIds - val genes = fixedParentIds.toGenes() + val genes = fixedParentIds.toGenes().rdd assert(genes.count() === 8) val transcripts = genes.flatMap(_.transcripts) @@ -102,7 +102,7 @@ class GeneSuite extends ADAMFunSuite { val features = sc.loadFeatures(path) val fixedParentIds = features.reassignParentIds val genes = fixedParentIds.toGenes() - val transcripts: Seq[Transcript] = genes.flatMap(g => g.transcripts).take(100) + val transcripts: Seq[Transcript] = genes.rdd.flatMap(g => g.transcripts).take(100) transcripts.foreach { transcript => val mySequence = transcript.extractSplicedmRNASequence(chr20sequence.get) diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/projections/FieldEnumerationSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/projections/FieldEnumerationSuite.scala index 09fef091ee..8f751b54ba 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/projections/FieldEnumerationSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/projections/FieldEnumerationSuite.scala @@ -42,7 +42,7 @@ class FieldEnumerationSuite extends ADAMFunSuite { rRdd.saveAsParquet(TestSaveArgs(readsParquetFilepath)) val p1 = Projection(AlignmentRecordField.readName) - val reads1: RDD[AlignmentRecord] = sc.loadAlignments(readsParquetFilepath, projection = Some(p1)) + val reads1: RDD[AlignmentRecord] = sc.loadAlignments(readsParquetFilepath, projection = Some(p1)).rdd assert(reads1.count() === 200) val first1 = reads1.first() @@ -50,7 +50,7 @@ class FieldEnumerationSuite extends ADAMFunSuite { assert(first1.getReadMapped === false) val p2 = Projection(AlignmentRecordField.readName, AlignmentRecordField.readMapped) - val reads2: RDD[AlignmentRecord] = sc.loadAlignments(readsParquetFilepath, projection = Some(p2)) + val reads2: RDD[AlignmentRecord] = sc.loadAlignments(readsParquetFilepath, projection = Some(p2)).rdd assert(reads2.count() === 200) val first2 = reads2.first() diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/ADAMContextSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/ADAMContextSuite.scala index 494e97e3eb..77c6aa5542 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/ADAMContextSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/ADAMContextSuite.scala @@ -50,8 +50,8 @@ class ADAMContextSuite extends ADAMFunSuite { val readsFilepath = resourcePath("unmapped.sam") // Convert the reads12.sam file into a parquet file - val bamReads: RDD[AlignmentRecord] = sc.loadAlignments(readsFilepath) - assert(bamReads.count === 200) + val bamReads: RDD[AlignmentRecord] = sc.loadAlignments(readsFilepath).rdd + assert(bamReads.rdd.count === 200) } sparkTest("sc.loadParquet should not load a file without a type specified") { @@ -73,19 +73,20 @@ class ADAMContextSuite extends ADAMFunSuite { sparkTest("can read a small .SAM file") { val path = resourcePath("small.sam") - val reads: RDD[AlignmentRecord] = sc.loadAlignments(path) + val reads: RDD[AlignmentRecord] = sc.loadAlignments(path).rdd assert(reads.count() === 20) } sparkTest("can read a small .SAM with all attribute tag types") { val path = resourcePath("tags.sam") - val reads: RDD[AlignmentRecord] = sc.loadAlignments(path) + val reads: RDD[AlignmentRecord] = sc.loadAlignments(path).rdd assert(reads.count() === 7) } sparkTest("can filter a .SAM file based on quality") { val path = resourcePath("small.sam") val reads: RDD[AlignmentRecord] = sc.loadAlignments(path) + .rdd .filter(a => (a.getReadMapped && a.getMapq > 30)) assert(reads.count() === 18) } @@ -186,7 +187,7 @@ class ADAMContextSuite extends ADAMFunSuite { try { val loaded = sc.loadAlignmentsFromPaths(Seq(path)) - assert(loaded.count() === saved.count()) + assert(loaded.rdd.count() === saved.rdd.count()) } catch { case (e: Exception) => println(e) @@ -208,28 +209,28 @@ class ADAMContextSuite extends ADAMFunSuite { sparkTest("Can read a .gtf file") { val path = testFile("Homo_sapiens.GRCh37.75.trun20.gtf") - val features: RDD[Feature] = sc.loadFeatures(path) - assert(features.count === 15) + val features: RDD[Feature] = sc.loadFeatures(path).rdd + assert(features.rdd.count === 15) } sparkTest("Can read a .bed file") { // note: this .bed doesn't actually conform to the UCSC BED spec...sigh... val path = testFile("gencode.v7.annotation.trunc10.bed") - val features: RDD[Feature] = sc.loadFeatures(path) - assert(features.count === 10) + val features: RDD[Feature] = sc.loadFeatures(path).rdd + assert(features.rdd.count === 10) } sparkTest("Can read a .narrowPeak file") { val path = testFile("wgEncodeOpenChromDnaseGm19238Pk.trunc10.narrowPeak") - val annot: RDD[Feature] = sc.loadFeatures(path) - assert(annot.count === 10) + val annot: RDD[Feature] = sc.loadFeatures(path).rdd + assert(annot.rdd.count === 10) } sparkTest("Can read a .interval_list file") { val path = testFile("SeqCap_EZ_Exome_v3.hg19.interval_list") - val annot: RDD[Feature] = sc.loadFeatures(path) - assert(annot.count == 369) - val arr = annot.collect + val annot: RDD[Feature] = sc.loadFeatures(path).rdd + assert(annot.rdd.count == 369) + val arr = annot.rdd.collect val first = arr.find(f => f.getContigName == "chr1" && f.getStart == 14415L && f.getEnd == 14499L).get assert( @@ -264,7 +265,7 @@ class ADAMContextSuite extends ADAMFunSuite { sparkTest("can read a small .vcf file") { val path = resourcePath("small.vcf") - val vcs = sc.loadGenotypes(path).toVariantContextRDD.collect.sortBy(_.position) + val vcs = sc.loadGenotypes(path).toVariantContextRDD.rdd.collect.sortBy(_.position) assert(vcs.size === 5) val vc = vcs.head @@ -278,25 +279,25 @@ class ADAMContextSuite extends ADAMFunSuite { sparkTest("can read a gzipped .vcf file") { val path = resourcePath("test.vcf.gz") val vcs = sc.loadVcf(path, None) - assert(vcs.count === 6) + assert(vcs.rdd.count === 6) } sparkTest("can read a BGZF gzipped .vcf file") { val path = resourcePath("test.vcf.bgzf.gz") val vcs = sc.loadVcf(path, None) - assert(vcs.count === 6) + assert(vcs.rdd.count === 6) } ignore("can read an uncompressed BCFv2.2 file") { // see https://github.com/samtools/htsjdk/issues/507 val path = resourcePath("test.uncompressed.bcf") val vcs = sc.loadVcf(path, None) - assert(vcs.count === 6) + assert(vcs.rdd.count === 6) } ignore("can read a BGZF compressed BCFv2.2 file") { // see https://github.com/samtools/htsjdk/issues/507 val path = resourcePath("test.compressed.bcf") val vcs = sc.loadVcf(path, None) - assert(vcs.count === 6) + assert(vcs.rdd.count === 6) } (1 to 4) foreach { testNumber => @@ -307,19 +308,19 @@ class ADAMContextSuite extends ADAMFunSuite { val reads = sc.loadAlignments(path) if (testNumber == 1) { - assert(reads.count === 6) - assert(reads.filter(_.getReadPaired).count === 6) - assert(reads.filter(_.getReadInFragment == 0).count === 3) - assert(reads.filter(_.getReadInFragment == 1).count === 3) + assert(reads.rdd.count === 6) + assert(reads.rdd.filter(_.getReadPaired).count === 6) + assert(reads.rdd.filter(_.getReadInFragment == 0).count === 3) + assert(reads.rdd.filter(_.getReadInFragment == 1).count === 3) } else { - assert(reads.count === 4) - assert(reads.filter(_.getReadPaired).count === 4) - assert(reads.filter(_.getReadInFragment == 0).count === 2) - assert(reads.filter(_.getReadInFragment == 1).count === 2) + assert(reads.rdd.count === 4) + assert(reads.rdd.filter(_.getReadPaired).count === 4) + assert(reads.rdd.filter(_.getReadInFragment == 0).count === 2) + assert(reads.rdd.filter(_.getReadInFragment == 1).count === 2) } - assert(reads.collect.forall(_.getSequence.toString.length === 250)) - assert(reads.collect.forall(_.getQual.toString.length === 250)) + assert(reads.rdd.collect.forall(_.getSequence.toString.length === 250)) + assert(reads.rdd.collect.forall(_.getQual.toString.length === 250)) } } @@ -331,18 +332,18 @@ class ADAMContextSuite extends ADAMFunSuite { val reads = sc.loadAlignments(path) if (testNumber == 1) { - assert(reads.count === 6) - assert(reads.filter(_.getReadPaired).count === 0) + assert(reads.rdd.count === 6) + assert(reads.rdd.filter(_.getReadPaired).count === 0) } else if (testNumber == 4) { - assert(reads.count === 4) - assert(reads.filter(_.getReadPaired).count === 0) + assert(reads.rdd.count === 4) + assert(reads.rdd.filter(_.getReadPaired).count === 0) } else { - assert(reads.count === 5) - assert(reads.filter(_.getReadPaired).count === 0) + assert(reads.rdd.count === 5) + assert(reads.rdd.filter(_.getReadPaired).count === 0) } - assert(reads.collect.forall(_.getSequence.toString.length === 250)) - assert(reads.collect.forall(_.getQual.toString.length === 250)) + assert(reads.rdd.collect.forall(_.getSequence.toString.length === 250)) + assert(reads.rdd.collect.forall(_.getQual.toString.length === 250)) } } @@ -350,7 +351,7 @@ class ADAMContextSuite extends ADAMFunSuite { val path = resourcePath("bqsr1.vcf") val variants = sc.loadVariants(path) - assert(variants.count === 681) + assert(variants.rdd.count === 681) val loc = tempLocation() variants.saveAsParquet(loc, 1024, 1024) // force more than one row group (block) @@ -358,7 +359,7 @@ class ADAMContextSuite extends ADAMFunSuite { val pred: FilterPredicate = (LongColumn("start") === 16097631L) // the following only reads one row group val adamVariants = sc.loadParquetVariants(loc, predicate = Some(pred)) - assert(adamVariants.count === 1) + assert(adamVariants.rdd.count === 1) } sparkTest("saveAsParquet with file path") { @@ -367,7 +368,7 @@ class ADAMContextSuite extends ADAMFunSuite { val outputPath = tempLocation() reads.saveAsParquet(outputPath) val reloadedReads = sc.loadAlignments(outputPath) - assert(reads.count === reloadedReads.count) + assert(reads.rdd.count === reloadedReads.rdd.count) } sparkTest("saveAsParquet with file path, block size, page size") { @@ -376,7 +377,7 @@ class ADAMContextSuite extends ADAMFunSuite { val outputPath = tempLocation() reads.saveAsParquet(outputPath, 1024, 2048) val reloadedReads = sc.loadAlignments(outputPath) - assert(reads.count === reloadedReads.count) + assert(reads.rdd.count === reloadedReads.rdd.count) } sparkTest("saveAsParquet with save args") { @@ -385,13 +386,15 @@ class ADAMContextSuite extends ADAMFunSuite { val outputPath = tempLocation() reads.saveAsParquet(TestSaveArgs(outputPath)) val reloadedReads = sc.loadAlignments(outputPath) - assert(reads.count === reloadedReads.count) + assert(reads.rdd.count === reloadedReads.rdd.count) } sparkTest("read a gzipped fasta file") { val inputPath = resourcePath("chr20.250k.fa.gz") - val contigFragments: RDD[NucleotideContigFragment] = sc.loadFasta(inputPath, 10000L).sortBy(_.getFragmentNumber.toInt) - assert(contigFragments.count() === 26) + val contigFragments: RDD[NucleotideContigFragment] = sc.loadFasta(inputPath, 10000L) + .rdd + .sortBy(_.getFragmentNumber.toInt) + assert(contigFragments.rdd.count() === 26) val first: NucleotideContigFragment = contigFragments.first() assert(first.getContig.getContigName === "gi|224384749|gb|CM000682.1|") assert(first.getDescription === "Homo sapiens chromosome 20, GRCh37 primary reference assembly") @@ -402,7 +405,7 @@ class ADAMContextSuite extends ADAMFunSuite { assert(first.getNumberOfFragmentsInContig === 26) // 250k file actually has 251930 bases - val last: NucleotideContigFragment = contigFragments.collect().last + val last: NucleotideContigFragment = contigFragments.rdd.collect().last assert(last.getFragmentNumber === 25) assert(last.getFragmentStartPosition === 250000L) assert(last.getFragmentEndPosition === 251929L) @@ -412,7 +415,7 @@ class ADAMContextSuite extends ADAMFunSuite { val refRegion = ReferenceRegion("chr2", 100, 101) val path = resourcePath("sorted.bam") val reads = sc.loadIndexedBam(path, refRegion) - assert(reads.count == 1) + assert(reads.rdd.count == 1) } } diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/GenomicPositionPartitionerSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/GenomicPositionPartitionerSuite.scala index 3e4b9ed742..985b50b970 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/GenomicPositionPartitionerSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/GenomicPositionPartitionerSuite.scala @@ -104,7 +104,7 @@ class GenomicPositionPartitionerSuite extends ADAMFunSuite { import org.bdgenomics.adam.projections.AlignmentRecordField._ Projection(contigName, start, readName, readMapped) } - val rdd: RDD[AlignmentRecord] = sc.loadAlignments(filename, projection = Some(p)) + val rdd: RDD[AlignmentRecord] = sc.loadAlignments(filename, projection = Some(p)).rdd assert(rdd.count() === 200) diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/contig/NucleotideContigFragmentRDDSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/contig/NucleotideContigFragmentRDDSuite.scala index 1167383689..93ae5035ce 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/contig/NucleotideContigFragmentRDDSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/contig/NucleotideContigFragmentRDDSuite.scala @@ -457,8 +457,8 @@ class NucleotideContigFragmentRDDSuite extends ADAMFunSuite { val rdd = NucleotideContigFragmentRDD(sc.parallelize(List(fragment))) val merged = rdd.mergeFragments() - assert(merged.count == 1L) - assert(merged.first.getFragmentSequence() === "ACTGTAC") + assert(merged.rdd.count == 1L) + assert(merged.rdd.first.getFragmentSequence() === "ACTGTAC") } sparkTest("merge single contig fragment number zero") { @@ -479,8 +479,8 @@ class NucleotideContigFragmentRDDSuite extends ADAMFunSuite { val rdd = NucleotideContigFragmentRDD(sc.parallelize(List(fragment))) val merged = rdd.mergeFragments() - assert(merged.count == 1L) - assert(merged.first.getFragmentSequence() === "ACTGTAC") + assert(merged.rdd.count == 1L) + assert(merged.rdd.first.getFragmentSequence() === "ACTGTAC") } sparkTest("merge multiple contig fragments") { @@ -528,9 +528,9 @@ class NucleotideContigFragmentRDDSuite extends ADAMFunSuite { fragment0))) val merged = rdd.mergeFragments() - assert(merged.count == 2L) + assert(merged.rdd.count == 2L) - val collect = merged.collect + val collect = merged.rdd.collect assert(collect(0).getFragmentSequence() === "ACTGTAC") assert(collect(1).getFragmentSequence() === "GTACTCTCATG") } diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/features/FeatureRDDSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/features/FeatureRDDSuite.scala index a587b83611..f958fb888f 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/features/FeatureRDDSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/features/FeatureRDDSuite.scala @@ -309,7 +309,7 @@ class FeatureRDDSuite extends ADAMFunSuite with TypeCheckedTripleEquals { val f7 = fb.setContigName("2").build() val features = FeatureRDD(sc.parallelize(Seq(f7, f6, f5, f4, f3, f2, f1))) - val sorted = features.sortByReference().collect() + val sorted = features.sortByReference().rdd.collect() assert(f1 == sorted(0)) assert(f2 == sorted(1)) @@ -331,7 +331,7 @@ class FeatureRDDSuite extends ADAMFunSuite with TypeCheckedTripleEquals { val f7 = fb.clearScore().build() // nulls last val features = FeatureRDD(sc.parallelize(Seq(f7, f6, f5, f4, f3, f2, f1))) - val sorted = features.sortByReference().collect() + val sorted = features.sortByReference().rdd.collect() assert(f1 == sorted(0)) assert(f2 == sorted(1)) @@ -349,7 +349,7 @@ class FeatureRDDSuite extends ADAMFunSuite with TypeCheckedTripleEquals { val f3 = fb.clearGeneId().build() // nulls last val features = FeatureRDD(sc.parallelize(Seq(f3, f2, f1))) - val sorted = features.sortByReference().collect() + val sorted = features.sortByReference().rdd.collect() assert(f1 == sorted(0)) assert(f2 == sorted(1)) @@ -365,7 +365,7 @@ class FeatureRDDSuite extends ADAMFunSuite with TypeCheckedTripleEquals { val f5 = fb.setGeneId("gene2").clearTranscriptId().build() // nulls last val features = FeatureRDD(sc.parallelize(Seq(f5, f4, f3, f2, f1))) - val sorted = features.sortByReference().collect() + val sorted = features.sortByReference().rdd.collect() assert(f1 == sorted(0)) assert(f2 == sorted(1)) @@ -387,7 +387,7 @@ class FeatureRDDSuite extends ADAMFunSuite with TypeCheckedTripleEquals { val f9 = fb.setGeneId("gene2").setTranscriptId("transcript1").clearAttributes().build() // nulls last val features = FeatureRDD(sc.parallelize(Seq(f9, f8, f7, f6, f5, f4, f3, f2, f1))) - val sorted = features.sortByReference().collect() + val sorted = features.sortByReference().rdd.collect() assert(f1 == sorted(0)) assert(f2 == sorted(1)) @@ -409,7 +409,7 @@ class FeatureRDDSuite extends ADAMFunSuite with TypeCheckedTripleEquals { val f5 = fb.clearAttributes().build() // nulls last val features = FeatureRDD(sc.parallelize(Seq(f5, f4, f3, f2, f1))) - val sorted = features.sortByReference().collect() + val sorted = features.sortByReference().rdd.collect() assert(f1 == sorted(0)) assert(f2 == sorted(1)) diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/AlignmentRecordRDDSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/AlignmentRecordRDDSuite.scala index 72dba5b5de..79030e3d87 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/AlignmentRecordRDDSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/AlignmentRecordRDDSuite.scala @@ -67,6 +67,7 @@ class AlignmentRecordRDDSuite extends ADAMFunSuite { val sortedReads = AlignedReadRDD(rdd, sd, RecordGroupDictionary.empty) .sortReadsByReferencePosition() + .rdd .collect() .zipWithIndex val (mapped, unmapped) = sortedReads.partition(_._1.getReadMapped) @@ -103,6 +104,7 @@ class AlignmentRecordRDDSuite extends ADAMFunSuite { val rdd = sc.parallelize(reads) val sortedReads = AlignedReadRDD(rdd, sd, RecordGroupDictionary.empty) .sortReadsByReferencePositionAndIndex() + .rdd .collect() .zipWithIndex val (mapped, unmapped) = sortedReads.partition(_._1.getReadMapped) @@ -136,10 +138,10 @@ class AlignmentRecordRDDSuite extends ADAMFunSuite { val rdd12B = sc.loadBam(tempFile.toAbsolutePath.toString + "/reads12.sam/part-r-00000") - assert(rdd12B.count() === rdd12A.count()) + assert(rdd12B.rdd.count() === rdd12A.rdd.count()) - val reads12A = rdd12A.collect() - val reads12B = rdd12B.collect() + val reads12A = rdd12A.rdd.collect() + val reads12B = rdd12B.rdd.collect() reads12A.indices.foreach { case i: Int => @@ -154,7 +156,7 @@ class AlignmentRecordRDDSuite extends ADAMFunSuite { val filePath = getClass.getClassLoader.getResource("reads12.sam").getFile val sam = sc.loadAlignments(filePath) - sam.collect().foreach(r => assert(r.getReadMapped)) + sam.rdd.collect().foreach(r => assert(r.getReadMapped)) } sparkTest("convert malformed FASTQ (no quality scores) => SAM => well-formed FASTQ => SAM") { @@ -176,9 +178,9 @@ class AlignmentRecordRDDSuite extends ADAMFunSuite { //read FASTQ (well-formed) val rddC = sc.loadFastq(tempBase + "/noqualB.fastq", None, None, ValidationStringency.STRICT) - val noqualA = rddA.collect() - val noqualB = rddB.collect() - val noqualC = rddC.collect() + val noqualA = rddA.rdd.collect() + val noqualB = rddB.rdd.collect() + val noqualC = rddC.rdd.collect() noqualA.indices.foreach { case i: Int => val (readA, readB, readC) = (noqualA(i), noqualB(i), noqualC(i)) @@ -198,10 +200,10 @@ class AlignmentRecordRDDSuite extends ADAMFunSuite { val rdd12B = sc.loadAlignments(tempFile.toAbsolutePath.toString + "/reads12.fq") - assert(rdd12B.count() === rdd12A.count()) + assert(rdd12B.rdd.count() === rdd12A.rdd.count()) - val reads12A = rdd12A.collect() - val reads12B = rdd12B.collect() + val reads12A = rdd12A.rdd.collect() + val reads12B = rdd12B.rdd.collect() reads12A.indices.foreach { case i: Int => @@ -218,7 +220,7 @@ class AlignmentRecordRDDSuite extends ADAMFunSuite { val rddA = sc.loadAlignments(path1).reassembleReadPairs(sc.loadAlignments(path2).rdd, validationStringency = ValidationStringency.STRICT) - assert(rddA.count() == 6) + assert(rddA.rdd.count() == 6) val tempFile = Files.createTempDirectory("reads") val tempPath1 = tempFile.toAbsolutePath.toString + "/reads1.fq" @@ -229,10 +231,10 @@ class AlignmentRecordRDDSuite extends ADAMFunSuite { val rddB = sc.loadAlignments(tempPath1).reassembleReadPairs(sc.loadAlignments(tempPath2).rdd, validationStringency = ValidationStringency.STRICT) - assert(rddB.count() === rddA.count()) + assert(rddB.rdd.count() === rddA.rdd.count()) - val readsA = rddA.collect() - val readsB = rddB.collect() + val readsA = rddA.rdd.collect() + val readsB = rddB.rdd.collect() readsA.indices.foreach { case i: Int => diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/realignment/RealignIndelsSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/realignment/RealignIndelsSuite.scala index 45d9fc5044..7c4274f6fc 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/realignment/RealignIndelsSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/realignment/RealignIndelsSuite.scala @@ -28,25 +28,30 @@ import org.bdgenomics.formats.avro.{ AlignmentRecord, Contig } class RealignIndelsSuite extends ADAMFunSuite { - def mason_reads: AlignmentRecordRDD = { + def mason_reads: RDD[AlignmentRecord] = { val path = resourcePath("small_realignment_targets.sam") - sc.loadAlignments(path) + sc.loadAlignments(path).rdd } - def artificial_reads: AlignmentRecordRDD = { + def artificial_reads_rdd: AlignmentRecordRDD = { val path = resourcePath("artificial.sam") sc.loadAlignments(path) } - def artificial_realigned_reads: AlignmentRecordRDD = { - artificial_reads + def artificial_reads: RDD[AlignmentRecord] = { + artificial_reads_rdd.rdd + } + + def artificial_realigned_reads: RDD[AlignmentRecord] = { + artificial_reads_rdd .realignIndels() .sortReadsByReferencePosition() + .rdd } - def gatk_artificial_realigned_reads: AlignmentRecordRDD = { + def gatk_artificial_realigned_reads: RDD[AlignmentRecord] = { val path = resourcePath("artificial.realigned.sam") - sc.loadAlignments(path) + sc.loadAlignments(path).rdd } sparkTest("checking mapping to targets for artificial reads") { diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/recalibration/BaseQualityRecalibrationSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/recalibration/BaseQualityRecalibrationSuite.scala index fbce8dbd6c..1de0df648c 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/recalibration/BaseQualityRecalibrationSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/read/recalibration/BaseQualityRecalibrationSuite.scala @@ -32,7 +32,7 @@ class BaseQualityRecalibrationSuite extends ADAMFunSuite { val snpsFilepath = resourcePath("bqsr1.snps") val obsFilepath = resourcePath("bqsr1-ref.observed") - val reads: RDD[AlignmentRecord] = sc.loadAlignments(readsFilepath) + val reads: RDD[AlignmentRecord] = sc.loadAlignments(readsFilepath).rdd val snps = sc.broadcast(SnpTable(new File(snpsFilepath))) val bqsr = new BaseQualityRecalibration(cloy(reads), snps) @@ -51,8 +51,8 @@ class BaseQualityRecalibrationSuite extends ADAMFunSuite { val snpsFilepath = resourcePath("bqsr1.vcf") val obsFilepath = resourcePath("bqsr1-ref.observed") - val reads: RDD[AlignmentRecord] = sc.loadAlignments(readsFilepath) - val variants: RDD[RichVariant] = sc.loadVariants(snpsFilepath).map(new RichVariant(_)) + val reads: RDD[AlignmentRecord] = sc.loadAlignments(readsFilepath).rdd + val variants: RDD[RichVariant] = sc.loadVariants(snpsFilepath).rdd.map(new RichVariant(_)) val snps = sc.broadcast(SnpTable(variants)) val bqsr = new BaseQualityRecalibration(cloy(reads), snps) diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/variation/VariantContextRDDSuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/variation/VariantContextRDDSuite.scala index 79c2888e22..b7565e3ab9 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/rdd/variation/VariantContextRDDSuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/rdd/variation/VariantContextRDDSuite.scala @@ -59,7 +59,7 @@ class VariantContextRDDSuite extends ADAMFunSuite { variants.saveAsVcf(TestSaveArgs(path.getAbsolutePath), false) assert(path.exists) val vcRdd = sc.loadVcf("%s/test.vcf/part-r-00000".format(tempDir)) - assert(vcRdd.count === 1) + assert(vcRdd.rdd.count === 1) assert(vcRdd.sequences.records.size === 1) assert(vcRdd.sequences.records(0).name === "chr11") }