test(crypto-js): Test OlmMachine.getIdentity.

This commit is contained in:
Ivan Enderlin
2022-09-16 11:23:32 +02:00
parent 1a5379881e
commit 84aa85958c
2 changed files with 42 additions and 2 deletions

View File

@@ -78,7 +78,7 @@ impl OwnUserIdentity {
}
/// Does our user identity trust our own device, i.e. have we signed our own
/// device keys with our self-signing key.
/// device keys with our self-signing key?
#[wasm_bindgen(js_name = "trustsOurOwnDevice")]
pub fn trusts_our_own_device(&self) -> Promise {
let me = self.inner.clone();

View File

@@ -1,4 +1,24 @@
const { OlmMachine, UserId, DeviceId, DeviceKeyId, RoomId, DeviceLists, RequestType, KeysUploadRequest, KeysQueryRequest, KeysClaimRequest, EncryptionSettings, DecryptedRoomEvent, VerificationState, CrossSigningStatus, MaybeSignature } = require('../pkg/matrix_sdk_crypto_js');
const {
CrossSigningStatus,
DecryptedRoomEvent,
DeviceId,
DeviceKeyId,
DeviceLists,
EncryptionSettings,
KeysClaimRequest,
KeysQueryRequest,
KeysUploadRequest,
MaybeSignature,
OlmMachine,
OwnUserIdentity,
RequestType,
RoomId,
SignatureUploadRequest,
ToDeviceRequest,
UserId,
VerificationRequest,
VerificationState,
} = require('../pkg/matrix_sdk_crypto_js');
require('fake-indexeddb/auto');
describe(OlmMachine.name, () => {
@@ -451,4 +471,24 @@ describe(OlmMachine.name, () => {
expect(signatures.getSignature(user, new DeviceKeyId('world:foobar'))).toBeUndefined();
}
});
test('can get a user identities', async () => {
const m = await machine();
let _ = m.bootstrapCrossSigning(true);
const identity = await m.getIdentity(user);
expect(identity).toBeInstanceOf(OwnUserIdentity);
const signatureUploadRequest = await identity.verify();
expect(signatureUploadRequest).toBeInstanceOf(SignatureUploadRequest);
const [verificationRequest, outgoingVerificationRequest] = await identity.requestVerification();
expect(verificationRequest).toBeInstanceOf(VerificationRequest);
expect(outgoingVerificationRequest).toBeInstanceOf(ToDeviceRequest);
const isTrusted = await identity.trustsOurOwnDevice();
expect(isTrusted).toStrictEqual(false);
});
});