Commit 853fdf3e authored by Arsam Ali's avatar Arsam Ali

some changes on openAI file related to connection timout

parent 63d56aa8
...@@ -2,6 +2,7 @@ package org.example.BurjulArabPage; ...@@ -2,6 +2,7 @@ package org.example.BurjulArabPage;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
//import org.example.BaseTest.LogExecution;
import org.example.NisumSearchPage.NisumPage; import org.example.NisumSearchPage.NisumPage;
import org.openqa.selenium.By; import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.JavascriptExecutor;
...@@ -19,7 +20,9 @@ public class BurjulArabPage { ...@@ -19,7 +20,9 @@ public class BurjulArabPage {
private static final Logger log = LogManager.getLogger(NisumPage.class); private static final Logger log = LogManager.getLogger(NisumPage.class);
By searchBox = By.name("q"); By searchBox = By.name("q");
By burjAlArabLink = By.xpath("//a[@href='https://www.jumeirah.com/en/stay/dubai/burj-al-arab-jumeirah']//h3[@class='LC20lb MBeuO DKV0Md']"); By burjAlArabLink = By.xpath("//a[@href='https://www.jumeirah.com/en/stay/dubai/burj-al-arab-jumeirah']//h3[@class='LC20lb MBeuO DKV0Md']");
// By burjAlArabLink = By.xpath("//a[@href='https://www.jumeirah.com/en/stay/dubai/burj-al-aras='LC20lb MBeuO DKV0Md']");
By reserveButton = By.xpath("//button[normalize-space()='RESERVE']"); By reserveButton = By.xpath("//button[normalize-space()='RESERVE']");
public BurjulArabPage(WebDriver driver) { public BurjulArabPage(WebDriver driver) {
...@@ -32,10 +35,10 @@ public class BurjulArabPage { ...@@ -32,10 +35,10 @@ public class BurjulArabPage {
searchField.submit(); searchField.submit();
} }
public void clickBurjAlArabLink() { public void clickBurjAlArabLink() {
WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10)); WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10));
log.info("Burjul arab Page link"); log.info("Burjul arab Page link");
// log.error("//a[@href='https://www.jumeirah.com/en/stay/dubai/burj-al-aras='LC20lb MBeuO DKV0Md'] i have found an error");
WebElement link = wait.until(ExpectedConditions.elementToBeClickable(burjAlArabLink)); WebElement link = wait.until(ExpectedConditions.elementToBeClickable(burjAlArabLink));
link.click(); link.click();
} }
...@@ -49,4 +52,43 @@ public class BurjulArabPage { ...@@ -49,4 +52,43 @@ public class BurjulArabPage {
public void waitForSeconds(int seconds) throws InterruptedException { public void waitForSeconds(int seconds) throws InterruptedException {
Thread.sleep(seconds * 1000); Thread.sleep(seconds * 1000);
} }
// WebDriver driver;
// private static final Logger log = LogManager.getLogger(BurjulArabPage.class);
//
// By searchBox = By.name("q");
// // By burjAlArabLink = By.xpath("//a[@href='https://www.jumeirah.com/en/stay/dubai/burj-al-arab-jumeirah']//h3[@class='LC20lb MBeuO DKV0Md']");
// By burjAlArabLink = By.xpath("//a[@href='https://www.jumeirah.com/en/stay/dubai/burj-al-arab-jumelass='LC20lb MBeuO DKV0Md']");
//
// By reserveButton = By.xpath("//button[normalize-space()='RESERVE']");
//
// public BurjulArabPage(WebDriver driver) {
// this.driver = driver;
// }
//
// @LogExecution
// public void searchForText(String text) {
// WebElement searchField = driver.findElement(searchBox);
// searchField.sendKeys(text);
// searchField.submit();
// }
//
// @LogExecution
// public void clickBurjAlArabLink() {
// WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10));
// WebElement link = wait.until(ExpectedConditions.elementToBeClickable(burjAlArabLink));
// link.click();
// }
//
// @LogExecution
// public void clickReserveButton() {
// WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10));
// WebElement reserveBtn = wait.until(ExpectedConditions.elementToBeClickable(reserveButton));
// ((JavascriptExecutor) driver).executeScript("arguments[0].click();", reserveBtn);
// }
//
// public void waitForSeconds(int seconds) throws InterruptedException {
// Thread.sleep(seconds * 1000);
// }
} }
...@@ -46,7 +46,6 @@ public class NisumSteps { ...@@ -46,7 +46,6 @@ public class NisumSteps {
@Then("I should be redirected to the Pakistan careers page") @Then("I should be redirected to the Pakistan careers page")
public void iShouldBeRedirectedToThePakistanCareersPage() { public void iShouldBeRedirectedToThePakistanCareersPage() {
String expectedUrl = "https://www.nisum.com/careers/pakistan";
assert(Objects.requireNonNull(driver.getCurrentUrl()).contains("pakistan")); assert(Objects.requireNonNull(driver.getCurrentUrl()).contains("pakistan"));
driver.quit(); driver.quit();
} }
......
...@@ -7,7 +7,7 @@ import java.util.Map; ...@@ -7,7 +7,7 @@ import java.util.Map;
public class Main { public class Main {
public static void main(String[] args) { public static void main(String[] args) {
String logFilePath = "/Users/arsamali/Documents/IdeaProjects/POC-Arsam/src/main/resources/log4j4-error.log"; String logFilePath = "/Users/arsamali/Documents/IdeaProjects/POC-Arsam/src/main/resources/log4j3-error.log";
LogParser logParser = new LogParser(); LogParser logParser = new LogParser();
List<String> errorLogs = logParser.extractErrors(logFilePath); List<String> errorLogs = logParser.extractErrors(logFilePath);
......
...@@ -6,12 +6,16 @@ import java.io.IOException; ...@@ -6,12 +6,16 @@ import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.TimeUnit;
public class OpenAISuggestions { public class OpenAISuggestions {
private static final String API_URL = "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=AIzaSyDwyMA69dj-7tejDr7iVlKzU0Y86OGMAZ0"; private static final String API_URL = "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=AIzaSyDynh8MYelwzX1uo31D2piQBL4nN6lA6qM";
private final OkHttpClient client = new OkHttpClient(); private final OkHttpClient client = new OkHttpClient.Builder()
private final ObjectMapper objectMapper = new ObjectMapper(); .connectTimeout(30, TimeUnit.SECONDS) // Connection timeout
.readTimeout(30, TimeUnit.SECONDS) // Read timeout
.writeTimeout(30, TimeUnit.SECONDS) // Write timeout
.build(); private final ObjectMapper objectMapper = new ObjectMapper();
public Map<String, Object> getSuggestions(String errorLog) throws IOException { public Map<String, Object> getSuggestions(String errorLog) throws IOException {
Map<String, Object> jsonBody = new HashMap<>(); Map<String, Object> jsonBody = new HashMap<>();
...@@ -67,4 +71,4 @@ public class OpenAISuggestions { ...@@ -67,4 +71,4 @@ public class OpenAISuggestions {
return result; return result;
} }
} }
\ No newline at end of file
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<Console name="Console" target="SYSTEM_OUT"> <Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level - %msg%n"/> <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level - %msg%n"/>
</Console> </Console>
<File name="File" fileName="/Users/arsamali/Documents/IdeaProjects/POC-Arsam/src/main/resources/log4j4-error.log" append="false"> <File name="File" fileName="/Users/arsamali/Documents/IdeaProjects/POC-Arsam/src/main/resources/log4j3-error.log" append="false">
<PatternLayout> <PatternLayout>
<Pattern>%d{HH:mm:ss.SSS} [%t] %-5level - %msg%n</Pattern> <Pattern>%d{HH:mm:ss.SSS} [%t] %-5level - %msg%n</Pattern>
</PatternLayout> </PatternLayout>
...@@ -12,12 +12,12 @@ ...@@ -12,12 +12,12 @@
<Loggers> <Loggers>
<!-- Logger for NisumPage class, can be adjusted as per package --> <!-- Logger for NisumPage class, can be adjusted as per package -->
<Logger name="com.org.example" level="info" additivity="false"> <Logger name="com.org.example" level="error" additivity="false">
<AppenderRef ref="Console"/> <AppenderRef ref="Console"/>
</Logger> </Logger>
<!-- Root logger with appender reference to File --> <!-- Root logger with appender reference to File -->
<Root level="info"> <Root level="error">
<AppenderRef ref="File"/> <AppenderRef ref="File"/>
</Root> </Root>
</Loggers> </Loggers>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment