diff --git a/tests/frontend/Performance.test.js b/tests/frontend/Performance.test.js index 224b3a0..a7415da 100644 --- a/tests/frontend/Performance.test.js +++ b/tests/frontend/Performance.test.js @@ -126,60 +126,66 @@ describe("UI Performance and Memory Tests", () => { expect(memGrowth).toBeLessThan(200); // Adjusted for JSDOM/Node.js overhead with 2000 items }); - it("measures performance of data updates in ConversationViewer", async () => { - const numMsgs = 1000; - const myLxmfAddressHash = "my_hash"; - const selectedPeer = { - destination_hash: "peer_hash", - display_name: "Peer Name", - }; + it( + "measures performance of data updates in ConversationViewer", + async () => { + const numMsgs = 1000; + const myLxmfAddressHash = "my_hash"; + const selectedPeer = { + destination_hash: "peer_hash", + display_name: "Peer Name", + }; - const wrapper = mount(ConversationViewer, { - props: { - myLxmfAddressHash, - selectedPeer, - conversations: [selectedPeer], - config: { theme: "light", lxmf_address_hash: myLxmfAddressHash }, - }, - global: { - components: { - MaterialDesignIcon, - ConversationDropDownMenu: { template: "
" }, - SendMessageButton: { template: "
" }, - IconButton: { template: "" }, - AddImageButton: { template: "
" }, - AddAudioButton: { template: "
" }, - PaperMessageModal: { template: "
" }, + const wrapper = mount(ConversationViewer, { + props: { + myLxmfAddressHash, + selectedPeer, + conversations: [selectedPeer], + config: { theme: "light", lxmf_address_hash: myLxmfAddressHash }, }, - mocks: { - $t: (key) => key, - $i18n: { locale: "en" }, + global: { + components: { + MaterialDesignIcon, + ConversationDropDownMenu: { template: "
" }, + SendMessageButton: { template: "
" }, + IconButton: { template: "" }, + AddImageButton: { template: "
" }, + AddAudioButton: { template: "
" }, + PaperMessageModal: { template: "
" }, + }, + mocks: { + $t: (key) => key, + $i18n: { locale: "en" }, + }, }, - }, - }); + }); - const chatItems = Array.from({ length: numMsgs }, (_, i) => ({ - type: "lxmf_message", - is_outbound: i % 2 === 0, - lxmf_message: { - hash: `msg_${i}`.padEnd(32, "0"), - source_hash: i % 2 === 0 ? myLxmfAddressHash : "peer_hash", - destination_hash: i % 2 === 0 ? "peer_hash" : myLxmfAddressHash, - content: `Message content ${i}.`.repeat(5), - created_at: new Date().toISOString(), - state: "delivered", - method: "direct", - progress: 1.0, - delivery_attempts: 1, - id: i, - }, - })); + const chatItems = Array.from({ length: numMsgs }, (_, i) => ({ + type: "lxmf_message", + is_outbound: i % 2 === 0, + lxmf_message: { + hash: `msg_${i}`.padEnd(32, "0"), + source_hash: i % 2 === 0 ? myLxmfAddressHash : "peer_hash", + destination_hash: i % 2 === 0 ? "peer_hash" : myLxmfAddressHash, + content: `Message content ${i}.`.repeat(5), + created_at: new Date().toISOString(), + state: "delivered", + method: "direct", + progress: 1.0, + delivery_attempts: 1, + id: i, + }, + })); - const start = performance.now(); - await wrapper.setData({ chatItems }); - const end = performance.now(); + const start = performance.now(); + await wrapper.setData({ chatItems }); + const end = performance.now(); - console.log(`Updated 1000 messages in ConversationViewer in ${(end - start).toFixed(2)}ms`); - expect(end - start).toBeLessThan(12000); - }); + console.log( + `Updated 1000 messages in ConversationViewer in ${(end - start).toFixed(2)}ms` + ); + expect(end - start).toBeLessThan(12000); + }, + 30_000 + ); });