aboutsummaryrefslogtreecommitdiffstats
path: root/linguistics/src/test/java/com/yahoo/language/significance/DefaultSignificanceModelRegistryTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'linguistics/src/test/java/com/yahoo/language/significance/DefaultSignificanceModelRegistryTest.java')
-rw-r--r--linguistics/src/test/java/com/yahoo/language/significance/DefaultSignificanceModelRegistryTest.java49
1 files changed, 44 insertions, 5 deletions
diff --git a/linguistics/src/test/java/com/yahoo/language/significance/DefaultSignificanceModelRegistryTest.java b/linguistics/src/test/java/com/yahoo/language/significance/DefaultSignificanceModelRegistryTest.java
index d4849571b5e..e8594885b9e 100644
--- a/linguistics/src/test/java/com/yahoo/language/significance/DefaultSignificanceModelRegistryTest.java
+++ b/linguistics/src/test/java/com/yahoo/language/significance/DefaultSignificanceModelRegistryTest.java
@@ -6,7 +6,8 @@ import com.yahoo.language.significance.impl.DefaultSignificanceModelRegistry;
import org.junit.Test;
import java.nio.file.Path;
-import java.util.HashMap;
+import java.util.ArrayList;
+import java.util.List;
import static org.junit.jupiter.api.Assertions.*;
@@ -18,10 +19,10 @@ public class DefaultSignificanceModelRegistryTest {
@Test
public void testDefaultSignificanceModelRegistry() {
- HashMap<Language, Path> models = new HashMap<>();
+ List<Path> models = new ArrayList<>();
- models.put(Language.ENGLISH, Path.of("src/test/models/en.json"));
- models.put(Language.NORWEGIAN_BOKMAL, Path.of("src/test/models/no.json"));
+ models.add(Path.of("src/test/models/docv1.json"));
+ models.add(Path.of("src/test/models/docv2.json"));
DefaultSignificanceModelRegistry defaultSignificanceModelRegistry = new DefaultSignificanceModelRegistry(models);
@@ -39,6 +40,45 @@ public class DefaultSignificanceModelRegistryTest {
assertNotNull(englishModel);
assertNotNull(norwegianModel);
+ assertEquals("test::2", englishModel.getId());
+ assertEquals("test::2", norwegianModel.getId());
+
+ assertEquals(4, englishModel.documentFrequency("test").frequency());
+ assertEquals(14, englishModel.documentFrequency("test").corpusSize());
+
+ assertEquals(3, norwegianModel.documentFrequency("nei").frequency());
+ assertEquals(20, norwegianModel.documentFrequency("nei").corpusSize());
+
+ assertEquals(1, norwegianModel.documentFrequency("non-existent-word").frequency());
+ assertEquals(20, norwegianModel.documentFrequency("non-existent-word").corpusSize());
+
+ }
+
+ @Test
+ public void testDefaultSignificanceModelRegistryInOppsiteOrder() {
+
+ List<Path> models = new ArrayList<>();
+
+ models.add(Path.of("src/test/models/docv2.json"));
+ models.add(Path.of("src/test/models/docv1.json"));
+
+ DefaultSignificanceModelRegistry defaultSignificanceModelRegistry = new DefaultSignificanceModelRegistry(models);
+
+ var optionalEnglishModel = defaultSignificanceModelRegistry.getModel(Language.ENGLISH);
+ var optionalNorwegianModel = defaultSignificanceModelRegistry.getModel(Language.NORWEGIAN_BOKMAL);
+
+ assertTrue(optionalEnglishModel.isPresent());
+ assertTrue(optionalNorwegianModel.isPresent());
+
+ var englishModel = optionalEnglishModel.get();
+ var norwegianModel = optionalNorwegianModel.get();
+
+ assertNotNull(englishModel);
+ assertNotNull(norwegianModel);
+
+ assertEquals("test::1", englishModel.getId());
+ assertEquals("test::2", norwegianModel.getId());
+
assertEquals(2, englishModel.documentFrequency("test").frequency());
assertEquals(10, englishModel.documentFrequency("test").corpusSize());
@@ -47,6 +87,5 @@ public class DefaultSignificanceModelRegistryTest {
assertEquals(1, norwegianModel.documentFrequency("non-existent-word").frequency());
assertEquals(20, norwegianModel.documentFrequency("non-existent-word").corpusSize());
-
}
}