Added function to get founders IDs in SampleDB

Signed-off-by: Eric Banks <ebanks@broadinstitute.org>
This commit is contained in:
Laurent Francioli 2012-04-25 16:27:38 +02:00 committed by Eric Banks
parent 120deaa010
commit 19d5213d5a
2 changed files with 17 additions and 0 deletions

View File

@ -235,4 +235,14 @@ public class SampleDB {
} }
return children; return children;
} }
public Set<String> getFounderIds(){
Set<String> founders = new HashSet<String>();
for(Sample sample : getSamples()){
if(sample.getParents().size()<1)
founders.add(sample.getID());
}
return founders;
}
} }

View File

@ -200,6 +200,13 @@ public class SampleDBUnitTest extends BaseTest {
Assert.assertEquals(db.getChildrenWithParents(true), new HashSet<Sample>(Arrays.asList(new Sample("kid", "fam1", "dad", "mom", Gender.MALE, Affection.AFFECTED)))); Assert.assertEquals(db.getChildrenWithParents(true), new HashSet<Sample>(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<String>(Arrays.asList("dad","mom","dad2","mom2","dad4")));
}
@Test() @Test()
public void loadFamilyIDs() { public void loadFamilyIDs() {
builder.addSamplesFromPedigreeStrings(Arrays.asList(testPEDMultipleFamilies)); builder.addSamplesFromPedigreeStrings(Arrays.asList(testPEDMultipleFamilies));