8 changed files with 81 additions and 37 deletions
			
			
		@ -0,0 +1,32 @@ | 
				
			|||
import { test, expect } from '@playwright/test'; | 
				
			|||
import { deleteContact, generateNewEthrUser, generateRandomString, importUser, switchToUser } from './testUtils'; | 
				
			|||
 | 
				
			|||
test('Check User 0 can invite someone', async ({ page }) => { | 
				
			|||
  const newDid = await generateNewEthrUser(page); | 
				
			|||
 | 
				
			|||
  await importUser(page, '00'); | 
				
			|||
  await page.goto('./invite-one'); | 
				
			|||
  await page.locator('button > svg.fa-plus').click(); | 
				
			|||
  const neighborNum = await generateRandomString(5); | 
				
			|||
  await page.getByPlaceholder('Notes', { exact: true }).fill(`Neighbor ${neighborNum}`); | 
				
			|||
  // get the expiration date input and set to 14 days from now
 | 
				
			|||
  const expirationDate = new Date(Date.now() + 14 * 24 * 60 * 60 * 1000); | 
				
			|||
  await page.locator('input[type="date"]').fill(expirationDate.toISOString().split('T')[0]); | 
				
			|||
  await page.locator('button:has-text("Save")').click(); | 
				
			|||
  await expect(page.locator('div[role="alert"] button:has-text("Yes")')).toBeHidden(); | 
				
			|||
 | 
				
			|||
  // check that the invite is in the list
 | 
				
			|||
  const newInviteLine = await page.locator(`td:has-text("Neighbor ${neighborNum}")`); | 
				
			|||
  await expect(newInviteLine).toBeVisible(); | 
				
			|||
  // retrieve the link from the title
 | 
				
			|||
  const inviteLink = await newInviteLine.getAttribute('data-testId'); | 
				
			|||
  await expect(inviteLink).not.toBeNull(); | 
				
			|||
 | 
				
			|||
  // become the new user and accept the invite
 | 
				
			|||
  await switchToUser(page, newDid); | 
				
			|||
  await page.goto(inviteLink as string); | 
				
			|||
  await page.getByPlaceholder('Name', { exact: true }).fill(`My pal User #0`); | 
				
			|||
  await page.locator('button:has-text("Save")').click(); | 
				
			|||
  await expect(page.locator('button:has-text("Save")')).toBeHidden(); | 
				
			|||
  await expect(page.locator(`li:has-text("My pal User #0")`)).toBeVisible(); | 
				
			|||
}); | 
				
			|||
					Loading…
					
					
				
		Reference in new issue