Say a mark-only provider's retirement as mark only
A provider that cannot disable keeps the consumer reachable until a person deletes it (hq ADR 0230); the listing and the approval say so instead of claiming access was disabled.
This commit is contained in:
@@ -458,3 +458,26 @@ func TestTheRetireAndCleanupVerbsComposeTheirCommandLines(t *testing.T) {
|
||||
t.Error("the generic verb would let a retirement or a deletion through without a why")
|
||||
}
|
||||
}
|
||||
|
||||
// A mark-only provider's retired consumer keeps its access; the listing and the approval say so
|
||||
// rather than claiming it was disabled (ADR 0230).
|
||||
func TestNatsAMarkOnlyRetirementIsSaidAsSuch(t *testing.T) {
|
||||
conn := onATestBus(t)
|
||||
fake := &fakeProvider{}
|
||||
kept := retiredDaysAgo("ledger", 3)
|
||||
kept.Access = "kept"
|
||||
fake.state.Retired = []link.RetiredConsumer{kept}
|
||||
fake.state.RetiresBy = "mark-only"
|
||||
fake.state.Waiting = &link.RetirementWaiting{Consumers: []link.RetiredConsumer{{Consumer: "a"}, {Consumer: "b"}}, Held: 2}
|
||||
fake.serve(t, conn, "vault-mark", "anchor")
|
||||
p := providerInstance{Node: "anchor", Module: "vault-mark"}
|
||||
listing := retiredOf(t.Context(), conn, []providerInstance{p}, time.Now())
|
||||
said := printed(t, func() error { return printRetired(listing, false) })
|
||||
if !strings.Contains(said, "MARK ONLY") || listing.Retired[0].Access != "kept" {
|
||||
t.Fatalf("%s %+v", said, listing)
|
||||
}
|
||||
said = printed(t, func() error { return answerRetirement(t.Context(), conn, p, true, whyFlags(t, "gone")) })
|
||||
if !strings.Contains(said, "MARK ONLY") || strings.Contains(said, "access disabled") {
|
||||
t.Fatal(said)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user