code.gitea.io/gitea@v1.22.3/tests/integration/repo_commits_search_test.go (about)

     1  // Copyright 2019 The Gitea Authors. All rights reserved.
     2  // SPDX-License-Identifier: MIT
     3  
     4  package integration
     5  
     6  import (
     7  	"net/http"
     8  	"net/url"
     9  	"strings"
    10  	"testing"
    11  
    12  	"code.gitea.io/gitea/tests"
    13  
    14  	"github.com/stretchr/testify/assert"
    15  )
    16  
    17  func testRepoCommitsSearch(t *testing.T, query, commit string) {
    18  	session := loginUser(t, "user2")
    19  
    20  	// Request repository commits page
    21  	req := NewRequestf(t, "GET", "/user2/commits_search_test/commits/branch/master/search?q=%s", url.QueryEscape(query))
    22  	resp := session.MakeRequest(t, req, http.StatusOK)
    23  
    24  	doc := NewHTMLParser(t, resp.Body)
    25  	sel := doc.doc.Find("#commits-table tbody tr td.sha a")
    26  	assert.EqualValues(t, commit, strings.TrimSpace(sel.Text()))
    27  }
    28  
    29  func TestRepoCommitsSearch(t *testing.T) {
    30  	defer tests.PrepareTestEnv(t)()
    31  	testRepoCommitsSearch(t, "e8eabd", "")
    32  	testRepoCommitsSearch(t, "38a9cb", "")
    33  	testRepoCommitsSearch(t, "6e8e", "6e8eabd9a7")
    34  	testRepoCommitsSearch(t, "58e97", "58e97d1a24")
    35  	testRepoCommitsSearch(t, "[build]", "")
    36  	testRepoCommitsSearch(t, "author:alice", "6e8eabd9a7")
    37  	testRepoCommitsSearch(t, "author:alice 6e8ea", "6e8eabd9a7")
    38  	testRepoCommitsSearch(t, "committer:Tom", "58e97d1a24")
    39  	testRepoCommitsSearch(t, "author:bob commit-4", "58e97d1a24")
    40  	testRepoCommitsSearch(t, "author:bob commit after:2019-03-03", "58e97d1a24")
    41  	testRepoCommitsSearch(t, "committer:alice 6e8e before:2019-03-02", "6e8eabd9a7")
    42  	testRepoCommitsSearch(t, "committer:alice commit before:2019-03-02", "6e8eabd9a7")
    43  	testRepoCommitsSearch(t, "committer:alice author:tom commit before:2019-03-04 after:2019-03-02", "0a8499a22a")
    44  }