mirror of
https://github.com/grafana/grafana.git
synced 2025-02-12 00:25:46 -06:00
50 lines
1.1 KiB
Go
50 lines
1.1 KiB
Go
package commands
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
|
|
"github.com/grafana/grafana/pkg/cmd/grafana-cli/models"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestVersionComparison(t *testing.T) {
|
|
t.Run("Validate that version is outdated", func(t *testing.T) {
|
|
versions := []models.Version{
|
|
{Version: "1.1.1"},
|
|
{Version: "2.0.0"},
|
|
}
|
|
|
|
upgradeablePlugins := map[string]models.Plugin{
|
|
"0.0.0": {Versions: versions},
|
|
"1.0.0": {Versions: versions},
|
|
}
|
|
|
|
for k, v := range upgradeablePlugins {
|
|
val := v
|
|
t.Run(fmt.Sprintf("for %s should be true", k), func(t *testing.T) {
|
|
assert.True(t, shouldUpgrade(k, &val))
|
|
})
|
|
}
|
|
})
|
|
|
|
t.Run("Validate that version is ok", func(t *testing.T) {
|
|
versions := []models.Version{
|
|
{Version: "1.1.1"},
|
|
{Version: "2.0.0"},
|
|
}
|
|
|
|
shouldNotUpgrade := map[string]models.Plugin{
|
|
"2.0.0": {Versions: versions},
|
|
"6.0.0": {Versions: versions},
|
|
}
|
|
|
|
for k, v := range shouldNotUpgrade {
|
|
val := v
|
|
t.Run(fmt.Sprintf("for %s should be false", k), func(t *testing.T) {
|
|
assert.False(t, shouldUpgrade(k, &val))
|
|
})
|
|
}
|
|
})
|
|
}
|