feat: users row actions "Cancel invite" on Pending rows and "Renew invite" on Expired rows
This commit is contained in:
1 parent
1ece778caf
commit
142325730d
14 files changed
+1156
-35
No files matched your search
@@ -279,8 +279,8 @@ describe('Default — the list loads newest first, with display name, "you" tag
|
||||
expect(findButton('Invite user')).toBeTruthy()
|
||||
|
||||
expect(rowTexts()).toEqual([
|
||||
'sam.oliveira@renew.example — admin Pending 27 Sep 2026',
|
||||
'p.huber@gmail.com Paul Huber admin Expired 3 Aug 2026',
|
||||
'sam.oliveira@renew.example — admin Pending 27 Sep 2026 Cancel invite',
|
||||
'p.huber@gmail.com Paul Huber admin Expired 3 Aug 2026 Renew invite',
|
||||
'ines.duarte@renew.example Inès Duarte admin Accepted 18 Jun 2026',
|
||||
'jonas@renew.example — admin Accepted 2 Apr 2026',
|
||||
'marta@renew.example you — owner Accepted 12 Mar 2026',
|
||||
@@ -338,8 +338,8 @@ describe('Default — the list loads newest first, with display name, "you" tag
|
||||
await mountPage({}, false)
|
||||
|
||||
expect(rowTexts()).toEqual([
|
||||
'sam.oliveira@renew.example admin Pending Created 27 Sep 2026',
|
||||
'p.huber@gmail.com Paul Huber admin Expired Created 3 Aug 2026',
|
||||
'sam.oliveira@renew.example admin Pending Created 27 Sep 2026 Cancel invite',
|
||||
'p.huber@gmail.com Paul Huber admin Expired Created 3 Aug 2026 Renew invite',
|
||||
'ines.duarte@renew.example Inès Duarte admin Accepted Created 18 Jun 2026',
|
||||
'jonas@renew.example admin Accepted Created 2 Apr 2026',
|
||||
'marta@renew.example you owner Accepted Created 12 Mar 2026',
|
||||
@@ -457,13 +457,20 @@ describe('Non-owners cannot invite', () => {
|
||||
expect(findButton('Invite user')).toBeUndefined()
|
||||
})
|
||||
|
||||
it.each([true, false])('shows no hint for an admin on marta and jonas alone (desktop %s)', async (desktop) => {
|
||||
await mountPage({ list: () => Promise.resolve(defaultFixture().slice(3)) }, desktop, 'admin')
|
||||
it.each([true, false])(
|
||||
'shows no hint for an admin on marta and jonas alone (desktop %s)',
|
||||
async (desktop) => {
|
||||
await mountPage(
|
||||
{ list: () => Promise.resolve(defaultFixture().slice(3)) },
|
||||
desktop,
|
||||
'admin',
|
||||
)
|
||||
|
||||
expect(rows()).toHaveLength(2)
|
||||
expect(document.body.textContent).not.toContain('Invite someone so they can sign in')
|
||||
expect(findButton('Invite user')).toBeUndefined()
|
||||
})
|
||||
expect(rows()).toHaveLength(2)
|
||||
expect(document.body.textContent).not.toContain('Invite someone so they can sign in')
|
||||
expect(findButton('Invite user')).toBeUndefined()
|
||||
},
|
||||
)
|
||||
})
|
||||
|
||||
describe('Error — a 500 or a network failure replaces the list with an alert and a retry', () => {
|
||||
@@ -598,8 +605,8 @@ describe('Invite sent — a 201 closes the modal, adds a Pending row on top and
|
||||
expect(texts).toHaveLength(6)
|
||||
expect(texts[0]).toContain('lea.martin@renew.example — admin Pending Today')
|
||||
expect(texts.slice(1)).toEqual([
|
||||
'sam.oliveira@renew.example — admin Pending 27 Sep 2026',
|
||||
'p.huber@gmail.com Paul Huber admin Expired 3 Aug 2026',
|
||||
'sam.oliveira@renew.example — admin Pending 27 Sep 2026 Cancel invite',
|
||||
'p.huber@gmail.com Paul Huber admin Expired 3 Aug 2026 Renew invite',
|
||||
'ines.duarte@renew.example Inès Duarte admin Accepted 18 Jun 2026',
|
||||
'jonas@renew.example — admin Accepted 2 Apr 2026',
|
||||
'marta@renew.example you — owner Accepted 12 Mar 2026',
|
||||
|
||||
Reference in new issue
Block a user