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

test('Check usage limits', async ({ page }) => {
  // Check without ID first
  await page.goto('./account');
  await expect(page.locator('div.bg-slate-100.rounded-md').filter({ hasText: 'Usage Limits' })).toBeHidden();

  // Import user 01
  const did = await importUser(page, '01');

  // Verify that "Usage Limits" section is visible
  await expect(page.locator('#sectionUsageLimits')).toBeVisible();
  await expect(page.locator('#sectionUsageLimits')).toContainText('You have done');
  await expect(page.locator('#sectionUsageLimits')).toContainText('You have uploaded');

  await expect(page.getByText('Your claims counter resets')).toBeVisible();
  await expect(page.getByText('Your registration counter resets')).toBeVisible();
  await expect(page.getByText('Your image counter resets')).toBeVisible();
  await expect(page.getByRole('button', { name: 'Recheck Limits' })).toBeVisible();

  // Set name
  await page.getByRole('button', { name: 'Set Your Name' }).click();
  const name = 'User ' + did.slice(11, 14);
  await page.getByPlaceholder('Name').fill(name);
  await page.getByRole('button', { name: 'Save' }).click();

});