From 19d5213d5aa51095b9ef5850e83b3e0580b67c20 Mon Sep 17 00:00:00 2001 From: Laurent Francioli Date: Wed, 25 Apr 2012 16:27:38 +0200 Subject: [PATCH] Added function to get founders IDs in SampleDB Signed-off-by: Eric Banks --- .../broadinstitute/sting/gatk/samples/SampleDB.java | 10 ++++++++++ .../sting/gatk/samples/SampleDBUnitTest.java | 7 +++++++ 2 files changed, 17 insertions(+) diff --git a/public/java/src/org/broadinstitute/sting/gatk/samples/SampleDB.java b/public/java/src/org/broadinstitute/sting/gatk/samples/SampleDB.java index a6f6b3481..31149cd8a 100644 --- a/public/java/src/org/broadinstitute/sting/gatk/samples/SampleDB.java +++ b/public/java/src/org/broadinstitute/sting/gatk/samples/SampleDB.java @@ -235,4 +235,14 @@ public class SampleDB { } return children; } + + public Set getFounderIds(){ + Set founders = new HashSet(); + for(Sample sample : getSamples()){ + if(sample.getParents().size()<1) + founders.add(sample.getID()); + + } + return founders; + } } diff --git a/public/java/test/org/broadinstitute/sting/gatk/samples/SampleDBUnitTest.java b/public/java/test/org/broadinstitute/sting/gatk/samples/SampleDBUnitTest.java index 7f21da4f4..85aa28a98 100644 --- a/public/java/test/org/broadinstitute/sting/gatk/samples/SampleDBUnitTest.java +++ b/public/java/test/org/broadinstitute/sting/gatk/samples/SampleDBUnitTest.java @@ -200,6 +200,13 @@ public class SampleDBUnitTest extends BaseTest { Assert.assertEquals(db.getChildrenWithParents(true), new HashSet(Arrays.asList(new Sample("kid", "fam1", "dad", "mom", Gender.MALE, Affection.AFFECTED)))); } + @Test() + public void testGetFounderIds(){ + builder.addSamplesFromPedigreeStrings(Arrays.asList(testPEDMultipleFamilies2)); + SampleDB db = builder.getFinalSampleDB(); + Assert.assertEquals(db.getFounderIds(), new HashSet(Arrays.asList("dad","mom","dad2","mom2","dad4"))); + } + @Test() public void loadFamilyIDs() { builder.addSamplesFromPedigreeStrings(Arrays.asList(testPEDMultipleFamilies));