diff --git a/adam-core/src/main/scala/org/bdgenomics/adam/models/RecordGroupDictionary.scala b/adam-core/src/main/scala/org/bdgenomics/adam/models/RecordGroupDictionary.scala index a5548c2109..ef75da0cf8 100644 --- a/adam-core/src/main/scala/org/bdgenomics/adam/models/RecordGroupDictionary.scala +++ b/adam-core/src/main/scala/org/bdgenomics/adam/models/RecordGroupDictionary.scala @@ -58,6 +58,13 @@ object RecordGroupDictionary { */ case class RecordGroupDictionary(recordGroups: Seq[RecordGroup]) { + /** + * @return Returns true if this dictionary contains no record groups. + */ + def isEmpty: Boolean = { + recordGroups.isEmpty + } + /** * A representation of this record group dictionary that can be indexed into * by record group name. diff --git a/adam-core/src/test/scala/org/bdgenomics/adam/models/RecordGroupDictionarySuite.scala b/adam-core/src/test/scala/org/bdgenomics/adam/models/RecordGroupDictionarySuite.scala index 14e807eb4d..7f07ce1e84 100644 --- a/adam-core/src/test/scala/org/bdgenomics/adam/models/RecordGroupDictionarySuite.scala +++ b/adam-core/src/test/scala/org/bdgenomics/adam/models/RecordGroupDictionarySuite.scala @@ -69,6 +69,7 @@ class RecordGroupDictionarySuite extends FunSuite { RecordGroup("sample2", "rgSample2"), RecordGroup("sample3", "rg1Sample3"), RecordGroup("sample3", "rg2Sample3"))) + assert(!rgd.isEmpty) val samples = rgd.toSamples assert(samples.size === 3) @@ -76,4 +77,11 @@ class RecordGroupDictionarySuite extends FunSuite { assert(samples.count(_.getSampleId == "sample2") === 1) assert(samples.count(_.getSampleId == "sample3") === 1) } + + test("empty record group is empty") { + val emptyRgd = RecordGroupDictionary.empty + + assert(emptyRgd.isEmpty) + assert(emptyRgd.recordGroups.size === 0) + } }