import { expect } from "e2e";
import { IOS, test } from "./t3-mobile.ts";

test("An hourly task due just under an hour reads Next run in 1 hour", IOS, async ({ t3, app, screen, device }) => {
  await t3.project("Hourly demo");
  await device.setAppearance("light");
  await t3.open();
  await screen.getByTestId("workspace-tab-settings").tap();
  await screen.scrollUntilVisible(screen.getByText("Scheduled tasks", { exact: true }));
  await screen.getByText("Scheduled tasks", { exact: true }).tap();
  await screen.getByRole("button", "New task").tap();
  await screen.getByLabel("Name").fill("Hourly check 2");
  await screen.getByLabel("Prompt").fill("Say hi");
  await device.dismissKeyboard();
  await screen.scrollUntilVisible(screen.getByText("Interval", { exact: true }));
  await screen.getByText("Interval", { exact: true }).tap();
  await screen.scrollUntilVisible(screen.getByLabel("Minutes between runs"));
  await screen.getByLabel("Minutes between runs").fill("60");
  await device.dismissKeyboard();
  await screen.scrollUntilVisible(screen.getByRole("button", "Create task"));
  await screen.getByRole("button", "Create task").tap();
  await screen.getByRole("button", "Back", { exact: true }).tap();
  await screen.getByText("Scheduled tasks", { exact: true }).tap();
  await app.screenshot("hourly-next-run");
  await expect(screen.getByText("Every hour · Next run in 1 hour", { exact: true })).toBeVisible();
});
