From 47de346df916db462e5843d951f294e891bc0d91 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 8 Apr 2024 19:25:04 +0200 Subject: [PATCH] Add settings playwright test --- e2e/settings.spec.ts | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 e2e/settings.spec.ts diff --git a/e2e/settings.spec.ts b/e2e/settings.spec.ts new file mode 100644 index 00000000..f3d11f46 --- /dev/null +++ b/e2e/settings.spec.ts @@ -0,0 +1,33 @@ +import { test, expect } from '@playwright/test'; +import { setLoginInfo, defaultMocks } from './helpers'; + +test.describe('Settings', () => { + test('Settings stores', async ({ page }) => { + await setLoginInfo(page); + await defaultMocks(page); + await Promise.all([ + page.goto('/'), + // page.waitForResponse('**/Ping'), + // page.waitForResponse('**/ShowConf'), + ]); + // await expect(page.locator('li', { hasText: 'Online' })).toBeInViewport(); + await expect(page.locator('h1', { hasText: 'Welcome to the Freqtrade UI' })).toBeInViewport({ + timeout: 5000, + }); + + await page + .locator('[id=avatar-drop]') + .isVisible() + .then(() => page.locator('[id=avatar-drop]').click()); + await page.locator('.dropdown-menu > * > [href="/settings"]').click(); + await expect(page.locator(':text("FreqUI Settings")')).toBeVisible(); + + // Switch option in the settings. + await page.locator('select').first().selectOption('asTitle'); + + const settings = await page.evaluate(() => + JSON.parse(window.localStorage.getItem('ftUISettings') || '{}'), + ); + await expect(settings['openTradesInTitle']).toBe('asTitle'); + }); +});