also looking at this
feat: mailbox recovery addresses and password reset by email
#13
21 files
+1503
-10
| @@ -9,13 +9,13 @@ test('deployments fingerprint styles so existing browsers fetch updated controls | ||
| 9 | 9 | expect(stylesheetUrl(first)).toBe(stylesheetUrl(first)) |
| 10 | 10 | expect(stylesheetUrl(first)).not.toBe(stylesheetUrl(second)) |
| 11 | 11 | await buildWebmail() |
| 12 | for (const page of ['index', 'login']) { | |
| 12 | for (const page of ['index', 'login', 'recover']) { | |
| 13 | 13 | const html = await Bun.file(join(import.meta.dir, `../zig/src/api/webmail_dist/${page}.html`)).text() |
| 14 | 14 | expect(html).toMatch(/href="\/styles\.css\?v=[0-9a-f]{16}"/) |
| 15 | 15 | } |
| 16 | 16 | }) |
| 17 | 17 | |
| 18 | for (const page of ['login', 'index']) { | |
| 18 | for (const page of ['login', 'index', 'recover']) { | |
| 19 | 19 | test(`${page} compiles with STX bindings and a self-contained runtime`, async () => { |
| 20 | 20 | const path = join(import.meta.dir, `pages/${page}.stx`) |
| 21 | 21 | const source = await Bun.file(path).text() |
| @@ -31,6 +31,14 @@ for (const page of ['login', 'index']) { | ||
| 31 | 31 | if (page === 'index') { |
| 32 | 32 | expect(html).toContain('sandbox=""') |
| 33 | 33 | expect(html).toContain('/webmail/auth/password') |
| 34 | expect(html).toContain('/webmail/auth/recovery') | |
| 35 | } | |
| 36 | if (page === 'login') | |
| 37 | expect(html).toContain('href="/forgot"') | |
| 38 | if (page === 'recover') { | |
| 39 | expect(html).toContain('/webmail/auth/forgot') | |
| 40 | expect(html).toContain('/webmail/auth/reset/verify') | |
| 41 | expect(html).toContain('/webmail/auth/reset') | |
| 34 | 42 | } |
| 35 | 43 | }) |
| 36 | 44 | } |