mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-28 20:26:19 +01:00
[BUG] Remember topic only in repo search
- If the user is searching repositories with an specific topic, adding any other filter option, such as showing unrelevant repositories or using another sort Forgejo should remember that 'topic only' was set. - Adds integration test. - Resolves #2461
This commit is contained in:
parent
5e1d7b3c82
commit
b4360d504c
2 changed files with 14 additions and 0 deletions
|
@ -2,6 +2,7 @@
|
||||||
<form class="ui form ignore-dirty gt-f1">
|
<form class="ui form ignore-dirty gt-f1">
|
||||||
<input type="hidden" name="sort" value="{{$.SortType}}">
|
<input type="hidden" name="sort" value="{{$.SortType}}">
|
||||||
<input type="hidden" name="language" value="{{$.Language}}">
|
<input type="hidden" name="language" value="{{$.Language}}">
|
||||||
|
<input type="hidden" name="topic" value="{{$.TopicOnly}}">
|
||||||
<div class="ui fluid action input">
|
<div class="ui fluid action input">
|
||||||
{{template "shared/searchinput" dict "Value" .Keyword}}
|
{{template "shared/searchinput" dict "Value" .Keyword}}
|
||||||
{{if .PageIsExploreRepositories}}
|
{{if .PageIsExploreRepositories}}
|
||||||
|
|
|
@ -8,6 +8,7 @@ import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"code.gitea.io/gitea/tests"
|
"code.gitea.io/gitea/tests"
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestExploreRepos(t *testing.T) {
|
func TestExploreRepos(t *testing.T) {
|
||||||
|
@ -15,4 +16,16 @@ func TestExploreRepos(t *testing.T) {
|
||||||
|
|
||||||
req := NewRequest(t, "GET", "/explore/repos")
|
req := NewRequest(t, "GET", "/explore/repos")
|
||||||
MakeRequest(t, req, http.StatusOK)
|
MakeRequest(t, req, http.StatusOK)
|
||||||
|
|
||||||
|
t.Run("Persistent parameters", func(t *testing.T) {
|
||||||
|
defer tests.PrintCurrentTest(t)()
|
||||||
|
|
||||||
|
req := NewRequest(t, "GET", "/explore/repos?topic=1&language=Go&sort=moststars")
|
||||||
|
resp := MakeRequest(t, req, http.StatusOK)
|
||||||
|
htmlDoc := NewHTMLParser(t, resp.Body)
|
||||||
|
|
||||||
|
assert.EqualValues(t, "moststars", htmlDoc.Find("input[type='hidden'][name='sort']").AttrOr("value", "not found"))
|
||||||
|
assert.EqualValues(t, "Go", htmlDoc.Find("input[type='hidden'][name='language']").AttrOr("value", "not found"))
|
||||||
|
assert.EqualValues(t, "true", htmlDoc.Find("input[type='hidden'][name='topic']").AttrOr("value", "not found"))
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue