Ejemplo n.º 1
0
        public virtual void  TestSpans1()
        {
            SpanQuery q1 = new SpanTermQuery(new Term("first", "sally"));
            SpanQuery q2 = new SpanTermQuery(new Term("first", "james"));
            SpanQuery qA = new SpanOrQuery(new SpanQuery[] { q1, q2 });
            SpanQuery qB = new FieldMaskingSpanQuery(qA, "id");

            Check(qA, new int[] { 0, 1, 2, 4 });
            Check(qB, new int[] { 0, 1, 2, 4 });

            Spans spanA = qA.GetSpans(searcher.GetIndexReader());
            Spans spanB = qB.GetSpans(searcher.GetIndexReader());

            while (spanA.Next())
            {
                Assert.IsTrue(spanB.Next(), "spanB not still going");
                Assert.AreEqual(S(spanA), S(spanB), "spanA not equal spanB");
            }
            Assert.IsTrue(!(spanB.Next()), "spanB still going even tough spanA is done");
        }
Ejemplo n.º 2
0
        public virtual void  TestSpans0()
        {
            SpanQuery q1 = new SpanTermQuery(new Term("gender", "female"));
            SpanQuery q2 = new SpanTermQuery(new Term("first", "james"));
            SpanQuery q  = new SpanOrQuery(new SpanQuery[] { q1, new FieldMaskingSpanQuery(q2, "gender") });

            Check(q, new int[] { 0, 1, 2, 3, 4 });

            Spans span = q.GetSpans(searcher.GetIndexReader());

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(0, 0, 1), S(span));

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(1, 0, 1), S(span));

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(1, 1, 2), S(span));

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(2, 0, 1), S(span));

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(2, 1, 2), S(span));

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(2, 2, 3), S(span));

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(3, 0, 1), S(span));

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(4, 0, 1), S(span));

            Assert.AreEqual(true, span.Next());
            Assert.AreEqual(S(4, 1, 2), S(span));

            Assert.AreEqual(false, span.Next());
        }
Ejemplo n.º 3
0
		public virtual void  TestSpans1()
		{
			SpanQuery q1 = new SpanTermQuery(new Term("first", "sally"));
			SpanQuery q2 = new SpanTermQuery(new Term("first", "james"));
			SpanQuery qA = new SpanOrQuery(new SpanQuery[]{q1, q2});
			SpanQuery qB = new FieldMaskingSpanQuery(qA, "id");
			
			Check(qA, new int[]{0, 1, 2, 4});
			Check(qB, new int[]{0, 1, 2, 4});
			
			Spans spanA = qA.GetSpans(searcher.GetIndexReader());
			Spans spanB = qB.GetSpans(searcher.GetIndexReader());
			
			while (spanA.Next())
			{
				Assert.IsTrue(spanB.Next(), "spanB not still going");
				Assert.AreEqual(S(spanA), S(spanB), "spanA not equal spanB");
			}
			Assert.IsTrue(!(spanB.Next()), "spanB still going even tough spanA is done");
		}
Ejemplo n.º 4
0
		public virtual void  TestSpans0()
		{
			SpanQuery q1 = new SpanTermQuery(new Term("gender", "female"));
			SpanQuery q2 = new SpanTermQuery(new Term("first", "james"));
			SpanQuery q = new SpanOrQuery(new SpanQuery[]{q1, new FieldMaskingSpanQuery(q2, "gender")});
			Check(q, new int[]{0, 1, 2, 3, 4});
			
			Spans span = q.GetSpans(searcher.GetIndexReader());
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(0, 0, 1), S(span));
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(1, 0, 1), S(span));
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(1, 1, 2), S(span));
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(2, 0, 1), S(span));
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(2, 1, 2), S(span));
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(2, 2, 3), S(span));
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(3, 0, 1), S(span));
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(4, 0, 1), S(span));
			
			Assert.AreEqual(true, span.Next());
			Assert.AreEqual(S(4, 1, 2), S(span));
			
			Assert.AreEqual(false, span.Next());
		}