import { TemplateFile } from '../../types/types.js';

export const CalculatorTest = {
  folder: '/mac/',
  fileName: 'CalculatorTest.java',
  test: true,
  content: `package {{ groupId }}.mac;

import static io.github.boykaframework.actions.device.DeviceActions.onDevice;
import static io.github.boykaframework.actions.drivers.DriverActions.withDriver;
import static io.github.boykaframework.actions.drivers.WindowActions.onWindow;
import static io.github.boykaframework.enums.PlatformType.MAC;
import static io.github.boykaframework.manager.ParallelSession.clearSession;
import static io.github.boykaframework.manager.ParallelSession.createSession;
import static {{ groupId }}.mac.actions.CalculatorActions.verifyAdd;

import org.testng.ITestResult;
import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

public class CalculatorTest {
    @AfterMethod
    public void afterMethod (final ITestResult result) {
        if (!result.isSuccess ()) {
            onWindow ().takeScreenshot ();
        }
    }

    @BeforeClass
    public void setupTestClass () {
        createSession (MAC, "{{ configName }}");
        onDevice ().startRecording ();
    }

    @AfterClass
    public void tearDownTestClass () {
        onDevice ().stopRecording ();
        withDriver ().saveLogs ();
        clearSession ();
    }

    @Test
    public void testCalculator () {
        verifyAdd (9, 7);
    }
}
`,
} satisfies TemplateFile;
