MCPcopy Create free account
hub / github.com/docker/cli / TestTrustRevokeCommand

Function TestTrustRevokeCommand

cmd/docker-trust/trust/revoke_test.go:57–149  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

55}
56
57func TestTrustRevokeCommand(t *testing.T) {
58 revokeCancelledError := "trust revoke has been cancelled"
59
60 testCases := []struct {
61 doc string
62 notaryRepository func() (client.Repository, error)
63 args []string
64 expectedErr string
65 expectedMessage string
66 }{
67 {
68 doc: "OfflineErrors_Confirm",
69 notaryRepository: notary.GetOfflineNotaryRepository,
70 args: []string{"reg-name.io/image"},
71 expectedMessage: "Confirm you would like to delete all signature data for reg-name.io/image? [y/N] ",
72 expectedErr: revokeCancelledError,
73 },
74 {
75 doc: "OfflineErrors_Offline",
76 notaryRepository: notary.GetOfflineNotaryRepository,
77 args: []string{"reg-name.io/image", "-y"},
78 expectedErr: "could not remove signature for reg-name.io/image: client is offline",
79 },
80 {
81 doc: "OfflineErrors_WithTag_Offline",
82 notaryRepository: notary.GetOfflineNotaryRepository,
83 args: []string{"reg-name.io/image:tag"},
84 expectedErr: "could not remove signature for reg-name.io/image:tag: client is offline",
85 },
86 {
87 doc: "UninitializedErrors_Confirm",
88 notaryRepository: notary.GetUninitializedNotaryRepository,
89 args: []string{"reg-name.io/image"},
90 expectedMessage: "Confirm you would like to delete all signature data for reg-name.io/image? [y/N] ",
91 expectedErr: revokeCancelledError,
92 },
93 {
94 doc: "UninitializedErrors_NoTrustData",
95 notaryRepository: notary.GetUninitializedNotaryRepository,
96 args: []string{"reg-name.io/image", "-y"},
97 expectedErr: "could not remove signature for reg-name.io/image: does not have trust data for",
98 },
99 {
100 doc: "UninitializedErrors_WithTag_NoTrustData",
101 notaryRepository: notary.GetUninitializedNotaryRepository,
102 args: []string{"reg-name.io/image:tag"},
103 expectedErr: "could not remove signature for reg-name.io/image:tag: does not have trust data for",
104 },
105 {
106 doc: "EmptyNotaryRepo_Confirm",
107 notaryRepository: notary.GetEmptyTargetsNotaryRepository,
108 args: []string{"reg-name.io/image"},
109 expectedMessage: "Confirm you would like to delete all signature data for reg-name.io/image? [y/N] ",
110 expectedErr: revokeCancelledError,
111 },
112 {
113 doc: "EmptyNotaryRepo_NoSignedTags",
114 notaryRepository: notary.GetEmptyTargetsNotaryRepository,

Callers

nothing calls this directly

Calls 8

SetNotaryClientMethod · 0.95
OutBufferMethod · 0.95
newRevokeCommandFunction · 0.85
SetArgsMethod · 0.80
ContainsMethod · 0.80
StringMethod · 0.65
SetOutMethod · 0.45
SetErrMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…