Files
agent/backend/internal/logic/files/service_test.go

30 lines
755 B
Go
Raw Normal View History

2026-07-18 16:03:06 +08:00
package files
import (
"strings"
"testing"
"github.com/stretchr/testify/require"
)
func TestSaveStoresFileUnderProjectDirectory(t *testing.T) {
service := NewService(t.TempDir())
stored, err := service.Save(12, "brief.md", strings.NewReader("hello"))
require.NoError(t, err)
require.Equal(t, "brief.md", stored.OriginalName)
require.Contains(t, stored.RelativePath, "projects/12/")
require.FileExists(t, stored.AbsolutePath)
}
func TestSaveNeutralizesPathTraversal(t *testing.T) {
service := NewService(t.TempDir())
stored, err := service.Save(12, "..\\..\\secret.txt", strings.NewReader("hello"))
require.NoError(t, err)
require.Equal(t, "secret.txt", stored.OriginalName)
require.Contains(t, stored.RelativePath, "projects/12/")
}