public void TwoKeywords() { var builder = new LuceneTokenisedQueryBuilder(); var query = builder.AnyOfTheseTermsInThisField(new string[] { "search", "\"in quotes\"" }, new SearchField() { FieldName = "test" }, true); Assert.AreEqual(" +(test:search test:\"in quotes\")", query); }
public void KeywordStartingWithIsInvalid() { var builder = new LuceneTokenisedQueryBuilder(); var query = builder.AllOfTheseTermsInAnyOfTheseFields(new string[] { "-search" }, new SearchField[] { new SearchField() { FieldName = "test" } }, true); Assert.AreEqual(" +((+test:search))", query); }
public void HyphenOnlyAsKeywordIsRemoved() { var builder = new LuceneTokenisedQueryBuilder(); var query = builder.AllOfTheseTermsInAnyOfTheseFields(new string[] { "-" }, new SearchField[] { new SearchField() { FieldName = "test" } }, true); Assert.AreEqual(String.Empty, query); }
public void HyphenInKeywordIsRemoved() { var builder = new LuceneTokenisedQueryBuilder(); var query = builder.AllOfTheseTermsInAnyOfTheseFields(new string[] { "part-time" }, new SearchField[] { new SearchField() { FieldName = "test" } }, true); Assert.AreEqual(" +((+test:part time))", query); }
public void NoKeywordsNoQuery() { var builder = new LuceneTokenisedQueryBuilder(); var query = builder.AnyOfTheseTermsInThisField(new string[0], new SearchField() { FieldName = "test" }, true); Assert.AreEqual(String.Empty, query); }
public void TwoKeywordsTwoFieldsOneBoostedAllMatch() { var builder = new LuceneTokenisedQueryBuilder(); var query = builder.AllOfTheseTermsInAnyOfTheseFields(new string[] { "search", "\"in quotes\"" }, new SearchField[] { new SearchField() { FieldName = "test", Boost = 2.5 }, new SearchField() { FieldName = "test2" } }, true); Assert.AreEqual(" +((+test:search^2.5 +test:\"in quotes\"^2.5) (+test2:search +test2:\"in quotes\"))", query); }
public void TwoKeywordsTwoFieldsAnyMatch() { var builder = new LuceneTokenisedQueryBuilder(); var query = builder.AnyOfTheseTermsInAnyOfTheseFields(new string[] { "search", "\"in quotes\"" }, new SearchField[] { new SearchField() { FieldName = "test" }, new SearchField() { FieldName = "test2" } }, true); Assert.AreEqual(" +((test:search test:\"in quotes\") (test2:search test2:\"in quotes\"))", query); }