Use higher level interface

This commit is contained in:
David Baker
2025-02-07 10:54:27 +01:00
parent f586c43a26
commit e8483e0186
2 changed files with 5 additions and 14 deletions

View File

@@ -99,13 +99,10 @@ export function useKeyStoragePanelViewModel(): KeyStoragePanelState {
await matrixClient.deleteAccountData("m.megolm_backup.v1");
// Delete the key information
const defaultKeyEvent = matrixClient.getAccountData("m.secret_storage.default_key");
if (defaultKeyEvent) {
if (defaultKeyEvent.getContent()?.key) {
await matrixClient.deleteAccountData(
`m.secret_storage.key.${defaultKeyEvent.getContent().key}`,
);
}
const defaultKey = await matrixClient.secretStorage.getDefaultKeyId();
if (defaultKey) {
await matrixClient.deleteAccountData(`m.secret_storage.key.${defaultKey}`);
// ...and the default key pointer
await matrixClient.deleteAccountData("m.secret_storage.default_key");
}

View File

@@ -89,13 +89,7 @@ describe("KeyStoragePanelViewModel", () => {
it("should delete data stored in 4s when disabling", async () => {
mocked(matrixClient.getCrypto()!.checkKeyBackupAndEnable).mockResolvedValue({} as KeyBackupCheck);
mocked(matrixClient.getCrypto()!.getKeyBackupInfo).mockResolvedValue({ version: "99" } as KeyBackupInfo);
mocked(matrixClient.getAccountData).mockImplementation((k): MatrixEvent | undefined => {
if (k === "m.secret_storage.default_key") {
return new MatrixEvent({ content: { key: "thekey" } });
}
return undefined;
});
mocked(matrixClient.secretStorage.getDefaultKeyId).mockResolvedValue("thekey");
const { result } = renderHook(
() => useKeyStoragePanelViewModel(),