A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/seleniumhq/selenium/commit/fcc549ad290d9ae13beecfd875b57178d5fcb2c5 below:

[java] Ensure event firing decorator can accept a target class · SeleniumHQ/selenium@fcc549a · GitHub

29 29

import org.junit.jupiter.api.Tag;

30 30

import org.openqa.selenium.Alert;

31 31

import org.openqa.selenium.By;

32 +

import org.openqa.selenium.Capabilities;

33 +

import org.openqa.selenium.ImmutableCapabilities;

32 34

import org.openqa.selenium.JavascriptExecutor;

33 35

import org.openqa.selenium.WebDriver;

34 36

import org.openqa.selenium.WebDriverException;

35 37

import org.openqa.selenium.WebElement;

38 +

import org.openqa.selenium.remote.RemoteWebDriver;

36 39 37 40

import java.lang.reflect.InvocationTargetException;

38 41

import java.lang.reflect.Method;

@@ -81,7 +84,7 @@ public void afterGet(WebDriver driver, String url) {

81 84

acc.append("afterGet\n");

82 85

}

83 86

};

84 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

87 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

85 88 86 89

decorated.get("http://example.com/");

87 90

@@ -134,7 +137,7 @@ public void afterClick(WebElement element) {

134 137

}

135 138

};

136 139 137 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

140 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

138 141 139 142

decorated.findElement(By.id("test")).click();

140 143

@@ -183,7 +186,7 @@ public void afterBack(WebDriver.Navigation navigation) {

183 186

}

184 187

};

185 188 186 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

189 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

187 190 188 191

decorated.navigate().back();

189 192

@@ -231,7 +234,7 @@ public void afterDismiss(Alert alert) {

231 234

}

232 235

};

233 236 234 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

237 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

235 238 236 239

decorated.switchTo().alert().dismiss();

237 240

@@ -273,7 +276,7 @@ public void afterExecuteScript(WebDriver driver, String script, Object[] args, O

273 276

}

274 277

};

275 278 276 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

279 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

277 280 278 281

((JavascriptExecutor) decorated).executeScript("sum", "2", "2");

279 282

@@ -297,7 +300,7 @@ public void beforeAnyCall(Object target, Method method, Object[] args) {

297 300

}

298 301

};

299 302 300 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

303 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

301 304 302 305

assertThatNoException().isThrownBy(decorated::getWindowHandle);

303 306

}

@@ -327,7 +330,7 @@ public void beforeGetWindowHandle(WebDriver driver) {

327 330

}

328 331

};

329 332 330 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

333 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

331 334 332 335

assertThatNoException().isThrownBy(decorated::getWindowHandle);

333 336

}

@@ -342,7 +345,7 @@ public void afterAnyCall(Object target, Method method, Object[] args, Object res

342 345

}

343 346

};

344 347 345 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

348 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

346 349 347 350

assertThatNoException().isThrownBy(decorated::getWindowHandle);

348 351

}

@@ -358,7 +361,7 @@ public void afterAnyWebDriverCall(WebDriver driver, Method method, Object[] args

358 361

}

359 362

};

360 363 361 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

364 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

362 365 363 366

assertThatNoException().isThrownBy(decorated::getWindowHandle);

364 367

}

@@ -373,7 +376,7 @@ public void afterGetWindowHandle(WebDriver driver, String result) {

373 376

}

374 377

};

375 378 376 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

379 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

377 380 378 381

assertThatNoException().isThrownBy(decorated::getWindowHandle);

379 382

}

@@ -389,7 +392,46 @@ public void onError(Object target, Method method, Object[] args, InvocationTarge

389 392

}

390 393

};

391 394 392 -

WebDriver decorated = new EventFiringDecorator(listener).decorate(driver);

395 +

WebDriver decorated = new EventFiringDecorator<>(listener).decorate(driver);

396 + 397 +

assertThatExceptionOfType(WebDriverException.class)

398 +

.isThrownBy(decorated::getWindowHandle);

399 +

}

400 + 401 +

@Test

402 +

void shouldBeAbleToDecorateAChildClassOfWebDriver() {

403 +

RemoteWebDriver driver = mock(RemoteWebDriver.class);

404 +

when(driver.getCapabilities()).thenReturn(new ImmutableCapabilities("browserName", "firefox"));

405 + 406 +

WebDriverListener listener = new WebDriverListener() {

407 +

@Override

408 +

public void onError(Object target, Method method, Object[] args, InvocationTargetException e) {

409 +

throw new RuntimeException("listener");

410 +

}

411 +

};

412 + 413 +

RemoteWebDriver decorated =

414 +

new EventFiringDecorator<>(RemoteWebDriver.class, listener).decorate(driver);

415 + 416 +

Capabilities caps = decorated.getCapabilities();

417 + 418 +

assertThat(caps.getBrowserName()).isEqualTo("firefox");

419 +

}

420 + 421 +

@Test

422 +

void shouldBeAbleToCallDecoratedMethodForDecoratedChildClass() {

423 +

RemoteWebDriver driver = mock(RemoteWebDriver.class);

424 +

when(driver.getWindowHandle()).thenThrow(new WebDriverException());

425 + 426 +

WebDriverListener listener = new WebDriverListener() {

427 +

@Override

428 +

public void onError(Object target, Method method, Object[] args, InvocationTargetException e) {

429 +

throw new RuntimeException("listener");

430 +

}

431 +

};

432 + 433 +

RemoteWebDriver decorated =

434 +

new EventFiringDecorator<>(RemoteWebDriver.class, listener).decorate(driver);

393 435 394 436

assertThatExceptionOfType(WebDriverException.class)

395 437

.isThrownBy(decorated::getWindowHandle);


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4