package uk.ac.ebi.fg.myequivalents.provenance.utils; import static org.junit.Assert.assertEquals; import static uk.ac.ebi.fg.myequivalents.provenance.model.ProvenanceRegisterParameter.p; import static uk.ac.ebi.fg.myequivalents.provenance.model.ProvenanceRegisterParameter.pent; import static uk.ac.ebi.fg.myequivalents.provenance.utils.ProvenanceUtils.getAllEntityIds; import static uk.ac.ebi.fg.myequivalents.provenance.utils.ProvenanceUtils.getOperations; import static uk.ac.ebi.fg.myequivalents.provenance.utils.ProvenanceUtils.getUserEmails; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import org.junit.Test; import uk.ac.ebi.fg.myequivalents.provenance.model.ProvenanceRegisterEntry; import uk.ac.ebi.fg.myequivalents.provenance.model.ProvenanceRegisterParameter; import uk.ac.ebi.fg.myequivalents.utils.EntityIdResolver; /** * Tests for functionality in {@link ProvenanceUtils} and other utilities in {@link ProvenanceRegisterParameter}. * * <dl><dt>date</dt><dd>12 Sep 2014</dd></dl> * @author Marco Brandizi * */ public class ProvenanceUtilsTest { @Test public void testBasics () { EntityIdResolver idresolver = new EntityIdResolver (); List<ProvenanceRegisterEntry> provs = new ArrayList<> (); ProvenanceRegisterEntry e = new ProvenanceRegisterEntry ( "foo.user", "foo.op", p ( "foo.entity", Arrays.asList ( "acc1", "acc2", "acc3" ) ) ); provs.add ( e ); ProvenanceRegisterEntry e1 = new ProvenanceRegisterEntry ( "foo.user", "foo.op", pent ( idresolver, Arrays.asList ( "s1:acc4", "s2:acc5", "s3:acc6" ) ) ); provs.add ( e1 ); ProvenanceRegisterEntry e2 = new ProvenanceRegisterEntry ( "test.user", "test.op", pent ( idresolver, Arrays.asList ( "s4:acc7", "s2:acc5" ) ) ); provs.add ( e2 ); assertEquals ( "User not found!", 2, getUserEmails ( provs, "^foo\\..*" ).size () ); assertEquals ( "Operations not found!", 1, getOperations ( provs, "foo.op" ).size () ); assertEquals ( "Operations not found!", 2, getOperations ( provs, null ).size () ); assertEquals ( "Entities not found!", 4, getAllEntityIds ( provs ).size () ); } }