1
0
Fork 0
mirror of https://codeberg.org/forgejo/forgejo.git synced 2025-09-30 19:22:08 +00:00
forgejo/services/convert/attachment_test.go

57 lines
1.4 KiB
Go
Raw Normal View History

// Copyright 2025 The Forgejo Authors. All rights reserved.
// SPDX-License-Identifier: GPL-3.0-or-later
package convert
import (
"fmt"
"testing"
"time"
repo_model "forgejo.org/models/repo"
"forgejo.org/models/unittest"
"forgejo.org/modules/setting"
api "forgejo.org/modules/structs"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestToWebAttachment(t *testing.T) {
require.NoError(t, unittest.PrepareTestDatabase())
headRepo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 1})
attachment := &repo_model.Attachment{
ID: 10,
UUID: "uuidxxx",
RepoID: 1,
IssueID: 1,
ReleaseID: 0,
UploaderID: 0,
CommentID: 0,
Name: "test.png",
DownloadCount: 90,
Size: 30,
NoAutoTime: false,
CreatedUnix: 9342,
CustomDownloadURL: "",
ExternalURL: "",
}
webAttachment := ToWebAttachment(headRepo, attachment)
assert.NotNil(t, webAttachment)
assert.Equal(t, &api.WebAttachment{
Attachment: &api.Attachment{
ID: 10,
Name: "test.png",
Created: time.Unix(9342, 0),
DownloadCount: 90,
Size: 30,
UUID: "uuidxxx",
DownloadURL: fmt.Sprintf("%sattachments/uuidxxx", setting.AppURL),
Type: "attachment",
},
MimeType: "image/png",
}, webAttachment)
}