mirror of
https://github.com/kairos-io/kairos-sdk.git
synced 2025-08-25 01:59:11 +00:00
* Add registry and org to the os-release file Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me> * Extract the software version prefix to a field and make sure everything still works. Also implement NoPrereleases method to filter out Kairos pre-releases Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me> * Store RegistryAndOrg on the TagList to be used in the new PrintImages method that prints full image URLs This method will be used in the "kairos-agent upgrade list-releases" command Also fix some relic softarePrefix arguments (Artifact now has that info) Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me> * Implement sorting in a semver manner Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me> * Implement FullImages method that returns the tags as full images Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me> --------- Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
55 lines
1.4 KiB
Go
55 lines
1.4 KiB
Go
package versioneer_test
|
|
|
|
import (
|
|
"github.com/kairos-io/kairos-sdk/versioneer"
|
|
. "github.com/onsi/ginkgo/v2"
|
|
. "github.com/onsi/gomega"
|
|
)
|
|
|
|
var _ = Describe("Validate", func() {
|
|
var artifact versioneer.Artifact
|
|
BeforeEach(func() {
|
|
artifact = versioneer.Artifact{
|
|
Flavor: "opensuse",
|
|
FlavorRelease: "leap-15.5",
|
|
Variant: "standard",
|
|
Model: "generic",
|
|
Arch: "amd64",
|
|
Version: "v2.4.2",
|
|
}
|
|
})
|
|
|
|
When("artifact is valid", func() {
|
|
It("returns nil", func() {
|
|
Expect(artifact.Validate()).To(BeNil())
|
|
})
|
|
})
|
|
|
|
It("returns an error when FlavorRelease is empty", func() {
|
|
artifact.FlavorRelease = ""
|
|
Expect(artifact.Validate()).To(MatchError("FlavorRelease is empty"))
|
|
})
|
|
|
|
It("returns an error when Variant is empty", func() {
|
|
artifact.Variant = ""
|
|
Expect(artifact.Validate()).To(MatchError("Variant is empty"))
|
|
})
|
|
|
|
It("returns an error when Model is empty", func() {
|
|
artifact.Model = ""
|
|
Expect(artifact.Validate()).To(MatchError("Model is empty"))
|
|
})
|
|
|
|
It("returns an error when Arch is empty", func() {
|
|
artifact.Arch = ""
|
|
Expect(artifact.Validate()).To(MatchError("Arch is empty"))
|
|
})
|
|
|
|
It("returns an error when SoftwareVersion is not empty but SoftwareVersionPrefix is empty", func() {
|
|
artifact.SoftwareVersion = "v1.28.3"
|
|
artifact.SoftwareVersionPrefix = ""
|
|
|
|
Expect(artifact.Validate()).To(MatchError("SoftwareVersionPrefix should be defined when SoftwareVersion is not empty"))
|
|
})
|
|
})
|