Fix localization of release/tag counters on releases page
This commit is contained in:
		
					parent
					
						
							
								95ccbb5995
							
						
					
				
			
			
				commit
				
					
						83e6b0c0c6
					
				
			
		
					 4 changed files with 22 additions and 10 deletions
				
			
		| 
						 | 
					@ -1231,22 +1231,22 @@ clear_ref = `Clear current reference`
 | 
				
			||||||
filter_branch_and_tag = Filter branch or tag
 | 
					filter_branch_and_tag = Filter branch or tag
 | 
				
			||||||
find_tag = Find tag
 | 
					find_tag = Find tag
 | 
				
			||||||
branches = Branches
 | 
					branches = Branches
 | 
				
			||||||
 | 
					tag = Tag
 | 
				
			||||||
tags = Tags
 | 
					tags = Tags
 | 
				
			||||||
issues = Issues
 | 
					issues = Issues
 | 
				
			||||||
pulls = Pull requests
 | 
					pulls = Pull requests
 | 
				
			||||||
project_board = Projects
 | 
					project_board = Projects
 | 
				
			||||||
packages = Packages
 | 
					packages = Packages
 | 
				
			||||||
actions = Actions
 | 
					actions = Actions
 | 
				
			||||||
 | 
					release = Release
 | 
				
			||||||
 | 
					releases = Releases
 | 
				
			||||||
labels = Labels
 | 
					labels = Labels
 | 
				
			||||||
 | 
					milestones = Milestones
 | 
				
			||||||
org_labels_desc = Organization level labels that can be used with <strong>all repositories</strong> under this organization
 | 
					org_labels_desc = Organization level labels that can be used with <strong>all repositories</strong> under this organization
 | 
				
			||||||
org_labels_desc_manage = manage
 | 
					org_labels_desc_manage = manage
 | 
				
			||||||
 | 
					
 | 
				
			||||||
milestones = Milestones
 | 
					 | 
				
			||||||
commits = Commits
 | 
					commits = Commits
 | 
				
			||||||
commit = Commit
 | 
					commit = Commit
 | 
				
			||||||
release = Release
 | 
					 | 
				
			||||||
releases = Releases
 | 
					 | 
				
			||||||
tag = Tag
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
n_commit_one=%s commit
 | 
					n_commit_one=%s commit
 | 
				
			||||||
n_commit_few=%s commits
 | 
					n_commit_few=%s commits
 | 
				
			||||||
| 
						 | 
					@ -1254,6 +1254,8 @@ n_branch_one=%s branch
 | 
				
			||||||
n_branch_few=%s branches
 | 
					n_branch_few=%s branches
 | 
				
			||||||
n_tag_one=%s tag
 | 
					n_tag_one=%s tag
 | 
				
			||||||
n_tag_few=%s tags
 | 
					n_tag_few=%s tags
 | 
				
			||||||
 | 
					n_release_one = %s release
 | 
				
			||||||
 | 
					n_release_few = %s releases
 | 
				
			||||||
 | 
					
 | 
				
			||||||
released_this = released this
 | 
					released_this = released this
 | 
				
			||||||
file.title = %s at %s
 | 
					file.title = %s at %s
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,9 +5,9 @@
 | 
				
			||||||
	<div class="tw-flex">
 | 
						<div class="tw-flex">
 | 
				
			||||||
		<div class="tw-flex-1 tw-flex tw-items-center">
 | 
							<div class="tw-flex-1 tw-flex tw-items-center">
 | 
				
			||||||
			<h2 class="ui compact small menu small-menu-items">
 | 
								<h2 class="ui compact small menu small-menu-items">
 | 
				
			||||||
				<a class="{{if and .PageIsReleaseList (not .PageIsSingleTag)}}active {{end}}item" href="{{.RepoLink}}/releases">{{ctx.Locale.PrettyNumber .NumReleases}} {{ctx.Locale.TrN .NumReleases "repo.release" "repo.releases"}}</a>
 | 
									<a class="{{if and .PageIsReleaseList (not .PageIsSingleTag)}}active {{end}}item" href="{{.RepoLink}}/releases">{{ctx.Locale.TrN .NumReleases "repo.n_release_one" "repo.n_release_few" (ctx.Locale.PrettyNumber .NumReleases)}}</a>
 | 
				
			||||||
				{{if $canReadCode}}
 | 
									{{if $canReadCode}}
 | 
				
			||||||
					<a class="{{if or .PageIsTagList .PageIsSingleTag}}active {{end}}item" href="{{.RepoLink}}/tags">{{ctx.Locale.PrettyNumber .NumTags}} {{ctx.Locale.TrN .NumTags "repo.tag" "repo.tags"}}</a>
 | 
										<a class="{{if or .PageIsTagList .PageIsSingleTag}}active {{end}}item" href="{{.RepoLink}}/tags">{{ctx.Locale.TrN .NumTags "repo.n_tag_one" "repo.n_tag_few" (ctx.Locale.PrettyNumber .NumTags)}}</a>
 | 
				
			||||||
				{{end}}
 | 
									{{end}}
 | 
				
			||||||
			</h2>
 | 
								</h2>
 | 
				
			||||||
		</div>
 | 
							</div>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,4 +1,5 @@
 | 
				
			||||||
