Lucene.Net.Search.Spans.TestPayloadSpans.TestHeavilyNestedSpanQuery C# (CSharp) Method

TestHeavilyNestedSpanQuery() private method

private TestHeavilyNestedSpanQuery ( ) : void
return void
		public virtual void  TestHeavilyNestedSpanQuery()
		{
			Spans spans;
			IndexSearcher searcher = GetSearcher();
			
			SpanQuery[] clauses = new SpanQuery[3];
			clauses[0] = new SpanTermQuery(new Term(PayloadHelper.FIELD, "one"));
			clauses[1] = new SpanTermQuery(new Term(PayloadHelper.FIELD, "two"));
			clauses[2] = new SpanTermQuery(new Term(PayloadHelper.FIELD, "three"));
			
			SpanNearQuery spanNearQuery = new SpanNearQuery(clauses, 5, true);
			
			clauses = new SpanQuery[3];
			clauses[0] = spanNearQuery;
			clauses[1] = new SpanTermQuery(new Term(PayloadHelper.FIELD, "five"));
			clauses[2] = new SpanTermQuery(new Term(PayloadHelper.FIELD, "six"));
			
			SpanNearQuery spanNearQuery2 = new SpanNearQuery(clauses, 6, true);
			
			SpanQuery[] clauses2 = new SpanQuery[2];
			clauses2[0] = new SpanTermQuery(new Term(PayloadHelper.FIELD, "eleven"));
			clauses2[1] = new SpanTermQuery(new Term(PayloadHelper.FIELD, "ten"));
			SpanNearQuery spanNearQuery3 = new SpanNearQuery(clauses2, 2, false);
			
			SpanQuery[] clauses3 = new SpanQuery[3];
			clauses3[0] = new SpanTermQuery(new Term(PayloadHelper.FIELD, "nine"));
			clauses3[1] = spanNearQuery2;
			clauses3[2] = spanNearQuery3;
			
			SpanNearQuery nestedSpanNearQuery = new SpanNearQuery(clauses3, 6, false);
			
			spans = nestedSpanNearQuery.GetSpans(searcher.IndexReader);
			Assert.IsTrue(spans != null, "spans is null and it shouldn't be");
			CheckSpans(spans, 2, new int[]{8, 8});
		}