Files
Kevin Minehart 13f4cf162e CI: move grafana-build into pkg/build (#105640)
* move grafana-build into pkg/build
2025-05-20 10:48:00 -05:00

72 lines
2.4 KiB
Go

package packages_test
import (
"testing"
"github.com/grafana/grafana/pkg/build/daggerbuild/backend"
"github.com/grafana/grafana/pkg/build/daggerbuild/packages"
)
func TestFileName(t *testing.T) {
t.Run("It should use the correct name if Enterprise is false", func(t *testing.T) {
distro := backend.Distribution("plan9/amd64")
opts := packages.NameOpts{
Name: "grafana",
Version: "v1.0.1-test",
BuildID: "333",
Distro: distro,
Extension: "tar.gz",
}
expected := "grafana_v1.0.1-test_333_plan9_amd64.tar.gz"
if name, _ := packages.FileName(opts.Name, opts.Version, opts.BuildID, opts.Distro, opts.Extension); name != expected {
t.Errorf("name '%s' does not match expected name '%s'", name, expected)
}
})
t.Run("It should use the correct name if Enterprise is true", func(t *testing.T) {
distro := backend.Distribution("plan9/amd64")
opts := packages.NameOpts{
Name: "grafana-enterprise",
Version: "v1.0.1-test",
BuildID: "333",
Distro: distro,
Extension: "tar.gz",
}
expected := "grafana-enterprise_v1.0.1-test_333_plan9_amd64.tar.gz"
if name, _ := packages.FileName(opts.Name, opts.Version, opts.BuildID, opts.Distro, opts.Extension); name != expected {
t.Errorf("name '%s' does not match expected name '%s'", name, expected)
}
})
t.Run("It should use include the arch version if one is supplied in the distro", func(t *testing.T) {
distro := backend.Distribution("plan9/arm/v6")
opts := packages.NameOpts{
Name: "grafana-enterprise",
Version: "v1.0.1-test",
BuildID: "333",
Distro: distro,
Extension: "tar.gz",
}
expected := "grafana-enterprise_v1.0.1-test_333_plan9_arm-6.tar.gz"
if name, _ := packages.FileName(opts.Name, opts.Version, opts.BuildID, opts.Distro, opts.Extension); name != expected {
t.Errorf("name '%s' does not match expected name '%s'", name, expected)
}
})
t.Run("It should support grafana names with multiple hyphens", func(t *testing.T) {
distro := backend.Distribution("plan9/arm/v6")
opts := packages.NameOpts{
Name: "grafana-enterprise-rpi",
Version: "v1.0.1-test",
BuildID: "333",
Distro: distro,
Extension: "tar.gz",
}
expected := "grafana-enterprise-rpi_v1.0.1-test_333_plan9_arm-6.tar.gz"
if name, _ := packages.FileName(opts.Name, opts.Version, opts.BuildID, opts.Distro, opts.Extension); name != expected {
t.Errorf("name '%s' does not match expected name '%s'", name, expected)
}
})
}