Skip to content

Commit 4c7bce4

Browse files
committed
added a few more unit tests to all the awesome new suggest stuff
1 parent bdd51bc commit 4c7bce4

File tree

4 files changed

+78
-15
lines changed

4 files changed

+78
-15
lines changed

src/Nest.Tests.Integration/Search/QueryDSLTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ public void TermSuggest()
154154

155155
var results = this._client.Search<ElasticSearchProject>(s => s
156156
.Query(q => q.MatchAll())
157-
.TermSuggest("mySuggest", m => m.SuggestMode(SuggestMode.Always).Text(wrongCountry).Size(1).OnField("country"))
157+
.SuggestTerm("mySuggest", m => m.SuggestMode(SuggestMode.Always).Text(wrongCountry).Size(1).OnField("country"))
158158
);
159159

160160
Assert.NotNull(results);
@@ -179,7 +179,7 @@ public void PhraseSuggest()
179179
{
180180
var results = this._client.Search<ElasticSearchProject>(s => s
181181
.Query(q => q.MatchAll())
182-
.PhraseSuggest("myPhraseSuggest", m => m.Text("Nostrud frankufrter dseerunt ulalmco").Size(1).OnField("content"))
182+
.SuggestPhrase("myPhraseSuggest", m => m.Text("Nostrud frankufrter dseerunt ulalmco").Size(1).OnField("content"))
183183
);
184184

185185
Assert.NotNull(results);

src/Nest.Tests.Unit/Search/suggest/PhraseSuggestTests.cs

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,36 @@ public void PhraseSuggestDescriptorDirectGeneratorTest()
5252
Assert.True(json.JsonEquals(expected), json);
5353
}
5454

55+
[Test]
56+
public void PhraseSuggestOnSearchTest()
57+
{
58+
var search = this._client.Search<ElasticSearchProject>(s => s
59+
.SuggestPhrase("myphrasesuggest", ts => ts
60+
.Text("n")
61+
.Analyzer("body")
62+
.OnField("bigram")
63+
.Size(1)
64+
.MaxErrors(0.5m)
65+
.GramSize(2)
66+
)
67+
);
5568

69+
var expected = @"{
70+
suggest: {
71+
myphrasesuggest: {
72+
text: ""n"",
73+
phrase: {
74+
""gram_size"": 2,
75+
""max_errors"": 0.5,
76+
""field"": ""bigram"",
77+
""analyzer"": ""body"",
78+
""size"": 1
79+
}
80+
}
81+
}
82+
}";
83+
var json = search.ConnectionStatus.Request;
84+
Assert.True(json.JsonEquals(expected), json);
85+
}
5686
}
5787
}

src/Nest.Tests.Unit/Search/suggest/TermSuggestTests.cs

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,38 @@ public void TermSuggestDescriptorTest()
3030
Assert.True(json.JsonEquals(expected), json);
3131
}
3232

33+
[Test]
34+
public void TermSuggestOnSearchTest()
35+
{
36+
var search = this._client.Search<ElasticSearchProject>(s => s
37+
.SuggestTerm("mytermsuggest", ts=>ts
38+
.Text("n")
39+
.MaxEdits(3)
40+
.MaxInspections(17)
41+
.OnField("field1")
42+
.Size(3)
43+
.SuggestMode(SuggestMode.Missing)
44+
)
45+
);
46+
47+
var expected = @"{
48+
suggest: {
49+
mytermsuggest: {
50+
text: ""n"",
51+
term: {
52+
suggest_mode: ""missing"",
53+
max_edits: 3,
54+
max_inspections: 17,
55+
field: ""field1"",
56+
size: 3
3357
58+
}
59+
}
60+
}
61+
}";
62+
var json = search.ConnectionStatus.Request;
63+
Assert.True(json.JsonEquals(expected), json);
64+
}
3465

3566

3667
}

