Skip to content

Commit 92aa1a5

Browse files
committed
Added Experiment/ExperimentalData to Compare
1 parent 95fa5f3 commit 92aa1a5

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

core2/src/main/java/org/sbolstandard/core2/SBOLValidate.java

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1983,6 +1983,40 @@ private static void compareCollections(String file1, SBOLDocument doc1, String f
19831983
}
19841984
}
19851985
}
1986+
1987+
private static void compareExperiments(String file1, SBOLDocument doc1, String file2, SBOLDocument doc2) {
1988+
for (Experiment experiment1 : doc1.getExperiments()) {
1989+
Experiment experiment2 = doc2.getExperiment(experiment1.getIdentity());
1990+
if (experiment2 == null) {
1991+
errors.add("Experiment " + experiment1.getIdentity() + " not found in " + file2);
1992+
} else if (!experiment1.equals(experiment2)) {
1993+
errors.add("Experiment " + experiment1.getIdentity() + " differ.");
1994+
}
1995+
}
1996+
for (Experiment experiment2 : doc2.getExperiments()) {
1997+
Experiment experiment1 = doc1.getExperiment(experiment2.getIdentity());
1998+
if (experiment1 == null) {
1999+
errors.add("Experiment " + experiment2.getIdentity() + " not found in " + file1);
2000+
}
2001+
}
2002+
}
2003+
2004+
private static void compareExperimentalData(String file1, SBOLDocument doc1, String file2, SBOLDocument doc2) {
2005+
for (ExperimentalData experimentalData1 : doc1.getExperimentalData()) {
2006+
ExperimentalData experimentalData2 = doc2.getExperimentalData(experimentalData1.getIdentity());
2007+
if (experimentalData2 == null) {
2008+
errors.add("ExperimentalData " + experimentalData1.getIdentity() + " not found in " + file2);
2009+
} else if (!experimentalData1.equals(experimentalData2)) {
2010+
errors.add("ExperimentalData " + experimentalData1.getIdentity() + " differ.");
2011+
}
2012+
}
2013+
for (ExperimentalData experimentalData2 : doc2.getExperimentalData()) {
2014+
ExperimentalData experimentalData1 = doc1.getExperimentalData(experimentalData2.getIdentity());
2015+
if (experimentalData1 == null) {
2016+
errors.add("ExperimentalData " + experimentalData2.getIdentity() + " not found in " + file1);
2017+
}
2018+
}
2019+
}
19862020

19872021
private static void compareMapsTos(String file1, Component component1, String file2, Component component2) {
19882022
for (MapsTo mapsTo1 : component1.getMapsTos()) {
@@ -2505,6 +2539,8 @@ public static void compareDocuments(String file1, SBOLDocument doc1, String file
25052539
compareGenericTopLevels(file1, doc1, file2, doc2);
25062540
compareCombinatorialDerivations(file1, doc1, file2, doc2);
25072541
compareImplementations(file1, doc1, file2, doc2);
2542+
compareExperiments(file1, doc1, file2, doc2);
2543+
compareExperimentalData(file1, doc1, file2, doc2);
25082544
compareAttachments(file1, doc1, file2, doc2);
25092545
}
25102546

0 commit comments

Comments
 (0)