diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/ConstraintTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/ConstraintTest.java index 7b68e3c88..1453af318 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/ConstraintTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/ConstraintTest.java @@ -21,16 +21,12 @@ import java.util.HashSet; import java.util.List; import java.util.Set; -import static org.openrefine.wikidata.qa.Constraint.CONSTRAINT_EXCEPTIONS; -import static org.openrefine.wikidata.qa.Constraint.CONSTRAINT_STATUS; -import static org.openrefine.wikidata.qa.WikidataConstraintFetcher.SINGLE_VALUE_CONSTRAINT_QID; - public class ConstraintTest { - public static ItemIdValue itemIdValue = Datamodel.makeWikidataItemIdValue(SINGLE_VALUE_CONSTRAINT_QID); - public static PropertyIdValue constraintException = Datamodel.makeWikidataPropertyIdValue(CONSTRAINT_EXCEPTIONS); + public static ItemIdValue itemIdValue = Datamodel.makeWikidataItemIdValue("Q19474404"); + public static PropertyIdValue constraintException = Datamodel.makeWikidataPropertyIdValue("P2303"); public static Value exceptionValue = Datamodel.makeWikidataItemIdValue("Q7409772"); - public static PropertyIdValue constraintStatus = Datamodel.makeWikidataPropertyIdValue(CONSTRAINT_STATUS); + public static PropertyIdValue constraintStatus = Datamodel.makeWikidataPropertyIdValue("P2316"); public static Value statusValue = Datamodel.makeWikidataItemIdValue("Q62026391"); public static Constraint constraint; diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/DifferenceWithinScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/DifferenceWithinScrutinizerTest.java index e4b4f7d40..e56466ef2 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/DifferenceWithinScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/DifferenceWithinScrutinizerTest.java @@ -23,10 +23,6 @@ import java.util.List; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.openrefine.wikidata.qa.scrutinizers.DifferenceWithinRangeScrutinizer.DIFFERENCE_WITHIN_RANGE_CONSTRAINT_PID; -import static org.openrefine.wikidata.qa.scrutinizers.DifferenceWithinRangeScrutinizer.DIFFERENCE_WITHIN_RANGE_CONSTRAINT_QID; -import static org.openrefine.wikidata.qa.scrutinizers.DifferenceWithinRangeScrutinizer.MAXIMUM_VALUE_PID; -import static org.openrefine.wikidata.qa.scrutinizers.DifferenceWithinRangeScrutinizer.MINIMUM_VALUE_PID; public class DifferenceWithinScrutinizerTest extends ScrutinizerTest{ @@ -34,11 +30,11 @@ public class DifferenceWithinScrutinizerTest extends ScrutinizerTest{ public static PropertyIdValue lowerBoundPid = Datamodel.makeWikidataPropertyIdValue("P569"); public static QuantityValue minValue = Datamodel.makeQuantityValue(new BigDecimal(0)); public static QuantityValue maxValue = Datamodel.makeQuantityValue(new BigDecimal(150)); - public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue(DIFFERENCE_WITHIN_RANGE_CONSTRAINT_QID); + public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue("Q21510854"); - public static PropertyIdValue propertyParameterPID = Datamodel.makeWikidataPropertyIdValue(DIFFERENCE_WITHIN_RANGE_CONSTRAINT_PID); - public static PropertyIdValue minimumValuePID = Datamodel.makeWikidataPropertyIdValue(MINIMUM_VALUE_PID); - public static PropertyIdValue maximumValuePID = Datamodel.makeWikidataPropertyIdValue(MAXIMUM_VALUE_PID); + public static PropertyIdValue propertyParameterPID = Datamodel.makeWikidataPropertyIdValue("P2306"); + public static PropertyIdValue minimumValuePID = Datamodel.makeWikidataPropertyIdValue("P2313"); + public static PropertyIdValue maximumValuePID = Datamodel.makeWikidataPropertyIdValue("P2312"); @Override public EditScrutinizer getScrutinizer() { @@ -63,10 +59,10 @@ public class DifferenceWithinScrutinizerTest extends ScrutinizerTest{ List constraintDefinitions = constraintParameterStatementList(entityIdValue, constraintQualifiers); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(upperBoundPid, DIFFERENCE_WITHIN_RANGE_CONSTRAINT_QID)).thenReturn(constraintDefinitions); - when(fetcher.findValues(constraintQualifiers, DIFFERENCE_WITHIN_RANGE_CONSTRAINT_PID)).thenReturn(Collections.singletonList(lowerBoundPid)); - when(fetcher.findValues(constraintQualifiers, MINIMUM_VALUE_PID)).thenReturn(Collections.singletonList(minValue)); - when(fetcher.findValues(constraintQualifiers, MAXIMUM_VALUE_PID)).thenReturn(Collections.singletonList(maxValue)); + when(fetcher.getConstraintsByType(upperBoundPid, "Q21510854")).thenReturn(constraintDefinitions); + when(fetcher.findValues(constraintQualifiers, "P2306")).thenReturn(Collections.singletonList(lowerBoundPid)); + when(fetcher.findValues(constraintQualifiers, "P2313")).thenReturn(Collections.singletonList(minValue)); + when(fetcher.findValues(constraintQualifiers, "P2312")).thenReturn(Collections.singletonList(maxValue)); setFetcher(fetcher); scrutinize(updateA); @@ -91,10 +87,10 @@ public class DifferenceWithinScrutinizerTest extends ScrutinizerTest{ List constraintDefinitions = constraintParameterStatementList(entityIdValue, constraintQualifiers); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(upperBoundPid, DIFFERENCE_WITHIN_RANGE_CONSTRAINT_QID)).thenReturn(constraintDefinitions); - when(fetcher.findValues(constraintQualifiers, DIFFERENCE_WITHIN_RANGE_CONSTRAINT_PID)).thenReturn(Collections.singletonList(lowerBoundPid)); - when(fetcher.findValues(constraintQualifiers, MINIMUM_VALUE_PID)).thenReturn(Collections.singletonList(minValue)); - when(fetcher.findValues(constraintQualifiers, MAXIMUM_VALUE_PID)).thenReturn(Collections.singletonList(maxValue)); + when(fetcher.getConstraintsByType(upperBoundPid, "Q21510854")).thenReturn(constraintDefinitions); + when(fetcher.findValues(constraintQualifiers, "P2306")).thenReturn(Collections.singletonList(lowerBoundPid)); + when(fetcher.findValues(constraintQualifiers, "P2313")).thenReturn(Collections.singletonList(minValue)); + when(fetcher.findValues(constraintQualifiers, "P2312")).thenReturn(Collections.singletonList(maxValue)); setFetcher(fetcher); scrutinize(updateA); diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/DistinctValuesScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/DistinctValuesScrutinizerTest.java index 0d11216bd..473ea70a1 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/DistinctValuesScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/DistinctValuesScrutinizerTest.java @@ -42,7 +42,6 @@ import java.util.List; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.openrefine.wikidata.qa.scrutinizers.DistinctValuesScrutinizer.DISTINCT_VALUES_CONSTRAINT_QID; public class DistinctValuesScrutinizerTest extends StatementScrutinizerTest { @@ -50,7 +49,7 @@ public class DistinctValuesScrutinizerTest extends StatementScrutinizerTest { public static Value value1 = Datamodel.makeWikidataItemIdValue("Q41673"); public static Value value2 = Datamodel.makeWikidataItemIdValue("Q43175"); - public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue(DISTINCT_VALUES_CONSTRAINT_QID); + public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue("Q19474404"); @Override public EditScrutinizer getScrutinizer() { @@ -70,7 +69,7 @@ public class DistinctValuesScrutinizerTest extends StatementScrutinizerTest { List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, DISTINCT_VALUES_CONSTRAINT_QID)).thenReturn(statementList); + when(fetcher.getConstraintsByType(propertyIdValue, "Q21502410")).thenReturn(statementList); setFetcher(fetcher); scrutinize(update); @@ -91,7 +90,7 @@ public class DistinctValuesScrutinizerTest extends StatementScrutinizerTest { List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, DISTINCT_VALUES_CONSTRAINT_QID)).thenReturn(statementList); + when(fetcher.getConstraintsByType(propertyIdValue, "Q21502410")).thenReturn(statementList); setFetcher(fetcher); scrutinize(update); diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/EntityTypeScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/EntityTypeScrutinizerTest.java index 52c506141..671b59160 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/EntityTypeScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/EntityTypeScrutinizerTest.java @@ -57,8 +57,8 @@ public class EntityTypeScrutinizerTest extends StatementScrutinizerTest { List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue,ALLOWED_ENTITY_TYPES_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, ALLOWED_ENTITY_TYPES_PID)).thenReturn(Collections.singletonList(allowedValue)); + when(fetcher.getConstraintsByType(propertyIdValue,"Q52004125")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P2305")).thenReturn(Collections.singletonList(allowedValue)); setFetcher(fetcher); scrutinize(update); @@ -81,8 +81,8 @@ public class EntityTypeScrutinizerTest extends StatementScrutinizerTest { List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue,ALLOWED_ENTITY_TYPES_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, ALLOWED_ENTITY_TYPES_PID)).thenReturn(Collections.singletonList(itemValue)); + when(fetcher.getConstraintsByType(propertyIdValue,"Q52004125")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P2305")).thenReturn(Collections.singletonList(itemValue)); setFetcher(fetcher); scrutinize(update); diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/FormatScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/FormatScrutinizerTest.java index 0febbc44b..33b8bc681 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/FormatScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/FormatScrutinizerTest.java @@ -43,8 +43,6 @@ import java.util.List; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.openrefine.wikidata.qa.scrutinizers.FormatScrutinizer.FORMAT_CONSTRAINT_QID; -import static org.openrefine.wikidata.qa.scrutinizers.FormatScrutinizer.FORMAT_REGEX_PID; public class FormatScrutinizerTest extends ScrutinizerTest { @@ -54,8 +52,8 @@ public class FormatScrutinizerTest extends ScrutinizerTest { public static Value incompleteMatchValue = Datamodel.makeStringValue(".jpg"); public static String regularExpression = "(?i).+\\.(jpg|jpeg|jpe|png|svg|tif|tiff|gif|xcf|pdf|djvu|webp)"; - public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue(FORMAT_CONSTRAINT_QID); - public static PropertyIdValue regularExpressionParameter = Datamodel.makeWikidataPropertyIdValue(FORMAT_REGEX_PID); + public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue("Q21502404"); + public static PropertyIdValue regularExpressionParameter = Datamodel.makeWikidataPropertyIdValue("P1793"); public static Value regularExpressionFormat = Datamodel.makeStringValue(regularExpression); @Override @@ -78,8 +76,8 @@ public class FormatScrutinizerTest extends ScrutinizerTest { List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, FORMAT_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, FORMAT_REGEX_PID)).thenReturn(Collections.singletonList(regularExpressionFormat)); + when(fetcher.getConstraintsByType(propertyIdValue, "Q21502404")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P1793")).thenReturn(Collections.singletonList(regularExpressionFormat)); setFetcher(fetcher); scrutinize(updateA); assertWarningsRaised(FormatScrutinizer.type); @@ -99,8 +97,8 @@ public class FormatScrutinizerTest extends ScrutinizerTest { List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, FORMAT_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, FORMAT_REGEX_PID)).thenReturn(Collections.singletonList(regularExpressionFormat)); + when(fetcher.getConstraintsByType(propertyIdValue, "Q21502404")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P1793")).thenReturn(Collections.singletonList(regularExpressionFormat)); setFetcher(fetcher); scrutinize(updateA); assertNoWarningRaised(); @@ -120,8 +118,8 @@ public class FormatScrutinizerTest extends ScrutinizerTest { List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, FORMAT_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, FORMAT_REGEX_PID)).thenReturn(Collections.singletonList(regularExpressionFormat)); + when(fetcher.getConstraintsByType(propertyIdValue, "Q21502404")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P1793")).thenReturn(Collections.singletonList(regularExpressionFormat)); setFetcher(fetcher); scrutinize(updateA); assertWarningsRaised(FormatScrutinizer.type); diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/InverseConstaintScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/InverseConstaintScrutinizerTest.java index 6981e48b9..1cde60ec9 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/InverseConstaintScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/InverseConstaintScrutinizerTest.java @@ -41,9 +41,6 @@ import java.util.List; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.openrefine.wikidata.qa.scrutinizers.InverseConstraintScrutinizer.INVERSE_CONSTRAINT_QID; -import static org.openrefine.wikidata.qa.scrutinizers.InverseConstraintScrutinizer.INVERSE_PROPERTY_PID; -import static org.openrefine.wikidata.qa.scrutinizers.InverseConstraintScrutinizer.SYMMETRIC_CONSTRAINT_QID; public class InverseConstaintScrutinizerTest extends StatementScrutinizerTest { @@ -53,9 +50,9 @@ public class InverseConstaintScrutinizerTest extends StatementScrutinizerTest { public static PropertyIdValue symmetricPropertyID = Datamodel.makeWikidataPropertyIdValue("P3373"); public static ItemIdValue symmetricPropertyValue = Datamodel.makeWikidataItemIdValue("Q9545711"); - public static ItemIdValue inverseEntityIdValue = Datamodel.makeWikidataItemIdValue(INVERSE_CONSTRAINT_QID); - public static ItemIdValue symmetricEntityIdValue = Datamodel.makeWikidataItemIdValue(SYMMETRIC_CONSTRAINT_QID); - public static PropertyIdValue propertyParameter = Datamodel.makeWikidataPropertyIdValue(INVERSE_PROPERTY_PID); + public static ItemIdValue inverseEntityIdValue = Datamodel.makeWikidataItemIdValue("Q21510855"); + public static ItemIdValue symmetricEntityIdValue = Datamodel.makeWikidataItemIdValue("Q21510862"); + public static PropertyIdValue propertyParameter = Datamodel.makeWikidataPropertyIdValue("P2306"); @Override public EditScrutinizer getScrutinizer() { @@ -76,8 +73,8 @@ public class InverseConstaintScrutinizerTest extends StatementScrutinizerTest { List statementList = constraintParameterStatementList(inverseEntityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyId, INVERSE_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, INVERSE_PROPERTY_PID)).thenReturn(Collections.singletonList(inversePropertyID)); + when(fetcher.getConstraintsByType(propertyId, "Q21510855")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P2306")).thenReturn(Collections.singletonList(inversePropertyID)); setFetcher(fetcher); scrutinize(update); assertWarningsRaised(InverseConstraintScrutinizer.type); @@ -97,8 +94,8 @@ public class InverseConstaintScrutinizerTest extends StatementScrutinizerTest { List statementList = constraintParameterStatementList(symmetricEntityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(symmetricPropertyID, SYMMETRIC_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, INVERSE_PROPERTY_PID)).thenReturn(Collections.singletonList(symmetricPropertyID)); + when(fetcher.getConstraintsByType(symmetricPropertyID, "Q21510862")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P2306")).thenReturn(Collections.singletonList(symmetricPropertyID)); setFetcher(fetcher); scrutinize(update); assertWarningsRaised(InverseConstraintScrutinizer.type); @@ -118,8 +115,8 @@ public class InverseConstaintScrutinizerTest extends StatementScrutinizerTest { List statementList = constraintParameterStatementList(inverseEntityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyId, INVERSE_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, INVERSE_PROPERTY_PID)).thenReturn(Collections.singletonList(inversePropertyID)); + when(fetcher.getConstraintsByType(propertyId, "Q21510855")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P2306")).thenReturn(Collections.singletonList(inversePropertyID)); setFetcher(fetcher); scrutinize(update); assertNoWarningRaised(); diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/MultiValueScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/MultiValueScrutinizerTest.java index 29f1a8f53..73dd7f512 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/MultiValueScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/MultiValueScrutinizerTest.java @@ -10,21 +10,24 @@ import org.wikidata.wdtk.datamodel.implementation.StatementImpl; import org.wikidata.wdtk.datamodel.interfaces.ItemIdValue; import org.wikidata.wdtk.datamodel.interfaces.PropertyIdValue; import org.wikidata.wdtk.datamodel.interfaces.Snak; +import org.wikidata.wdtk.datamodel.interfaces.SnakGroup; import org.wikidata.wdtk.datamodel.interfaces.Statement; import org.wikidata.wdtk.datamodel.interfaces.Value; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.openrefine.wikidata.qa.scrutinizers.MultiValueScrutinizer.MULTI_VALUE_CONSTRAINT_QID; public class MultiValueScrutinizerTest extends ScrutinizerTest { public static PropertyIdValue propertyIdValue = Datamodel.makeWikidataPropertyIdValue("P1963"); - public static Value valueSnak = Datamodel.makeWikidataItemIdValue("Q5"); - public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue(MULTI_VALUE_CONSTRAINT_QID); + public static Value valueSnak1 = Datamodel.makeWikidataItemIdValue("Q5"); + public static Value valueSnak2 = Datamodel.makeWikidataItemIdValue("Q4"); + public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue("Q21510857"); + public static PropertyIdValue constraintParameter = Datamodel.makeWikidataPropertyIdValue("P2316"); + public static Value constraintStatus = Datamodel.makeWikidataItemIdValue("Q62026391"); @Override public EditScrutinizer getScrutinizer() { @@ -42,9 +45,13 @@ public class MultiValueScrutinizerTest extends ScrutinizerTest { ItemUpdate update = new ItemUpdateBuilder(idA).addStatement(TestingData.generateStatement(idA, idB)) .addStatement(TestingData.generateStatement(idA, idB)).addStatement(statement1).addStatement(statement2).build(); - List statementList = constraintParameterStatementList(entityIdValue, new ArrayList<>()); + Snak snak = Datamodel.makeValueSnak(constraintParameter, constraintStatus); + List snakList1 = Collections.singletonList(snak); + SnakGroup snakGroup = Datamodel.makeSnakGroup(snakList1); + List snakGroupList = Collections.singletonList(snakGroup); + List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, MULTI_VALUE_CONSTRAINT_QID)).thenReturn(statementList); + when(fetcher.getConstraintsByType(propertyIdValue, "Q21510857")).thenReturn(statementList); setFetcher(fetcher); scrutinize(update); @@ -55,14 +62,18 @@ public class MultiValueScrutinizerTest extends ScrutinizerTest { public void testNewItemTrigger() { ItemIdValue idA = TestingData.newIdA; ItemIdValue idB = TestingData.newIdB; - Snak mainSnakValue = Datamodel.makeValueSnak(propertyIdValue, valueSnak); + Snak mainSnakValue = Datamodel.makeValueSnak(propertyIdValue, valueSnak1); Statement statement = new StatementImpl("P1963", mainSnakValue, idA); ItemUpdate updateA = new ItemUpdateBuilder(idA).addStatement(TestingData.generateStatement(idA, idB)).addStatement(statement).build(); ItemUpdate updateB = new ItemUpdateBuilder(idB).addStatement(TestingData.generateStatement(idB, idB)).build(); - List statementList = constraintParameterStatementList(entityIdValue, new ArrayList<>()); + Snak snak = Datamodel.makeValueSnak(constraintParameter, constraintStatus); + List snakList1 = Collections.singletonList(snak); + SnakGroup snakGroup = Datamodel.makeSnakGroup(snakList1); + List snakGroupList = Collections.singletonList(snakGroup); + List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, MULTI_VALUE_CONSTRAINT_QID)).thenReturn(statementList); + when(fetcher.getConstraintsByType(propertyIdValue, "Q21510857")).thenReturn(statementList); setFetcher(fetcher); scrutinize(updateA, updateB); @@ -73,14 +84,18 @@ public class MultiValueScrutinizerTest extends ScrutinizerTest { public void testExistingItemTrigger() { ItemIdValue idA = TestingData.existingId; ItemIdValue idB = TestingData.matchedId; - Snak mainSnakValue = Datamodel.makeValueSnak(propertyIdValue, valueSnak); + Snak mainSnakValue = Datamodel.makeValueSnak(propertyIdValue, valueSnak1); Statement statement = new StatementImpl("P1963", mainSnakValue, idA); ItemUpdate updateA = new ItemUpdateBuilder(idA).addStatement(TestingData.generateStatement(idA, idB)).addStatement(statement).build(); ItemUpdate updateB = new ItemUpdateBuilder(idB).addStatement(TestingData.generateStatement(idB, idB)).build(); - List statementList = constraintParameterStatementList(entityIdValue, new ArrayList<>()); + Snak snak = Datamodel.makeValueSnak(constraintParameter, constraintStatus); + List snakList1 = Collections.singletonList(snak); + SnakGroup snakGroup = Datamodel.makeSnakGroup(snakList1); + List snakGroupList = Collections.singletonList(snakGroup); + List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, MULTI_VALUE_CONSTRAINT_QID)).thenReturn(statementList); + when(fetcher.getConstraintsByType(propertyIdValue, "Q21510857")).thenReturn(statementList); setFetcher(fetcher); scrutinize(updateA, updateB); diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/QualifierCompatibilityScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/QualifierCompatibilityScrutinizerTest.java index d9023f363..8eb64ecaf 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/QualifierCompatibilityScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/QualifierCompatibilityScrutinizerTest.java @@ -44,16 +44,12 @@ import java.util.stream.Collectors; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.openrefine.wikidata.qa.scrutinizers.QualifierCompatibilityScrutinizer.ALLOWED_QUALIFIERS_CONSTRAINT_PID; -import static org.openrefine.wikidata.qa.scrutinizers.QualifierCompatibilityScrutinizer.ALLOWED_QUALIFIERS_CONSTRAINT_QID; -import static org.openrefine.wikidata.qa.scrutinizers.QualifierCompatibilityScrutinizer.MANDATORY_QUALIFIERS_CONSTRAINT_PID; -import static org.openrefine.wikidata.qa.scrutinizers.QualifierCompatibilityScrutinizer.MANDATORY_QUALIFIERS_CONSTRAINT_QID; public class QualifierCompatibilityScrutinizerTest extends StatementScrutinizerTest { - public static ItemIdValue allowedQualifierEntity = Datamodel.makeWikidataItemIdValue(ALLOWED_QUALIFIERS_CONSTRAINT_QID); - public static ItemIdValue mandatoryQualifierEntity = Datamodel.makeWikidataItemIdValue(MANDATORY_QUALIFIERS_CONSTRAINT_QID); - public static PropertyIdValue propertyParameterPID = Datamodel.makeWikidataPropertyIdValue(ALLOWED_QUALIFIERS_CONSTRAINT_PID); + public static ItemIdValue allowedQualifierEntity = Datamodel.makeWikidataItemIdValue("Q21510851"); + public static ItemIdValue mandatoryQualifierEntity = Datamodel.makeWikidataItemIdValue("Q21510856"); + public static PropertyIdValue propertyParameterPID = Datamodel.makeWikidataPropertyIdValue("P2306"); public static PropertyIdValue propertyParameterValue = Datamodel.makeWikidataPropertyIdValue("P585"); public static PropertyIdValue allowedPropertyIdValue = Datamodel.makeWikidataPropertyIdValue("P2196"); @@ -81,8 +77,8 @@ public class QualifierCompatibilityScrutinizerTest extends StatementScrutinizerT List statementList = constraintParameterStatementList(allowedQualifierEntity, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(allowedPropertyIdValue, ALLOWED_QUALIFIERS_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, ALLOWED_QUALIFIERS_CONSTRAINT_PID)).thenReturn(Collections.singletonList(qualifierProperty)); + when(fetcher.getConstraintsByType(allowedPropertyIdValue, "Q21510851")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P2306")).thenReturn(Collections.singletonList(qualifierProperty)); setFetcher(fetcher); scrutinize(update); @@ -103,8 +99,8 @@ public class QualifierCompatibilityScrutinizerTest extends StatementScrutinizerT List statementList = constraintParameterStatementList(mandatoryQualifierEntity, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(mandatoryPropertyIdValue, MANDATORY_QUALIFIERS_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, MANDATORY_QUALIFIERS_CONSTRAINT_PID)).thenReturn(Collections.singletonList(qualifierProperty)); + when(fetcher.getConstraintsByType(mandatoryPropertyIdValue, "Q21510856")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P2306")).thenReturn(Collections.singletonList(qualifierProperty)); setFetcher(fetcher); scrutinize(update); @@ -126,8 +122,8 @@ public class QualifierCompatibilityScrutinizerTest extends StatementScrutinizerT List statementList = constraintParameterStatementList(allowedQualifierEntity, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(allowedPropertyIdValue, ALLOWED_QUALIFIERS_CONSTRAINT_QID)).thenReturn(statementList); - when(fetcher.findValues(snakGroupList, ALLOWED_QUALIFIERS_CONSTRAINT_PID)).thenReturn(Collections.singletonList(qualifierProperty)); + when(fetcher.getConstraintsByType(allowedPropertyIdValue, "Q21510851")).thenReturn(statementList); + when(fetcher.findValues(snakGroupList, "P2306")).thenReturn(Collections.singletonList(qualifierProperty)); setFetcher(fetcher); scrutinize(update); diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/QuantityScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/QuantityScrutinizerTest.java index ac90bdc60..ca1634d83 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/QuantityScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/QuantityScrutinizerTest.java @@ -24,7 +24,6 @@ import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.openrefine.wikidata.qa.scrutinizers.QuantityScrutinizer.ALLOWED_UNITS_CONSTRAINT_PID; import static org.openrefine.wikidata.qa.scrutinizers.QuantityScrutinizer.ALLOWED_UNITS_CONSTRAINT_QID; import static org.openrefine.wikidata.qa.scrutinizers.QuantityScrutinizer.INTEGER_VALUED_CONSTRAINT_QID; import static org.openrefine.wikidata.qa.scrutinizers.QuantityScrutinizer.NO_BOUNDS_CONSTRAINT_QID; @@ -56,7 +55,7 @@ public class QuantityScrutinizerTest extends ValueScrutinizerTest{ public static ItemIdValue noBoundsEntity = Datamodel.makeWikidataItemIdValue(NO_BOUNDS_CONSTRAINT_QID); public static ItemIdValue integerValueEntity = Datamodel.makeWikidataItemIdValue(INTEGER_VALUED_CONSTRAINT_QID); public static ItemIdValue allowedUnitEntity = Datamodel.makeWikidataItemIdValue(ALLOWED_UNITS_CONSTRAINT_QID); - public static PropertyIdValue itemParameterPID = Datamodel.makeWikidataPropertyIdValue(ALLOWED_UNITS_CONSTRAINT_PID); + public static PropertyIdValue itemParameterPID = Datamodel.makeWikidataPropertyIdValue("P2305"); public static Value allowedUnit = Datamodel.makeWikidataItemIdValue("Q5"); @Override @@ -212,7 +211,7 @@ public class QuantityScrutinizerTest extends ValueScrutinizerTest{ List constraintDefinitions = constraintParameterStatementList(allowedUnitEntity, constraintQualifiers); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); when(fetcher.getConstraintsByType(propertyIdValue, ALLOWED_UNITS_CONSTRAINT_QID)).thenReturn(constraintDefinitions); - when(fetcher.findValues(constraintQualifiers, ALLOWED_UNITS_CONSTRAINT_PID)).thenReturn(Collections.singletonList(allowedUnit)); + when(fetcher.findValues(constraintQualifiers, "P2305")).thenReturn(Collections.singletonList(allowedUnit)); setFetcher(fetcher); scrutinize(update); @@ -229,7 +228,7 @@ public class QuantityScrutinizerTest extends ValueScrutinizerTest{ List constraintDefinitions = constraintParameterStatementList(allowedUnitEntity, new ArrayList<>()); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); when(fetcher.getConstraintsByType(propertyIdValue, ALLOWED_UNITS_CONSTRAINT_QID)).thenReturn(constraintDefinitions); - when(fetcher.findValues(any(), eq(ALLOWED_UNITS_CONSTRAINT_PID))).thenReturn(new ArrayList<>()); + when(fetcher.findValues(any(), eq("P2305"))).thenReturn(new ArrayList<>()); setFetcher(fetcher); scrutinize(update); @@ -245,7 +244,7 @@ public class QuantityScrutinizerTest extends ValueScrutinizerTest{ ConstraintFetcher fetcher = mock(ConstraintFetcher.class); when(fetcher.getConstraintsByType(propertyIdValue, ALLOWED_UNITS_CONSTRAINT_QID)).thenReturn(new ArrayList<>()); - when(fetcher.findValues(any(), eq(ALLOWED_UNITS_CONSTRAINT_PID))).thenReturn(new ArrayList<>()); + when(fetcher.findValues(any(), eq("P2305"))).thenReturn(new ArrayList<>()); setFetcher(fetcher); scrutinize(update); diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/RestrictedPositionScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/RestrictedPositionScrutinizerTest.java index 8129dcfc5..247e01a47 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/RestrictedPositionScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/RestrictedPositionScrutinizerTest.java @@ -46,15 +46,18 @@ import static org.mockito.Mockito.when; import static org.openrefine.wikidata.qa.scrutinizers.RestrictedPositionScrutinizer.SCOPE_CONSTRAINT_PID; import static org.openrefine.wikidata.qa.scrutinizers.RestrictedPositionScrutinizer.SCOPE_CONSTRAINT_QID; import static org.openrefine.wikidata.qa.scrutinizers.RestrictedPositionScrutinizer.SCOPE_CONSTRAINT_QUALIFIER_QID; +import static org.openrefine.wikidata.qa.scrutinizers.RestrictedPositionScrutinizer.SCOPE_CONSTRAINT_REFERENCE_QID; import static org.openrefine.wikidata.qa.scrutinizers.RestrictedPositionScrutinizer.SCOPE_CONSTRAINT_VALUE_QID; public class RestrictedPositionScrutinizerTest extends SnakScrutinizerTest { public static PropertyIdValue propertyIdValue = Datamodel.makeWikidataPropertyIdValue("P22"); - public static PropertyIdValue propertyScopeParameter = Datamodel.makeWikidataPropertyIdValue(SCOPE_CONSTRAINT_PID); + public static PropertyIdValue mainSnakPid = Datamodel.makeWikidataPropertyIdValue("P1234"); + public static PropertyIdValue propertyScopeParameter = Datamodel.makeWikidataPropertyIdValue("P5314"); public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue(SCOPE_CONSTRAINT_QID); public static ItemIdValue asMainSnak = Datamodel.makeWikidataItemIdValue(SCOPE_CONSTRAINT_VALUE_QID); public static ItemIdValue asQualifier = Datamodel.makeWikidataItemIdValue(SCOPE_CONSTRAINT_QUALIFIER_QID); + public static ItemIdValue asReference = Datamodel.makeWikidataItemIdValue(SCOPE_CONSTRAINT_REFERENCE_QID); @Override public EditScrutinizer getScrutinizer() { diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/RestrictedValuesScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/RestrictedValuesScrutinizerTest.java index 2e45600ab..52539e5fa 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/RestrictedValuesScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/RestrictedValuesScrutinizerTest.java @@ -34,7 +34,7 @@ public class RestrictedValuesScrutinizerTest extends SnakScrutinizerTest { public static ItemIdValue allowedValueEntity = Datamodel.makeWikidataItemIdValue(ALLOWED_VALUES_CONSTRAINT_QID); public static ItemIdValue disallowedValueEntity = Datamodel.makeWikidataItemIdValue(DISALLOWED_VALUES_CONSTRAINT_QID); - public static PropertyIdValue itemParameterPID = Datamodel.makeWikidataPropertyIdValue(ALLOWED_VALUES_CONSTRAINT_PID); + public static PropertyIdValue itemParameterPID = Datamodel.makeWikidataPropertyIdValue("P2305"); @Override public EditScrutinizer getScrutinizer() { diff --git a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/SingleValueScrutinizerTest.java b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/SingleValueScrutinizerTest.java index 0778d90f4..1af1fdeda 100644 --- a/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/SingleValueScrutinizerTest.java +++ b/extensions/wikidata/tests/src/org/openrefine/wikidata/qa/scrutinizers/SingleValueScrutinizerTest.java @@ -33,15 +33,15 @@ import org.wikidata.wdtk.datamodel.implementation.StatementImpl; import org.wikidata.wdtk.datamodel.interfaces.ItemIdValue; import org.wikidata.wdtk.datamodel.interfaces.PropertyIdValue; import org.wikidata.wdtk.datamodel.interfaces.Snak; +import org.wikidata.wdtk.datamodel.interfaces.SnakGroup; import org.wikidata.wdtk.datamodel.interfaces.Statement; import org.wikidata.wdtk.datamodel.interfaces.Value; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import static org.openrefine.wikidata.qa.scrutinizers.SingleValueScrutinizer.SINGLE_VALUE_CONSTRAINT_QID; public class SingleValueScrutinizerTest extends ScrutinizerTest { @@ -49,7 +49,9 @@ public class SingleValueScrutinizerTest extends ScrutinizerTest { public static Value value1 = Datamodel.makeWikidataItemIdValue("Q6581072"); public static Value value2 = Datamodel.makeWikidataItemIdValue("Q6581097"); - public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue(SINGLE_VALUE_CONSTRAINT_QID); + public static ItemIdValue entityIdValue = Datamodel.makeWikidataItemIdValue("Q19474404"); + public static PropertyIdValue constraintException = Datamodel.makeWikidataPropertyIdValue("P2303"); + public static Value exceptionValue = Datamodel.makeWikidataItemIdValue("Q7409772"); @Override public EditScrutinizer getScrutinizer() { @@ -65,10 +67,14 @@ public class SingleValueScrutinizerTest extends ScrutinizerTest { Statement statement2 = new StatementImpl("P21", snak2, idA); ItemUpdate update = new ItemUpdateBuilder(idA).addStatement(statement1).addStatement(statement2).build(); - List statementList = constraintParameterStatementList(entityIdValue, new ArrayList<>()); + Snak snak = Datamodel.makeValueSnak(constraintException, exceptionValue); + List snakList = Collections.singletonList(snak); + SnakGroup snakGroup = Datamodel.makeSnakGroup(snakList); + List snakGroupList = Collections.singletonList(snakGroup); + List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, SINGLE_VALUE_CONSTRAINT_QID)).thenReturn(statementList); + when(fetcher.getConstraintsByType(propertyIdValue, "Q19474404")).thenReturn(statementList); setFetcher(fetcher); scrutinize(update); assertWarningsRaised(SingleValueScrutinizer.type); @@ -81,10 +87,14 @@ public class SingleValueScrutinizerTest extends ScrutinizerTest { Statement statement1 = new StatementImpl("P21", snak1, idA); ItemUpdate updateA = new ItemUpdateBuilder(idA).addStatement(statement1).build(); - List statementList = constraintParameterStatementList(entityIdValue, new ArrayList<>()); + Snak snak = Datamodel.makeValueSnak(constraintException, exceptionValue); + List snakList = Collections.singletonList(snak); + SnakGroup snakGroup = Datamodel.makeSnakGroup(snakList); + List snakGroupList = Collections.singletonList(snakGroup); + List statementList = constraintParameterStatementList(entityIdValue, snakGroupList); ConstraintFetcher fetcher = mock(ConstraintFetcher.class); - when(fetcher.getConstraintsByType(propertyIdValue, SINGLE_VALUE_CONSTRAINT_QID)).thenReturn(statementList); + when(fetcher.getConstraintsByType(propertyIdValue, "Q19474404")).thenReturn(statementList); setFetcher(fetcher); scrutinize(updateA); assertNoWarningRaised();