/* * Carrot2 project. * * Copyright (C) 2002-2016, Dawid Weiss, Stanisław Osiński. * All rights reserved. * * Refer to the full license file "carrot2.LICENSE" * in the root folder of the repository checkout or at: * http://www.carrot2.org/carrot2.LICENSE */ package org.carrot2.text.preprocessing.filter; import org.carrot2.text.linguistic.*; import org.carrot2.text.preprocessing.LabelFilterProcessor; import org.carrot2.text.preprocessing.LabelFilterTestBase; import org.junit.Test; /** * Test cases for {@link StopLabelFilter}. */ public class StopWordLabelFilterEnglishTest extends LabelFilterTestBase { @Override protected void initializeFilters(LabelFilterProcessor filterProcessor) { filterProcessor.completeLabelFilter.enabled = true; filterProcessor.stopWordLabelFilter.enabled = true; } @Override protected ILexicalDataFactory createLexicalDataFactory() { final DefaultLexicalDataFactory factory = new DefaultLexicalDataFactory(); factory.mergeResources = false; return factory; } @Test public void testEmpty() { final int [] expectedLabelsFeatureIndex = new int [] {}; check(expectedLabelsFeatureIndex); } @Test public void testNonStopWords() { createDocuments("coal . mining", "coal . mining"); final int [] expectedLabelsFeatureIndex = new int [] { 0, 1 }; check(expectedLabelsFeatureIndex); } @Test public void testStopWords() { createDocuments("I . HAVE . coal", "I . HAVE . coal"); final int [] expectedLabelsFeatureIndex = new int [] { wordIndices.get("coal") }; check(expectedLabelsFeatureIndex); } @Test public void testStopWordsInPhrases() { createDocuments("of coal mining for", "of coal mining for"); final int [] expectedLabelsFeatureIndex = new int [] { 4 }; check(expectedLabelsFeatureIndex, 0); } }