github.com/turbot/steampipe@v1.7.0-rc.0.0.20240517123944-7cef272d4458/pkg/ociinstaller/versionfile/db_version_file_test.go (about) 1 package versionfile 2 3 import ( 4 "os" 5 "testing" 6 "time" 7 ) 8 9 func TestWriteDatabaseVersionFile(t *testing.T) { 10 11 var v DatabaseVersionFile 12 13 fileName := "test.json" 14 timeNow := time.Now() 15 16 v.EmbeddedDB.Version = "0.0.1" 17 v.EmbeddedDB.Name = "embeddedDb" 18 v.EmbeddedDB.ImageDigest = "111111111111" 19 v.EmbeddedDB.InstalledFrom = "hub.steampipe.io/core/embedded-postgres:latest" 20 v.EmbeddedDB.LastCheckedDate = timeNow.Format(time.UnixDate) 21 v.EmbeddedDB.InstallDate = timeNow.Format(time.UnixDate) 22 23 timeNow2 := timeNow.Add(time.Minute * 10) 24 25 v.FdwExtension.Version = "1.0.1" 26 v.FdwExtension.Name = "fdwExtension" 27 v.FdwExtension.ImageDigest = "2222222222" 28 v.FdwExtension.InstalledFrom = "hub.steampipe.io/core/hub-extension:latest" 29 v.FdwExtension.LastCheckedDate = timeNow2.Format(time.UnixDate) 30 v.FdwExtension.InstallDate = timeNow2.Format(time.UnixDate) 31 32 if err := v.write(fileName); err != nil { 33 t.Errorf("\nError writing file: %s", err.Error()) 34 } 35 36 v2, err := readDatabaseVersionFile(fileName) 37 if err != nil { 38 t.Errorf("\nError reading file: %s", err.Error()) 39 } 40 41 if v2.EmbeddedDB.Version != v.EmbeddedDB.Version { 42 t.Errorf("\nError EmbeddedDB.Version is: %s, expected %s", v2.EmbeddedDB.Version, v.EmbeddedDB.Version) 43 } 44 if v2.EmbeddedDB.Name != v.EmbeddedDB.Name { 45 t.Errorf("\nError EmbeddedDB.Name is: %s, expected %s", v2.EmbeddedDB.Name, v.EmbeddedDB.Name) 46 } 47 if v2.EmbeddedDB.ImageDigest != v.EmbeddedDB.ImageDigest { 48 t.Errorf("\nError EmbeddedDB.ImageDigest is: %s, expected %s", v2.EmbeddedDB.ImageDigest, v.EmbeddedDB.ImageDigest) 49 } 50 if v2.EmbeddedDB.InstalledFrom != v.EmbeddedDB.InstalledFrom { 51 t.Errorf("\nError EmbeddedDB.InstalledFrom is: %s, expected %s", v2.EmbeddedDB.InstalledFrom, v.EmbeddedDB.InstalledFrom) 52 } 53 if v2.EmbeddedDB.LastCheckedDate != v.EmbeddedDB.LastCheckedDate { 54 t.Errorf("\nError EmbeddedDB.LastCheckedDate is: %s, expected %s", v2.EmbeddedDB.LastCheckedDate, v.EmbeddedDB.LastCheckedDate) 55 } 56 if v2.EmbeddedDB.InstallDate != v.EmbeddedDB.InstallDate { 57 t.Errorf("\nError EmbeddedDB.InstallDate is: %s, expected %s", v2.EmbeddedDB.InstallDate, v.EmbeddedDB.InstallDate) 58 } 59 60 os.Remove(fileName) 61 }