SettingsStore: Change feature_rust_crypto to default true (#12203)
* Set default crypto stack to rust * Update test for default to rust crypto * Fix labs settings tests * Fix test not working with rust crypto
This commit is contained in:
parent
f36b6035f4
commit
cb7fd5118e
6 changed files with 225 additions and 68 deletions
|
@ -57,6 +57,7 @@ import * as Lifecycle from "../../../src/Lifecycle";
|
|||
import { SSO_HOMESERVER_URL_KEY, SSO_ID_SERVER_URL_KEY } from "../../../src/BasePlatform";
|
||||
import SettingsStore from "../../../src/settings/SettingsStore";
|
||||
import { SettingLevel } from "../../../src/settings/SettingLevel";
|
||||
import { MatrixClientPeg as peg } from "../../../src/MatrixClientPeg";
|
||||
|
||||
jest.mock("matrix-js-sdk/src/oidc/authorize", () => ({
|
||||
completeAuthorizationCodeGrant: jest.fn(),
|
||||
|
@ -84,6 +85,7 @@ describe("<MatrixChat />", () => {
|
|||
getClientWellKnown: jest.fn().mockReturnValue({}),
|
||||
isVersionSupported: jest.fn().mockResolvedValue(false),
|
||||
isCryptoEnabled: jest.fn().mockReturnValue(false),
|
||||
initRustCrypto: jest.fn(),
|
||||
getRoom: jest.fn(),
|
||||
getMediaHandler: jest.fn().mockReturnValue({
|
||||
setVideoInput: jest.fn(),
|
||||
|
@ -835,10 +837,22 @@ describe("<MatrixChat />", () => {
|
|||
});
|
||||
|
||||
it("should show the soft-logout page", async () => {
|
||||
// XXX This test is strange, it was working with legacy crypto
|
||||
// without mocking the following but the initCrypto call was failing
|
||||
// but as the exception was swallowed, the test was passing (see in `initClientCrypto`).
|
||||
// There are several uses of the peg in the app, so during all these tests you might end-up
|
||||
// with a real client instead of the mocked one. Not sure how reliable all these tests are.
|
||||
const originalReplace = peg.replaceUsingCreds;
|
||||
peg.replaceUsingCreds = jest.fn().mockResolvedValue(mockClient);
|
||||
// @ts-ignore - need to mock this for the test
|
||||
peg.matrixClient = mockClient;
|
||||
|
||||
const result = getComponent();
|
||||
|
||||
await result.findByText("You're signed out");
|
||||
expect(result.container).toMatchSnapshot();
|
||||
|
||||
peg.replaceUsingCreds = originalReplace;
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -1336,7 +1350,6 @@ describe("<MatrixChat />", () => {
|
|||
await populateStorageForSession();
|
||||
|
||||
const client = new MockClientWithEventEmitter({
|
||||
initCrypto: jest.fn(),
|
||||
...getMockClientMethods(),
|
||||
}) as unknown as Mocked<MatrixClient>;
|
||||
jest.spyOn(MatrixJs, "createClient").mockReturnValue(client);
|
||||
|
@ -1344,7 +1357,7 @@ describe("<MatrixChat />", () => {
|
|||
// intercept initCrypto and have it block until we complete the deferred
|
||||
const initCryptoCompleteDefer = defer();
|
||||
const initCryptoCalled = new Promise<void>((resolve) => {
|
||||
client.initCrypto.mockImplementation(() => {
|
||||
client.initRustCrypto.mockImplementation(() => {
|
||||
resolve();
|
||||
return initCryptoCompleteDefer.promise;
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue