MCPcopy Create free account
hub / github.com/OpenListTeam/OpenList / TestMemLSLookup

Function TestMemLSLookup

server/webdav/lock_test.go:158–205  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

156}
157
158func TestMemLSLookup(t *testing.T) {
159 now := time.Unix(0, 0)
160 m := NewMemLS().(*memLS)
161
162 badToken := m.nextToken()
163 t.Logf("badToken=%q", badToken)
164
165 for _, name := range lockTestNames {
166 token, err := m.Create(now, LockDetails{
167 Root: name,
168 Duration: infiniteTimeout,
169 ZeroDepth: lockTestZeroDepth(name),
170 })
171 if err != nil {
172 t.Fatalf("creating lock for %q: %v", name, err)
173 }
174 t.Logf("%-15q -> node=%p token=%q", name, m.byName[name], token)
175 }
176
177 baseNames := append([]string{"/a", "/b/c"}, lockTestNames...)
178 for _, baseName := range baseNames {
179 for _, suffix := range []string{"", "/0", "/1/2/3"} {
180 name := baseName + suffix
181
182 goodToken := ""
183 base := m.byName[baseName]
184 if base != nil && (suffix == "" || !lockTestZeroDepth(baseName)) {
185 goodToken = base.token
186 }
187
188 for _, token := range []string{badToken, goodToken} {
189 if token == "" {
190 continue
191 }
192
193 got := m.lookup(name, Condition{Token: token})
194 want := base
195 if token == badToken {
196 want = nil
197 }
198 if got != want {
199 t.Errorf("name=%-20qtoken=%q (bad=%t): got %p, want %p",
200 name, token, token == badToken, got, want)
201 }
202 }
203 }
204 }
205}
206
207func TestMemLSConfirm(t *testing.T) {
208 now := time.Unix(0, 0)

Callers

nothing calls this directly

Calls 5

NewMemLSFunction · 0.85
lockTestZeroDepthFunction · 0.85
nextTokenMethod · 0.80
lookupMethod · 0.80
CreateMethod · 0.65

Tested by

no test coverage detected