package hostactors import ( "bytes" "errors" "os" "testing" "github.com/carlosframework/platform/internal/hostfloor" ) func TestPlan9Fix4NoFloorKeepsActivationAsMainDid(t *testing.T) { t.Setenv("CARLOS_HOST_CLAIM", "") w, _ := plan9Fixture(t, nil) w.fence(t, "b", "w", w.now, "terminated") if err := w.d.Store.Delete(t.Context(), hostfloor.Key); err != nil { t.Fatal(err) } before, etag, err := w.d.Store.Get(t.Context(), Key) if err != nil { t.Fatal(err) } if err = w.d.ReleaseActivation(t.Context(), w.sg, plan9Activation, w.now); !errors.Is(err, os.ErrNotExist) { t.Fatalf("missing floor did not refuse release: %v", err) } after, afterETag, err := w.d.Store.Get(t.Context(), Key) if err != nil || etag != afterETag || !bytes.Equal(before, after) { t.Fatalf("flag-off no-floor release changed roster: %v", err) } }