public async Task TestWebFullTextSearch() { var client = Client.Initialize(baseUrl); var config = new FullTextSearchConfig("'fat' & 'cat'", "english"); var filteredResponse = await client.Table <User>().Filter("catchphrase", Operator.WFTS, config).Get(); Assert.AreEqual(1, filteredResponse.Models.Count); Assert.AreEqual("supabot", filteredResponse.Models.FirstOrDefault()?.Username); }
public async Task TestPhrasetoFullTextSearch() { var client = Client.Initialize(baseUrl); var config = new FullTextSearchConfig("'cat'", "english"); var filteredResponse = await client.Table <User>().Filter("catchphrase", Operator.PHFTS, config).Get(); var usersResponse = await client.Table <User>().Filter("catchphrase", Operator.NotEqual, null).Get(); var testAgainst = usersResponse.Models.Where(u => u.Catchphrase.Contains("'cat'")).ToList(); CollectionAssert.AreEqual(testAgainst, filteredResponse.Models); }
public void TestFiltersFullTextSearch() { var client = Client.Initialize(baseUrl); // UrlEncoded [2,3] var exp = "(english).bar"; var dict = new Dictionary <Constants.Operator, string> { { Constants.Operator.FTS, $"fts{exp}" }, { Constants.Operator.PHFTS, $"phfts{exp}" }, { Constants.Operator.PLFTS, $"plfts{exp}" }, { Constants.Operator.WFTS, $"wfts{exp}" }, }; foreach (var pair in dict) { var config = new FullTextSearchConfig("bar", "english"); var filter = new QueryFilter("foo", pair.Key, config); var result = client.Table <User>().PrepareFilter(filter); Assert.AreEqual("foo", result.Key); Assert.AreEqual(pair.Value, result.Value); } }