src/Nest/DSL/SearchDescriptor.cs

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -877,41 +877,43 @@ public SearchDescriptor<T> FacetFilter(string name, Func<FilterDescriptor<T>, Ba
877877
return this;
878878
}
879879

880-
public SearchDescriptor<T> TermSuggest(string name, Func<TermSuggestDescriptor<T>, TermSuggestDescriptor<T>> suggest)
880+
public SearchDescriptor<T> SuggestTerm(string name, Func<TermSuggestDescriptor<T>, TermSuggestDescriptor<T>> suggest)
881881
{
882882
name.ThrowIfNullOrEmpty("name");
883883
suggest.ThrowIfNull("suggest");
884884
if (this._Suggest == null)
885885
this._Suggest = new Dictionary<string, SuggestDescriptorBucket<T>>();
886-
TermSuggestDescriptor<T> desc = new TermSuggestDescriptor<T>();
887-
TermSuggestDescriptor<T> item = suggest(desc);
888-
SuggestDescriptorBucket<T> bucket = new SuggestDescriptorBucket<T> { _Text = item._Text, TermSuggest = item };
886+
var desc = new TermSuggestDescriptor<T>();
887+
var item = suggest(desc);
888+
var bucket = new SuggestDescriptorBucket<T> { _Text = item._Text, TermSuggest = item };
889889
this._Suggest.Add(name, bucket);
890890
return this;
891891
}
892892

893-
public SearchDescriptor<T> PhraseSuggest(string name, Func<PhraseSuggestDescriptor<T>, PhraseSuggestDescriptor<T>> suggest)
893+
public SearchDescriptor<T> SuggestPhrase(string name, Func<PhraseSuggestDescriptor<T>, PhraseSuggestDescriptor<T>> suggest)
894894
{
895895
name.ThrowIfNullOrEmpty("name");
896896
suggest.ThrowIfNull("suggest");
897897
if (this._Suggest == null)
898898
this._Suggest = new Dictionary<string, SuggestDescriptorBucket<T>>();
899-
PhraseSuggestDescriptor<T> desc = new PhraseSuggestDescriptor<T>();
900-
PhraseSuggestDescriptor<T> item = suggest(desc);
901-
SuggestDescriptorBucket<T> bucket = new SuggestDescriptorBucket<T> { _Text = item._Text, PhraseSuggest = item };
899+
900+
var desc = new PhraseSuggestDescriptor<T>();
901+
var item = suggest(desc);
902+
var bucket = new SuggestDescriptorBucket<T> { _Text = item._Text, PhraseSuggest = item };
902903
this._Suggest.Add(name, bucket);
903904
return this;
904905
}
905906

906-
public SearchDescriptor<T> CompletionSuggest(string name, Func<CompletionSuggestDescriptor<T>, CompletionSuggestDescriptor<T>> suggest)
907+
public SearchDescriptor<T> SuggestCompletion(string name, Func<CompletionSuggestDescriptor<T>, CompletionSuggestDescriptor<T>> suggest)
907908
{
908909
name.ThrowIfNullOrEmpty("name");
909910
suggest.ThrowIfNull("suggest");
910911
if (this._Suggest == null)
911-
this._Suggest = new Dictionary<String, SuggestDescriptorBucket<T>>();
912-
CompletionSuggestDescriptor<T> desc = new CompletionSuggestDescriptor<T>();
913-
CompletionSuggestDescriptor<T> item = suggest(desc);
914-
SuggestDescriptorBucket<T> bucket = new SuggestDescriptorBucket<T> { _Text = item._Text, CompletionSuggest = item };
912+
this._Suggest = new Dictionary<string, SuggestDescriptorBucket<T>>();
913+
914+
var desc = new CompletionSuggestDescriptor<T>();
915+
var item = suggest(desc);
916+
var bucket = new SuggestDescriptorBucket<T> { _Text = item._Text, CompletionSuggest = item };
915917
this._Suggest.Add(name, bucket);
916918
return this;
917919
}

0 commit comments

Comments
 (0)