示例#1
0
        public void Test()
        {
            String test = "The quick red fox jumped over the lazy brown dogs";

            TokenOffsetPayloadTokenFilter nptf = new TokenOffsetPayloadTokenFilter(new WhitespaceTokenizer(new StringReader(test)));
            int count = 0;
            IPayloadAttribute payloadAtt = nptf.GetAttribute <IPayloadAttribute>();
            IOffsetAttribute  offsetAtt  = nptf.GetAttribute <IOffsetAttribute>();

            while (nptf.IncrementToken())
            {
                Payload pay = payloadAtt.Payload;
                Assert.True(pay != null, "pay is null and it shouldn't be");
                byte[] data  = pay.GetData();
                int    start = PayloadHelper.DecodeInt(data, 0);
                Assert.True(start == offsetAtt.StartOffset, start + " does not equal: " + offsetAtt.StartOffset);
                int end = PayloadHelper.DecodeInt(data, 4);
                Assert.True(end == offsetAtt.EndOffset, end + " does not equal: " + offsetAtt.EndOffset);
                count++;
            }
            Assert.True(count == 10, count + " does not equal: " + 10);
        }