mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-23 14:53:34 +01:00
feat: set fuzzy as default for issue search (#5270)
Closes #5225 Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5270 Reviewed-by: Otto <otto@codeberg.org> Reviewed-by: 0ko <0ko@noreply.codeberg.org> Co-authored-by: Shiny Nematoda <snematoda.751k2@aleeas.com> Co-committed-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
This commit is contained in:
parent
630595a7f3
commit
6178a46fe2
3 changed files with 15 additions and 13 deletions
|
@ -203,7 +203,7 @@ func issues(ctx *context.Context, milestoneID, projectID int64, isPullOption opt
|
||||||
keyword = ""
|
keyword = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
isFuzzy := ctx.FormBool("fuzzy")
|
isFuzzy := ctx.FormOptionalBool("fuzzy").ValueOrDefault(true)
|
||||||
|
|
||||||
var mileIDs []int64
|
var mileIDs []int64
|
||||||
if milestoneID > 0 || milestoneID == db.NoConditionID { // -1 to get those issues which have no any milestone assigned
|
if milestoneID > 0 || milestoneID == db.NoConditionID { // -1 to get those issues which have no any milestone assigned
|
||||||
|
|
|
@ -448,7 +448,7 @@ func buildIssueOverview(ctx *context.Context, unitType unit.Type) {
|
||||||
User: ctx.Doer,
|
User: ctx.Doer,
|
||||||
}
|
}
|
||||||
|
|
||||||
isFuzzy := ctx.FormBool("fuzzy")
|
isFuzzy := ctx.FormOptionalBool("fuzzy").ValueOrDefault(true)
|
||||||
|
|
||||||
// Search all repositories which
|
// Search all repositories which
|
||||||
//
|
//
|
||||||
|
|
|
@ -146,17 +146,19 @@ func TestViewIssuesKeyword(t *testing.T) {
|
||||||
assert.EqualValues(t, 0, issuesSelection.Length())
|
assert.EqualValues(t, 0, issuesSelection.Length())
|
||||||
|
|
||||||
// should match as 'first' when fuzzy seaeching is enabled
|
// should match as 'first' when fuzzy seaeching is enabled
|
||||||
req = NewRequestf(t, "GET", "%s/issues?q=%st&fuzzy=true", repo.Link(), keyword)
|
for _, fmt := range []string{"%s/issues?q=%st&fuzzy=true", "%s/issues?q=%st"} {
|
||||||
resp = MakeRequest(t, req, http.StatusOK)
|
req = NewRequestf(t, "GET", fmt, repo.Link(), keyword)
|
||||||
htmlDoc = NewHTMLParser(t, resp.Body)
|
resp = MakeRequest(t, req, http.StatusOK)
|
||||||
issuesSelection = getIssuesSelection(t, htmlDoc)
|
htmlDoc = NewHTMLParser(t, resp.Body)
|
||||||
assert.EqualValues(t, 1, issuesSelection.Length())
|
issuesSelection = getIssuesSelection(t, htmlDoc)
|
||||||
issuesSelection.Each(func(_ int, selection *goquery.Selection) {
|
assert.EqualValues(t, 1, issuesSelection.Length())
|
||||||
issue := getIssue(t, repo.ID, selection)
|
issuesSelection.Each(func(_ int, selection *goquery.Selection) {
|
||||||
assert.False(t, issue.IsClosed)
|
issue := getIssue(t, repo.ID, selection)
|
||||||
assert.False(t, issue.IsPull)
|
assert.False(t, issue.IsClosed)
|
||||||
assertMatch(t, issue, keyword)
|
assert.False(t, issue.IsPull)
|
||||||
})
|
assertMatch(t, issue, keyword)
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestViewIssuesSearchOptions(t *testing.T) {
|
func TestViewIssuesSearchOptions(t *testing.T) {
|
||||||
|
|
Loading…
Reference in a new issue