MCPcopy Index your code
hub / github.com/belak/gitdir / TestLookupUserFromKey

Function TestLookupUserFromKey

user_test.go:43–118  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

41}
42
43func TestLookupUserFromKey(t *testing.T) { //nolint:funlen
44 t.Parallel()
45
46 c := newTestConfig()
47
48 var tests = []struct { //nolint:gofumpt
49 UserHint string
50 Username string
51 PublicKey string
52 Error error
53 ErrorGitUser error
54 }{
55 {
56 "missing-user",
57 "missing-user",
58 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ7+BNW+C5HHQ8C3QcJCYfUvxz+biXbxB0JtufT+P2AD user-not-found",
59 ErrUserNotFound,
60 ErrUserNotFound,
61 },
62 {
63 "disabled",
64 "disabled",
65 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBx4DYr9m+EnG0tgFsUIZqrDP7pa+vpVXJJ6/PE9J7Ll disabled",
66 ErrUserNotFound,
67 ErrUserNotFound,
68 },
69 {
70 "invalid-user",
71 "invalid-user",
72 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKQJzT5mM5eDYhoe3pVodWPCDzoj0/+pCVNoVsuUR4ao invalid-user",
73 ErrUserNotFound,
74 ErrUserNotFound,
75 },
76
77 {
78 "an-admin",
79 "an-admin",
80 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILQGpcX2owFW6hdTWHa/CzbTwhUJlmI8gKAgnp/c0NK2 an-admin",
81 nil,
82 nil,
83 },
84 {
85 // Mismatched username will error
86 "non-admin",
87 "an-admin",
88 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILQGpcX2owFW6hdTWHa/CzbTwhUJlmI8gKAgnp/c0NK2 an-admin",
89 ErrUserNotFound,
90 nil,
91 },
92 }
93
94 for _, test := range tests {
95 pk, err := models.ParsePublicKey([]byte(test.PublicKey))
96 require.Nil(t, err)
97
98 // Try with the username hint
99 user, err := c.LookupUserFromKey(*pk, test.UserHint)
100

Callers

nothing calls this directly

Calls 3

ParsePublicKeyFunction · 0.92
newTestConfigFunction · 0.85
LookupUserFromKeyMethod · 0.80

Tested by

no test coverage detected