package creditfair_admin_maven_test;

import org.testng.Assert;
import org.testng.annotations.Test;

import creditfair_admin_maven_config.DbConnection;
import creditfair_admin_maven_email.EmailReport;
import creditfair_admin_maven_locator.AdminAddappLocator;
import creditfair_admin_maven_locator.AdminTallyLocator;

import java.util.ArrayList;

import org.apache.commons.codec.binary.Base64;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.PageFactory;
import org.testng.annotations.Test;

import creditfair_admin_maven_uipages.AdminAddapp;
import creditfair_admin_maven_uipages.AdminAppprocApprove;
import creditfair_admin_maven_uipages.AdminLogin;
import creditfair_admin_maven_uipages.AdminTally;

public class AdminTest extends AdminHelper {

	@Test (priority = 0)
	public void testRun() throws InterruptedException {
		try {
						
			AdminLogin login = PageFactory.initElements(driver, AdminLogin.class);

			AdminAddapp addapp = PageFactory.initElements(driver, AdminAddapp.class);
			
			AdminAppprocApprove approveproc = PageFactory.initElements(driver, AdminAppprocApprove.class);

			AdminAddappLocator adminlocator = PageFactory.initElements(driver, AdminAddappLocator.class);
			
			AdminTallyLocator admintallylocator = PageFactory.initElements(driver, AdminTallyLocator.class);
			
			AdminTally admintally = PageFactory.initElements(driver, AdminTally.class);
			
			EmailReport emailreport = new EmailReport();
			
			login.prodloginAdmin();
			
//			login.loginAdmin("pratikadmin", "1234");
			
			Thread.sleep(2000);
			
			 driver.get("https://creditfair.in/admin/tally-settlement");
			 
			 Thread.sleep(150000);
			
			admintally.livenessTally(driver, admintallylocator.snackbarTallycheck());
			
//			Assert.assertEquals("test", "NoTitle");

			
//			emailreport.emailSend();
//			String originalInput = "test input";
			
//			Base64 base64 = new Base64();
//			String encodedString = new String(base64.encode(originalInput.getBytes()));
//			System.out.println(encodedString);
//			String decodedString = new String(base64.decode(encodedString));
//			System.out.println(decodedString);

//			addapp.appForm(driver, adminlocator.addApplicationbutton(), adminlocator.addApplicationbutton1(),
//					adminlocator.applicationDetailstab2(), adminlocator.applicationDetailstab3(),
//					adminlocator.langaugeOption(), adminlocator.selectLangauge(), adminlocator.firstName(),
//					adminlocator.middleName(), adminlocator.lastName(), adminlocator.fatherName(), adminlocator.eMail(),
//					adminlocator.mobileNo(), adminlocator.panNo(), adminlocator.alternateNo(),
//					adminlocator.genderOption(), adminlocator.selectGender(), adminlocator.calenderOpen(),
//					adminlocator.calenderDay(), adminlocator.calenderMonth(), adminlocator.calenderPrevbtton(),
//					adminlocator.monthlyIncome(), adminlocator.loanAmount(), adminlocator.merchantOption(),
//					adminlocator.selectMerchant(), adminlocator.centerOption(), adminlocator.selectCenter(),
//					adminlocator.companyName(), adminlocator.purposeOption(), adminlocator.selectPurpose(),
//					adminlocator.durationYear(), adminlocator.durationMonth(), adminlocator.tenureOption(),
//					adminlocator.selectTenure(), adminlocator.maritalOption(), adminlocator.selectMartial(),
//					adminlocator.professiOnpotion(), adminlocator.selectProfession(), adminlocator.permenentAddress(),
//					adminlocator.permenentCity(), adminlocator.permenentLandmark(), adminlocator.permenentPincode(),
//					adminlocator.permenentState(), adminlocator.selectPermenentstate(),
//					adminlocator.permenentAddresstaus(), adminlocator.selectPermenentAddressstaus(),
//					adminlocator.checkboxAddress(), adminlocator.submitApp());
			
			
		} 

		catch (Exception e) {
			e.printStackTrace();
		}
		
	}
	

}
