You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-desktop/ts/test/automation/create_group.spec.ts

49 lines
1.8 KiB
TypeScript

import { _electron, test } from '@playwright/test';
import { newUser } from './new_user';
import { openApp } from './open';
import { sendMessage } from './send_message';
const userADisplayName = 'userA';
const userBDisplayName = 'userB';
const userCDisplayName = 'userC';
const testMessage = 'Sending Test Message';
const testReply = 'Sending Reply Test Message';
test('Create group', async () => {
// Open Electron
const [windowA, windowB, windowC] = await Promise.all([openApp('1'), openApp('2'), openApp('3')]);
// Create User x3
// create userA
const userA = await newUser(windowA, userADisplayName);
// create userB
const userB = await newUser(windowB, userBDisplayName);
// Create UserC
const userC = await newUser(windowC, userCDisplayName);
// Add contact
await sendMessage(windowA, userB.sessionid, testMessage);
await sendMessage(windowB, userA.sessionid, testReply);
await sendMessage(windowA, userC.sessionid, testMessage);
await sendMessage(windowC, userA.sessionid, testReply);
// Create group with existing contact and session ID (of non-contact)
// Click new closed group tab
await windowA.click('"New Closed Group"');
// Enter group name
await windowA.fill('.session-id-editable', 'Test Group');
// Select user B
await windowA.click(userBDisplayName);
// Select user C
await windowA.click(userCDisplayName);
// Click Done
await windowA.click('"Done"');
// Check group was successfully created
windowA.locator(`text=${userBDisplayName}, ${userCDisplayName} + 'You joined the group'`);
// Send message in group chat from user a
await windowA.fill('[data-testid=message-input] * textarea', testMessage);
// Verify it was received by other two accounts
// Send message from user 2
// Verify
// Send message from user 3
// Verify
});