mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-30 06:38:37 -04:00 
			
		
		
		
	| @@ -43,6 +43,7 @@ func ShowBranchFeed(ctx *context.Context, repo *repo.Repository, formatType stri | ||||
| 			}, | ||||
| 			Description: commit.Message(), | ||||
| 			Content:     commit.Message(), | ||||
| 			Created:     commit.Committer.When, | ||||
| 		}) | ||||
| 	} | ||||
|  | ||||
|   | ||||
| @@ -55,6 +55,7 @@ func ShowFileFeed(ctx *context.Context, repo *repo.Repository, formatType string | ||||
| 			}, | ||||
| 			Description: commit.Message(), | ||||
| 			Content:     commit.Message(), | ||||
| 			Created:     commit.Committer.When, | ||||
| 		}) | ||||
| 	} | ||||
|  | ||||
|   | ||||
							
								
								
									
										35
									
								
								tests/integration/feed_repo_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								tests/integration/feed_repo_test.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | ||||
| // Copyright 2025 The Gitea Authors. All rights reserved. | ||||
| // SPDX-License-Identifier: MIT | ||||
|  | ||||
| package integration | ||||
|  | ||||
| import ( | ||||
| 	"encoding/xml" | ||||
| 	"net/http" | ||||
| 	"testing" | ||||
|  | ||||
| 	"code.gitea.io/gitea/tests" | ||||
|  | ||||
| 	"github.com/stretchr/testify/assert" | ||||
| ) | ||||
|  | ||||
| func TestFeedRepo(t *testing.T) { | ||||
| 	t.Run("RSS", func(t *testing.T) { | ||||
| 		defer tests.PrepareTestEnv(t)() | ||||
|  | ||||
| 		req := NewRequest(t, "GET", "/user2/repo1.rss") | ||||
| 		resp := MakeRequest(t, req, http.StatusOK) | ||||
|  | ||||
| 		data := resp.Body.String() | ||||
| 		assert.Contains(t, data, `<rss version="2.0"`) | ||||
|  | ||||
| 		var rss RSS | ||||
| 		err := xml.Unmarshal(resp.Body.Bytes(), &rss) | ||||
| 		assert.NoError(t, err) | ||||
| 		assert.Contains(t, rss.Channel.Link, "/user2/repo1") | ||||
| 		assert.NotEmpty(t, rss.Channel.PubDate) | ||||
| 		assert.Len(t, rss.Channel.Items, 1) | ||||
| 		assert.EqualValues(t, "issue5", rss.Channel.Items[0].Description) | ||||
| 		assert.NotEmpty(t, rss.Channel.Items[0].PubDate) | ||||
| 	}) | ||||
| } | ||||
| @@ -4,6 +4,7 @@ | ||||
| package integration | ||||
| 
 | ||||
| import ( | ||||
| 	"encoding/xml" | ||||
| 	"net/http" | ||||
| 	"testing" | ||||
| 
 | ||||
| @@ -12,7 +13,23 @@ import ( | ||||
| 	"github.com/stretchr/testify/assert" | ||||
| ) | ||||
| 
 | ||||
| func TestFeed(t *testing.T) { | ||||
| // RSS is a struct to unmarshal RSS feeds test only | ||||
| type RSS struct { | ||||
| 	Channel struct { | ||||
| 		Title       string `xml:"title"` | ||||
| 		Link        string `xml:"link"` | ||||
| 		Description string `xml:"description"` | ||||
| 		PubDate     string `xml:"pubDate"` | ||||
| 		Items       []struct { | ||||
| 			Title       string `xml:"title"` | ||||
| 			Link        string `xml:"link"` | ||||
| 			Description string `xml:"description"` | ||||
| 			PubDate     string `xml:"pubDate"` | ||||
| 		} `xml:"item"` | ||||
| 	} `xml:"channel"` | ||||
| } | ||||
| 
 | ||||
| func TestFeedUser(t *testing.T) { | ||||
| 	t.Run("User", func(t *testing.T) { | ||||
| 		t.Run("Atom", func(t *testing.T) { | ||||
| 			defer tests.PrepareTestEnv(t)() | ||||
| @@ -32,6 +49,12 @@ func TestFeed(t *testing.T) { | ||||
| 
 | ||||
| 			data := resp.Body.String() | ||||
| 			assert.Contains(t, data, `<rss version="2.0"`) | ||||
| 
 | ||||
| 			var rss RSS | ||||
| 			err := xml.Unmarshal(resp.Body.Bytes(), &rss) | ||||
| 			assert.NoError(t, err) | ||||
| 			assert.Contains(t, rss.Channel.Link, "/user2") | ||||
| 			assert.NotEmpty(t, rss.Channel.PubDate) | ||||
| 		}) | ||||
| 	}) | ||||
| } | ||||
		Reference in New Issue
	
	Block a user