import { test, expect } from '@playwright/test';

// A standalone DOM exercise: does NOT test the OrbitDesk server.
test('publication message follows the user action', async ({ page }) => {
  await page.setContent(`
    <main>
      <label for="title">Название</label>
      <input id="title" value="Учебная задача" />
      <button type="button" id="publish">Опубликовать</button>
      <p role="status" id="status">Черновик</p>
    </main>
    <script>
      document.getElementById('publish').addEventListener('click', () => {
        document.getElementById('status').textContent = 'Опубликовано';
      });
    </script>
  `);
  await expect(page.getByRole('status')).toHaveText('Черновик');
  await page.getByRole('button', { name: 'Опубликовать', exact: true }).click();
  await expect(page.getByRole('status')).toHaveText('Опубликовано');
  await expect(page.getByLabel('Название', { exact: true })).toHaveValue('Учебная задача');
});
