예제 #1
0
        public void TestForCorrectFeatures()
        {
            var windowFeatureGenerator = new WindowFeatureGenerator(
                new IdentityFeatureGenerator(), 2, 2);

            const int testTokenIndex = 3;

            var features = new List <string>();

            windowFeatureGenerator.CreateFeatures(features, testSentence, testTokenIndex, null);

            Assert.AreEqual(5, features.Count);

            Assert.True(features.Contains(WindowFeatureGenerator.PREV_PREFIX + "2" +
                                          testSentence[testTokenIndex - 2]));
            Assert.True(features.Contains(WindowFeatureGenerator.PREV_PREFIX + "1" +
                                          testSentence[testTokenIndex - 1]));

            Assert.True(features.Contains(testSentence[testTokenIndex]));

            Assert.True(features.Contains(WindowFeatureGenerator.NEXT_PREFIX + "1" +
                                          testSentence[testTokenIndex + 1]));
            Assert.True(features.Contains(WindowFeatureGenerator.NEXT_PREFIX + "2" +
                                          testSentence[testTokenIndex + 2]));
        }
예제 #2
0
        public void TestWindowSizeOne()
        {
            var windowFeatureGenerator = new WindowFeatureGenerator(
                new IdentityFeatureGenerator(), 1, 1);

            const int testTokenIndex = 2;

            var features = new List <string>();

            windowFeatureGenerator.CreateFeatures(features, testSentence, testTokenIndex, null);

            Assert.AreEqual(3, features.Count);
        }
예제 #3
0
        public void TestWindowAtBeginOfSentence()
        {
            var windowFeatureGenerator = new WindowFeatureGenerator(new IdentityFeatureGenerator(), 1, 0);

            const int testTokenIndex = 0;

            var features = new List <string>();

            windowFeatureGenerator.CreateFeatures(features, testSentence, testTokenIndex, null);

            Assert.AreEqual(1, features.Count);

            Assert.AreEqual(features[0], testSentence[testTokenIndex]);
        }
예제 #4
0
        public void TestWindowAtEndOfSentence()
        {
            var windowFeatureGenerator = new WindowFeatureGenerator(
                new IdentityFeatureGenerator(), 0, 1);

            var testTokenIndex = testSentence.Length - 1;

            var features = new List <string>();

            windowFeatureGenerator.CreateFeatures(features, testSentence, testTokenIndex, null);

            Assert.AreEqual(1, features.Count);

            Assert.AreEqual(features[0], testSentence[testTokenIndex]);
        }