mirror of
https://codeberg.org/forgejo/forgejo
synced 2024-09-12 01:41:32 +02:00
- Backport of #2489
- 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
(cherry picked from commit b4360d504c
)
33 lines
982 B
Go
33 lines
982 B
Go
// Copyright 2017 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package integration
|
|
|
|
import (
|
|
"net/http"
|
|
"testing"
|
|
|
|
"code.gitea.io/gitea/tests"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestExploreRepos(t *testing.T) {
|
|
defer tests.PrepareTestEnv(t)()
|
|
|
|
req := NewRequest(t, "GET", "/explore/repos")
|
|
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"))
|
|
})
|
|
}
|