import { expect, test } from '@playwright/test'
import { mockApi } from './support/mockApi'

test.beforeEach(async ({ page }) => {
  await mockApi(page, { authenticated: true })
})

test('renders catalog items from mock api', async ({ page }) => {
  await page.goto('/catalog')

  await expect(page.getByRole('heading', { name: 'Каталог открытых лекций' })).toBeVisible()
  await expect(page.getByText('Введение в ML')).toBeVisible()
  await expect(page.getByText('Квантовые вычисления')).toBeVisible()
})

test('register button works for available lecture', async ({ page }) => {
  await page.goto('/catalog')

  const firstRegisterButton = page.getByRole('button', { name: 'Записаться' }).first()
  await firstRegisterButton.click()

  await expect(page.getByText('Вы записаны на лекцию.')).toBeVisible()
})
