(t *testing.T)
| 239 | } |
| 240 | |
| 241 | func TestMemoryDelete(t *testing.T) { |
| 242 | var tests = []struct { |
| 243 | desc string |
| 244 | key string |
| 245 | namespace string |
| 246 | err bool |
| 247 | }{ |
| 248 | {"release key should exist", "rls-a.v4", "default", false}, |
| 249 | {"release key should not exist", "rls-a.v5", "default", true}, |
| 250 | {"release key from other namespace should not exist", "rls-c.v4", "default", true}, |
| 251 | {"release key from namespace should exist", "rls-c.v4", "mynamespace", false}, |
| 252 | {"release key from namespace should not exist", "rls-c.v5", "mynamespace", true}, |
| 253 | {"release key from namespace2 should not exist", "rls-a.v4", "mynamespace", true}, |
| 254 | } |
| 255 | |
| 256 | ts := tsFixtureMemory(t) |
| 257 | ts.SetNamespace("") |
| 258 | start, err := ts.Query(map[string]string{"status": "deployed"}) |
| 259 | if err != nil { |
| 260 | t.Errorf("Query failed: %s", err) |
| 261 | } |
| 262 | startLen := len(start) |
| 263 | for _, tt := range tests { |
| 264 | ts.SetNamespace(tt.namespace) |
| 265 | |
| 266 | rel, err := ts.Delete(tt.key) |
| 267 | var rls *rspb.Release |
| 268 | if err == nil { |
| 269 | rls = convertReleaserToV1(t, rel) |
| 270 | } |
| 271 | if err != nil { |
| 272 | if !tt.err { |
| 273 | t.Fatalf("Failed %q to get '%s': %q\n", tt.desc, tt.key, err) |
| 274 | } |
| 275 | continue |
| 276 | } else if tt.err { |
| 277 | t.Fatalf("Did not get expected error for %q '%s'\n", tt.desc, tt.key) |
| 278 | } else if fmt.Sprintf("%s.v%d", rls.Name, rls.Version) != tt.key { |
| 279 | t.Fatalf("Asked for delete on %s, but deleted %d", tt.key, rls.Version) |
| 280 | } |
| 281 | _, err = ts.Get(tt.key) |
| 282 | if err == nil { |
| 283 | t.Error("Expected an error when asking for a deleted key") |
| 284 | } |
| 285 | } |
| 286 | |
| 287 | // Make sure that the deleted records are gone. |
| 288 | ts.SetNamespace("") |
| 289 | end, err := ts.Query(map[string]string{"status": "deployed"}) |
| 290 | if err != nil { |
| 291 | t.Errorf("Query failed: %s", err) |
| 292 | } |
| 293 | endLen := len(end) |
| 294 | |
| 295 | if startLen-2 != endLen { |
| 296 | t.Errorf("expected end to be %d instead of %d", startLen-2, endLen) |
| 297 | for _, ee := range end { |
| 298 | rac, err := release.NewAccessor(ee) |
nothing calls this directly
no test coverage detected
searching dependent graphs…