import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI
import org.openqa.selenium.Keys as Keys

// =======================
// BUKA BROWSER
// =======================
WebUI.openBrowser('')

WebUI.maximizeWindow()

// =======================
// LOGIN
// =======================
WebUI.navigateToUrl('https://kaumancare.my.id/login')

WebUI.waitForElementVisible(findTestObject('Page_Aplikasi Kepegawaian/input_nameexample.com'), 10)

WebUI.setText(findTestObject('Page_Aplikasi Kepegawaian/input_nameexample.com'), 'admin@example.com')

WebUI.setEncryptedText(findTestObject('Page_Aplikasi Kepegawaian/input_'), 'RAIVpflpDOg=')

WebUI.click(findTestObject('Page_Aplikasi Kepegawaian/button_Login'))

// =======================
// MASUK MENU SLIP GAJI
// =======================
WebUI.waitForElementClickable(findTestObject('Page_Aplikasi Kepegawaian/a_Slip Gaji'), 10)

WebUI.click(findTestObject('Page_Aplikasi Kepegawaian/a_Slip Gaji'))

// =======================
// MASUK HALAMAN GENERATE
// =======================
WebUI.waitForElementClickable(findTestObject('Page_Aplikasi Kepegawaian/a_Generate Slip Gaji'), 10)

WebUI.click(findTestObject('Page_Aplikasi Kepegawaian/a_Generate Slip Gaji'))

// =======================
// PILIH USER (FIX ERROR DI SINI)
// =======================
WebUI.waitForElementVisible(findTestObject('Page_Aplikasi Kepegawaian/select_user_id'), 10)

// PAKAI LABEL (LEBIH AMAN DARI VALUE)
WebUI.selectOptionByLabel(findTestObject('Page_Aplikasi Kepegawaian/select_user_id'), 'Dewi - 123456', false)

// =======================
// ISI DATA GAJI
// =======================
WebUI.setText(findTestObject('Page_Aplikasi Kepegawaian/input_base_salary'), '3000000')

// =======================
// TAMBAH TUNJANGAN
// =======================
WebUI.click(findTestObject('Page_Aplikasi Kepegawaian/button_Tambah Tunjangan'))

WebUI.waitForElementVisible(findTestObject('Page_Aplikasi Kepegawaian/input_Jumlah'), 10)

WebUI.setText(findTestObject('Page_Aplikasi Kepegawaian/input_Jumlah'), '300000')

WebUI.setText(findTestObject('Page_Aplikasi Kepegawaian/textarea_notes'), 'Tunjangan sekolah anak')

// =======================
// GENERATE SLIP
// =======================
WebUI.click(findTestObject('Page_Aplikasi Kepegawaian/button_Generate Slip'))

// OPTIONAL: tunggu proses
WebUI.delay(2)

// =======================
// KEMBALI
// =======================
WebUI.click(findTestObject('Page_Aplikasi Kepegawaian/button_batal_admin_generate_slip_gaji_fix'))

// =======================
// CLOSE
// =======================
WebUI.closeBrowser()

