Add Voice Broadcast labs setting and composer button (#9279)

* Add Voice Broadcast labs setting and composer button

* Implement strict typing

* Extend MessageComposer-test

* Extend tests

* Revert some strict type fixex

* Convert FEATURES to enum; change case

* Use fake timers in MessageComposer-test
This commit is contained in:
Michael Weimann 2022-09-16 11:10:33 +02:00 committed by GitHub
parent 4a23630e06
commit a0c35d088a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 469 additions and 45 deletions

View file

@ -40,6 +40,7 @@ import { IRoomState } from "../../../../src/components/structures/RoomView";
import { RoomPermalinkCreator } from "../../../../src/utils/permalinks/Permalinks";
import { mockPlatformPeg } from "../../../test-utils/platform";
import { doMaybeLocalRoomAction } from "../../../../src/utils/local-room";
import { addTextToComposer } from "../../../test-utils/composer";
jest.mock("../../../../src/utils/local-room", () => ({
doMaybeLocalRoomAction: jest.fn(),
@ -187,20 +188,6 @@ describe('<SendMessageComposer/>', () => {
spyDispatcher.mockReset();
});
const addTextToComposer = (wrapper, text) => act(() => {
// couldn't get input event on contenteditable to work
// paste works without illegal private method access
const pasteEvent = {
clipboardData: {
types: [],
files: [],
getData: type => type === "text/plain" ? text : undefined,
},
};
wrapper.find('[role="textbox"]').simulate('paste', pasteEvent);
wrapper.update();
});
const defaultProps = {
room: mockRoom,
toggleStickerPickerOpen: jest.fn(),