MCPcopy Index your code
hub / github.com/regclient/regclient / TestImageCheckBase

Function TestImageCheckBase

image_test.go:29–161  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

27)
28
29func TestImageCheckBase(t *testing.T) {
30 t.Parallel()
31 ctx := context.Background()
32 regHandler := olareg.New(oConfig.Config{
33 Storage: oConfig.ConfigStorage{
34 StoreType: oConfig.StoreMem,
35 RootDir: "./testdata",
36 },
37 })
38 ts := httptest.NewServer(regHandler)
39 tsURL, _ := url.Parse(ts.URL)
40 tsHost := tsURL.Host
41 t.Cleanup(func() {
42 ts.Close()
43 _ = regHandler.Close()
44 })
45 rcHosts := []config.Host{
46 {
47 Name: tsHost,
48 Hostname: tsHost,
49 TLS: config.TLSDisabled,
50 },
51 {
52 Name: "registry.example.org",
53 Hostname: tsHost,
54 TLS: config.TLSDisabled,
55 },
56 }
57 log := slog.New(slog.NewTextHandler(os.Stderr, &slog.HandlerOptions{Level: slog.LevelWarn}))
58 delayInit, _ := time.ParseDuration("0.05s")
59 delayMax, _ := time.ParseDuration("0.10s")
60 rc := New(
61 WithConfigHost(rcHosts...),
62 WithSlog(log),
63 WithRegOpts(reg.WithDelay(delayInit, delayMax)),
64 )
65 rb1, err := ref.New(tsHost + "/testrepo:b1")
66 if err != nil {
67 t.Fatalf("failed to setup ref: %v", err)
68 }
69 rb2, err := ref.New(tsHost + "/testrepo:b2")
70 if err != nil {
71 t.Fatalf("failed to setup ref: %v", err)
72 }
73 rb3, err := ref.New(tsHost + "/testrepo:b3")
74 if err != nil {
75 t.Fatalf("failed to setup ref: %v", err)
76 }
77 m3, err := rc.ManifestHead(ctx, rb3)
78 if err != nil {
79 t.Fatalf("failed to get digest for base3: %v", err)
80 }
81 dig3 := m3.GetDescriptor().Digest
82 r1, err := ref.New(tsHost + "/testrepo:v1")
83 if err != nil {
84 t.Fatalf("failed to setup ref: %v", err)
85 }
86 r2, err := ref.New(tsHost + "/testrepo:v2")

Callers

nothing calls this directly

Calls 15

WithDelayFunction · 0.92
NewFunction · 0.92
WithConfigHostFunction · 0.85
WithRegOptsFunction · 0.85
ImageWithCheckBaseRefFunction · 0.85
ImageWithCheckBaseDigestFunction · 0.85
ParseMethod · 0.80
CommonNameMethod · 0.80
ImageCheckBaseMethod · 0.80
NewFunction · 0.70
WithSlogFunction · 0.70
CloseMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…