Zapisane wyszukiwania na koncie zamiast w przegladarce
Deploy Polska Lokalnie / deploy (push) Successful in 12s
Deploy Polska Lokalnie / deploy (push) Successful in 12s
Nowa tabela saved_searches i /api/saved-searches (lista, dodanie, usuniecie, jednorazowy import wpisow z localStorage). Front czyta liste z serwera, wiec wyszukiwania sa te same na kazdym urzadzeniu i przezywaja wyczyszczenie danych strony. Bez powiadomien. Skrypt czyszczacy usuwa wpisy skasowanych kont. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -500,3 +500,34 @@ test.describe('Standard: przyciski robia to, co obiecuja', () => {
|
||||
await expect(page.locator('a.help-contact-channel-action[href^="tel:"]')).toHaveCount(1);
|
||||
});
|
||||
});
|
||||
|
||||
// Zapisane wyszukiwania trzyma serwer, wiec sa te same w kazdej przegladarce i przezywaja
|
||||
// wyczyszczenie danych strony. Bez powiadomien - to tylko lista filtrow do wygodnego powrotu.
|
||||
test.describe('Zapisane wyszukiwania', () => {
|
||||
test('zapis przezywa wyczyszczenie pamieci przegladarki', async ({ page }) => {
|
||||
await login(page);
|
||||
await goto(page, `${ROUTES.buy}?miasto=Gdynia`);
|
||||
const saveButton = page.getByRole('button', { name: /wyszukiwanie/ }).first();
|
||||
if ((await saveButton.innerText()).includes('Zapisano')) {
|
||||
await saveButton.click();
|
||||
await expect(saveButton).toHaveText(/Zapisz wyszukiwanie/);
|
||||
}
|
||||
await saveButton.click();
|
||||
await expect(saveButton).toHaveText(/Zapisano wyszukiwanie/);
|
||||
|
||||
// Symulacja innego urzadzenia: zostaje sam token logowania, reszta pamieci znika.
|
||||
await page.evaluate(() => {
|
||||
const token = window.localStorage.getItem('polskalokalnie-auth-token');
|
||||
window.localStorage.clear();
|
||||
if (token) {
|
||||
window.localStorage.setItem('polskalokalnie-auth-token', token);
|
||||
}
|
||||
});
|
||||
await goto(page, ROUTES.accountSearches);
|
||||
await expect(page.locator('.account-searches-list, main').first()).toContainText('Gdynia');
|
||||
|
||||
// Sprzatanie, zeby kolejne uruchomienie testu zaczynalo od czystej listy.
|
||||
await page.locator('.account-search-remove').first().click();
|
||||
await expect(page.locator('main')).not.toContainText('Gdynia');
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user