// Copyright 2017 The Gitea Authors. All rights reserved.
 | 
					// Copyright 2017 The Gitea Authors. All rights reserved.
 | 
				
			||||||
 | 
					// Copyright 2024 The Forgejo Authors. All rights reserved.
 | 
				
			||||||
// SPDX-License-Identifier: MIT
 | 
					// SPDX-License-Identifier: MIT
 | 
				
			||||||
 | 
					
 | 
				
			||||||
package integration
 | 
					package integration
 | 
				
			||||||
| 
						 | 
					@ -6,6 +7,7 @@ package integration
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
	"fmt"
 | 
						"fmt"
 | 
				
			||||||
	"net/http"
 | 
						"net/http"
 | 
				
			||||||
 | 
						"strconv"
 | 
				
			||||||
	"testing"
 | 
						"testing"
 | 
				
			||||||
	"time"
 | 
						"time"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -66,6 +68,13 @@ func checkLatestReleaseAndCount(t *testing.T, session *TestSession, repoURL, ver
 | 
				
			||||||
	titleText := htmlDoc.doc.Find("#release-list > li .detail h4 a").First().Text()
 | 
						titleText := htmlDoc.doc.Find("#release-list > li .detail h4 a").First().Text()
 | 
				
			||||||
	assert.EqualValues(t, version, titleText)
 | 
						assert.EqualValues(t, version, titleText)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Check release count in the counter on the Release/Tag switch, as well as that the tab is highlighted
 | 
				
			||||||
 | 
						if count < 10 { // Only check values less than 10, should be enough attempts before this test cracks
 | 
				
			||||||
 | 
							// 10 is the pagination limit, but the counter can have more than that
 | 
				
			||||||
 | 
							releaseTab := htmlDoc.doc.Find(".repository.releases .ui.compact.menu a.active.item[href$='/releases']")
 | 
				
			||||||
 | 
							assert.Contains(t, releaseTab.Text(), strconv.Itoa(count)+" release") // Could be "1 release" or "4 releases"
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	releaseList := htmlDoc.doc.Find("#release-list > li")
 | 
						releaseList := htmlDoc.doc.Find("#release-list > li")
 | 
				
			||||||
	assert.EqualValues(t, count, releaseList.Length())
 | 
						assert.EqualValues(t, count, releaseList.Length())
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -77,7 +86,7 @@ func TestViewReleases(t *testing.T) {
 | 
				
			||||||
	req := NewRequest(t, "GET", "/user2/repo1/releases")
 | 
						req := NewRequest(t, "GET", "/user2/repo1/releases")
 | 
				
			||||||
	session.MakeRequest(t, req, http.StatusOK)
 | 
						session.MakeRequest(t, req, http.StatusOK)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// if CI is to slow this test fail, so lets wait a bit
 | 
						// if CI is too slow this test fail, so lets wait a bit
 | 
				
			||||||
	time.Sleep(time.Millisecond * 100)
 | 
						time.Sleep(time.Millisecond * 100)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -50,12 +50,13 @@ func TestTagViewWithoutRelease(t *testing.T) {
 | 
				
			||||||
	req := NewRequestf(t, "GET", "/%s/releases/tag/no-release", repo.FullName())
 | 
						req := NewRequestf(t, "GET", "/%s/releases/tag/no-release", repo.FullName())
 | 
				
			||||||
	resp := MakeRequest(t, req, http.StatusOK)
 | 
						resp := MakeRequest(t, req, http.StatusOK)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Test that the tags sub-menu is active
 | 
						// Test that the tags sub-menu is active and has a counter
 | 
				
			||||||
	htmlDoc := NewHTMLParser(t, resp.Body)
 | 
						htmlDoc := NewHTMLParser(t, resp.Body)
 | 
				
			||||||
	htmlDoc.AssertElement(t, ".small-menu-items .active.item[href*='/tags']", true)
 | 
						tagsTab := htmlDoc.Find(".small-menu-items .active.item[href$='/tags']")
 | 
				
			||||||
 | 
						assert.Contains(t, tagsTab.Text(), "4 tags")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Test that the release sub-menu isn't active
 | 
						// Test that the release sub-menu isn't active
 | 
				
			||||||
	releaseLink := htmlDoc.Find(".small-menu-items .item[href*='/releases']")
 | 
						releaseLink := htmlDoc.Find(".small-menu-items .item[href$='/releases']")
 | 
				
			||||||
	assert.False(t, releaseLink.HasClass("active"))
 | 
						assert.False(t, releaseLink.HasClass("active"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Test that the title is displayed
 | 
						// Test that the title is displayed
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue