API-10: test-fix — rotatemasterkey-assertion nur fuer eigene test-tenants pruefen (geteilte test-db)
This commit is contained in:
@@ -167,15 +167,19 @@ func TestRotateMasterKey_AllTenantKEKsRemainDecryptableWithSamePlaintext(t *test
|
||||
}
|
||||
|
||||
newMasterKeyVal := newMasterKey(t)
|
||||
rotated, failed, err := store.RotateMasterKey(ctx, oldMasterKey, newMasterKeyVal)
|
||||
_, failed, err := store.RotateMasterKey(ctx, oldMasterKey, newMasterKeyVal)
|
||||
if err != nil {
|
||||
t.Fatalf("rotatemasterkey: %v", err)
|
||||
}
|
||||
if len(failed) != 0 {
|
||||
t.Fatalf("erwartet keine fehlgeschlagenen tenants, habe: %v", failed)
|
||||
}
|
||||
if rotated < 2 {
|
||||
t.Fatalf("erwartet mindestens 2 rotierte tenant-keks, habe %d", rotated)
|
||||
// RotateMasterKey verarbeitet ALLE tenant_keks-Zeilen der (in Tests
|
||||
// geteilten) Datenbank — Zeilen anderer Tests, die unter einem ANDEREN
|
||||
// zufaelligen Master-Key verpackt wurden, schlagen hier ERWARTBAR fehl
|
||||
// (das ist die korrekte Fehler-Isolation von RotateMasterKey, kein Bug).
|
||||
// Relevant ist nur, dass GENAU DIESE beiden Tenants NICHT scheitern.
|
||||
for _, id := range failed {
|
||||
if id == tenantA || id == tenantB {
|
||||
t.Fatalf("tenant %s haette bei der rotation nicht fehlschlagen duerfen", id)
|
||||
}
|
||||
}
|
||||
|
||||
// Entschluesselung mit dem NEUEN master-key liefert EXAKT denselben
|
||||
|
||||
Reference in New Issue
Block a user