Fix order of files #6

Merged
misaka00251 merged 1 commits from HNO3Miracle/go2spec:fix-order-of-files into master 2026-06-11 02:23:43 +00:00
2 changed files with 29 additions and 3 deletions
+24
View File
@@ -87,6 +87,30 @@ func TestCleanSpecAssetPath(t *testing.T) {
}
}
func TestWriteLicenseAndDocFilesOrdersDocBeforeSortedLicenses(t *testing.T) {
path := filepath.Join(t.TempDir(), "files")
f, err := os.Create(path)
if err != nil {
t.Fatalf("create temp file: %v", err)
}
writeLicenseAndDocFiles(f, specAssetFiles{
licenseFiles: []string{"zLICENSE", "COPYING", "LICENSE"},
readmeFile: "README.md",
}, true)
if err := f.Close(); err != nil {
t.Fatalf("close temp file: %v", err)
}
content, err := os.ReadFile(path)
if err != nil {
t.Fatalf("read temp file: %v", err)
}
want := "%doc README.md\n%license COPYING\n%license LICENSE\n%license zLICENSE\n"
if got := string(content); got != want {
t.Fatalf("writeLicenseAndDocFiles() = %q, want %q", got, want)
}
}
func TestSummaryFromReadme(t *testing.T) {
readme := `
# Project
+5 -3
View File
@@ -260,12 +260,14 @@ func writeRPMProgramSubpackage(f *os.File, gopkg, openRuyiProgram, openRuyiSrc,
}
func writeLicenseAndDocFiles(f *os.File, assetFiles specAssetFiles, includeDoc bool) {
for _, licenseFile := range assetFiles.licenseFiles {
fmt.Fprintf(f, "%%license %s\n", licenseFile)
}
if includeDoc && assetFiles.readmeFile != "" {
fmt.Fprintf(f, "%%doc %s\n", assetFiles.readmeFile)
}
licenseFiles := append([]string(nil), assetFiles.licenseFiles...)
sort.Strings(licenseFiles)
for _, licenseFile := range licenseFiles {
fmt.Fprintf(f, "%%license %s\n", licenseFile)
}
}
func writeRPMFilesSection(f *os.File, openRuyiSrc, openRuyiLib, openRuyiProgram string, pkgType packageType, assetFiles specAssetFiles) {