2022-08-10 17:28:52 -05:00
|
|
|
package config_test
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
"time"
|
|
|
|
|
|
|
|
. "github.com/smartystreets/goconvey/convey"
|
2022-10-20 11:39:20 -05:00
|
|
|
|
2022-08-10 17:28:52 -05:00
|
|
|
"zotregistry.io/zot/pkg/api/config"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestConfig(t *testing.T) {
|
|
|
|
Convey("Test config utils", t, func() {
|
|
|
|
firstStorageConfig := config.StorageConfig{
|
|
|
|
GC: true, Dedupe: true,
|
|
|
|
GCDelay: 1 * time.Minute, GCInterval: 1 * time.Hour,
|
|
|
|
}
|
|
|
|
secondStorageConfig := config.StorageConfig{
|
|
|
|
GC: true, Dedupe: true,
|
|
|
|
GCDelay: 1 * time.Minute, GCInterval: 1 * time.Hour,
|
|
|
|
}
|
|
|
|
|
|
|
|
So(firstStorageConfig.ParamsEqual(secondStorageConfig), ShouldBeTrue)
|
|
|
|
|
|
|
|
firstStorageConfig.GC = false
|
|
|
|
|
|
|
|
So(firstStorageConfig.ParamsEqual(secondStorageConfig), ShouldBeFalse)
|
|
|
|
|
|
|
|
firstStorageConfig.GC = true
|
|
|
|
firstStorageConfig.Dedupe = false
|
|
|
|
|
|
|
|
So(firstStorageConfig.ParamsEqual(secondStorageConfig), ShouldBeFalse)
|
|
|
|
|
|
|
|
firstStorageConfig.Dedupe = true
|
|
|
|
firstStorageConfig.GCDelay = 2 * time.Minute
|
|
|
|
|
|
|
|
So(firstStorageConfig.ParamsEqual(secondStorageConfig), ShouldBeFalse)
|
|
|
|
|
|
|
|
firstStorageConfig.GCDelay = 1 * time.Minute
|
|
|
|
firstStorageConfig.GCInterval = 2 * time.Hour
|
|
|
|
|
|
|
|
So(firstStorageConfig.ParamsEqual(secondStorageConfig), ShouldBeFalse)
|
|
|
|
|
|
|
|
firstStorageConfig.GCInterval = 1 * time.Hour
|
|
|
|
|
|
|
|
So(firstStorageConfig.ParamsEqual(secondStorageConfig), ShouldBeTrue)
|
|
|
|
|
|
|
|
isSame, err := config.SameFile("test-config", "test")
|
|
|
|
So(err, ShouldNotBeNil)
|
|
|
|
So(isSame, ShouldBeFalse)
|
|
|
|
|
|
|
|
dir1 := t.TempDir()
|
|
|
|
|
|
|
|
isSame, err = config.SameFile(dir1, "test")
|
|
|
|
So(err, ShouldNotBeNil)
|
|
|
|
So(isSame, ShouldBeFalse)
|
|
|
|
|
|
|
|
dir2 := t.TempDir()
|
|
|
|
|
|
|
|
isSame, err = config.SameFile(dir1, dir2)
|
|
|
|
So(err, ShouldBeNil)
|
|
|
|
So(isSame, ShouldBeFalse)
|
|
|
|
|
|
|
|
isSame, err = config.SameFile(dir1, dir1)
|
|
|
|
So(err, ShouldBeNil)
|
|
|
|
So(isSame, ShouldBeTrue)
|
|
|
|
})
|
|
|
|
}
|