| package daemon // import "github.com/docker/docker/daemon" | |
| import ( | |
| "testing" | |
| containertypes "github.com/docker/docker/api/types/container" | |
| "github.com/docker/docker/container" | |
| "gotest.tools/v3/assert" | |
| is "gotest.tools/v3/assert/cmp" | |
| ) | |
| func TestGetInspectData(t *testing.T) { | |
| c := &container.Container{ | |
| ID: "inspect-me", | |
| HostConfig: &containertypes.HostConfig{}, | |
| State: container.NewState(), | |
| ExecCommands: container.NewExecStore(), | |
| } | |
| d := &Daemon{ | |
| linkIndex: newLinkIndex(), | |
| } | |
| if d.UsesSnapshotter() { | |
| t.Skip("does not apply to containerd snapshotters, which don't have RWLayer set") | |
| } | |
| cfg := &configStore{} | |
| d.configStore.Store(cfg) | |
| _, err := d.getInspectData(&cfg.Config, c) | |
| assert.Check(t, is.ErrorContains(err, "RWLayer of container inspect-me is unexpectedly nil")) | |
| c.Dead = true | |
| _, err = d.getInspectData(&cfg.Config, c) | |
| assert.Check(t, err) | |
| } |