package daemon import ( "context" "os" "path/filepath" "testing" "banger/internal/model" "banger/internal/store" ) func TestEnsureDefaultImageUsesConfiguredDefaultRootfs(t *testing.T) { dir := t.TempDir() rootfs := filepath.Join(dir, "rootfs-docker.ext4") kernel := filepath.Join(dir, "vmlinux") for _, path := range []string{rootfs, kernel} { if err := os.WriteFile(path, []byte("test"), 0o644); err != nil { t.Fatalf("write %s: %v", path, err) } } db, err := store.Open(filepath.Join(dir, "state.db")) if err != nil { t.Fatalf("open store: %v", err) } t.Cleanup(func() { _ = db.Close() }) d := &Daemon{ config: model.DaemonConfig{ DefaultImageName: "default", DefaultRootfs: rootfs, DefaultKernel: kernel, }, store: db, } if err := d.ensureDefaultImage(context.Background()); err != nil { t.Fatalf("ensureDefaultImage: %v", err) } image, err := db.GetImageByName(context.Background(), "default") if err != nil { t.Fatalf("GetImageByName: %v", err) } if image.RootfsPath != rootfs { t.Fatalf("RootfsPath = %q, want %q", image.RootfsPath, rootfs) } if image.KernelPath != kernel { t.Fatalf("KernelPath = %q, want %q", image.KernelPath, kernel) } }