Skip to content

Commit 449f037

Browse files
authored
Merge branch 'trunk' into petesong/add-practice-example
2 parents 502afa9 + 203fe5a commit 449f037

File tree

18 files changed

+256
-304
lines changed

18 files changed

+256
-304
lines changed

.github/workflows/deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
jobs:
99
deploy:
1010
if: contains(toJson(github.event.commits), '[deploy site]') == true
11-
runs-on: ubuntu-22.04
11+
runs-on: ubuntu-24.04
1212
steps:
1313
- name: Checkout repo
1414
uses: actions/checkout@v4

.github/workflows/label-commenter.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ permissions:
1111

1212
jobs:
1313
comment:
14-
runs-on: ubuntu-22.04
14+
runs-on: ubuntu-24.04
1515
steps:
1616
- uses: actions/checkout@v4
1717
- name: Label Commenter

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ on:
1010

1111
jobs:
1212
test_build:
13-
runs-on: ubuntu-22.04
13+
runs-on: ubuntu-24.04
1414
steps:
1515
- name: Checkout repo
1616
uses: actions/checkout@v4

.gitpod.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
tasks:
22
- name: Install Hugo, init submodules and start website
33
init: |
4-
curl -LO https://github.com/gohugoio/hugo/releases/download/v0.110.0/hugo_extended_0.110.0_linux-amd64.deb && \
5-
sudo dpkg -i hugo_extended_0.110.0_linux-amd64.deb && \
6-
sudo rm hugo_extended_0.110.0_linux-amd64.deb
4+
curl -LO https://github.com/gohugoio/hugo/releases/download/v0.125.4/hugo_extended_0.125.4_linux-amd64.deb && \
5+
sudo dpkg -i hugo_extended_0.125.4_linux-amd64.deb && \
6+
sudo rm hugo_extended_0.125.4_linux-amd64.deb
77
command: |
88
cd website_and_docs
9-
hugo server --baseUrl $(gp url 1313) --appendPort=false
9+
hugo server --baseURL $(gp url 1313) --appendPort=false
1010
1111
# List the ports you want to expose and what to do when they are served. See https://www.gitpod.io/docs/config-ports/
1212
ports:

examples/java/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ repositories {
1111

1212
dependencies {
1313
testImplementation 'org.seleniumhq.selenium:selenium-java:4.25.0'
14-
testImplementation 'org.junit.jupiter:junit-jupiter-engine:5.11.0'
14+
testImplementation 'org.junit.jupiter:junit-jupiter-engine:5.11.1'
1515
}
1616

1717
test {

examples/java/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
<dependency>
4141
<groupId>org.junit.jupiter</groupId>
4242
<artifactId>junit-jupiter-engine</artifactId>
43-
<version>5.11.0</version>
43+
<version>5.11.1</version>
4444
<scope>test</scope>
4545
</dependency>
4646
<dependency>
@@ -55,7 +55,7 @@
5555
<plugin>
5656
<groupId>org.apache.maven.plugins</groupId>
5757
<artifactId>maven-surefire-plugin</artifactId>
58-
<version>3.5.0</version>
58+
<version>3.5.1</version>
5959
<configuration>
6060
<properties>
6161
<configurationParameters>
Lines changed: 89 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,92 @@
1-
package dev.selenium.interactions;
1+
// Licensed to the Software Freedom Conservancy (SFC) under one
2+
// or more contributor license agreements. See the NOTICE file
3+
// distributed with this work for additional information
4+
// regarding copyright ownership. The SFC licenses this file
5+
// to you under the Apache License, Version 2.0 (the
6+
// "License"); you may not use this file except in compliance
7+
// with the License. You may obtain a copy of the License at
8+
//
9+
// http://www.apache.org/licenses/LICENSE-2.0
10+
//
11+
// Unless required by applicable law or agreed to in writing,
12+
// software distributed under the License is distributed on an
13+
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
// KIND, either express or implied. See the License for the
15+
// specific language governing permissions and limitations
16+
// under the License.
217

3-
import dev.selenium.BaseTest;
18+
import org.junit.jupiter.api.Test;
19+
import org.openqa.selenium.*;
20+
import org.openqa.selenium.chrome.ChromeDriver;
21+
import org.openqa.selenium.chrome.ChromeOptions;
22+
import org.openqa.selenium.support.ui.ExpectedConditions;
23+
import org.openqa.selenium.support.ui.WebDriverWait;
424

5-
public class AlertsTest extends BaseTest {
25+
import java.time.Duration;
626

7-
}
27+
import static org.junit.jupiter.api.Assertions.assertEquals;
28+
29+
public class AlertsTest {
30+
31+
@Test
32+
public void testForAlerts() throws Exception {
33+
34+
ChromeOptions chromeOptions = new ChromeOptions();
35+
chromeOptions.addArguments("disable-search-engine-choice-screen");
36+
WebDriver driver = new ChromeDriver(chromeOptions);
37+
38+
driver.manage().timeouts().implicitlyWait(Duration.ofMillis(500));
39+
driver.manage().window().maximize();
40+
//Navigate to Url
41+
driver.get("https://www.selenium.dev/documentation/webdriver/interactions/alerts/");
42+
43+
//Simple Alert
44+
//Click the link to activate the alert
45+
JavascriptExecutor js = (JavascriptExecutor) driver;
46+
//execute js for alert
47+
js.executeScript("alert('Sample Alert');");
48+
WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(30));
49+
//Wait for the alert to be displayed and store it in a variable
50+
wait.until(ExpectedConditions.alertIsPresent());
51+
52+
Alert alert = driver.switchTo().alert();
53+
//Store the alert text in a variable and verify it
54+
String text = alert.getText();
55+
assertEquals(text, "Sample Alert");
56+
//Press the OK button
57+
alert.accept();
58+
59+
//Confirm
60+
//execute js for confirm
61+
js.executeScript("confirm('Are you sure?');");
62+
//Wait for the alert to be displayed
63+
wait = new WebDriverWait(driver, Duration.ofSeconds(30));
64+
wait.until(ExpectedConditions.alertIsPresent());
65+
66+
67+
alert = driver.switchTo().alert();
68+
//Store the alert text in a variable and verify it
69+
text = alert.getText();
70+
assertEquals(text, "Are you sure?");
71+
//Press the Cancel button
72+
alert.dismiss();
73+
74+
//Prompt
75+
//execute js for prompt
76+
js.executeScript("prompt('What is your name?');");
77+
//Wait for the alert to be displayed and store it in a variable
78+
wait = new WebDriverWait(driver, Duration.ofSeconds(30));
79+
wait.until(ExpectedConditions.alertIsPresent());
80+
81+
alert = driver.switchTo().alert();
82+
//Store the alert text in a variable and verify it
83+
text = alert.getText();
84+
assertEquals(text, "What is your name?");
85+
//Type your message
86+
alert.sendKeys("Selenium");
87+
//Press the OK button
88+
alert.accept();
89+
//quit the browser
90+
driver.quit();
91+
}
92+
}

examples/kotlin/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
<slf4j.version>2.0.16</slf4j.version>
1515
<logback.version>1.5.8</logback.version>
1616

17-
<junit5.version>5.11.0</junit5.version>
17+
<junit5.version>5.11.1</junit5.version>
1818
<wdm.version>5.2.3</wdm.version>
1919

20-
<maven-surefire-plugin.version>3.5.0</maven-surefire-plugin.version>
20+
<maven-surefire-plugin.version>3.5.1</maven-surefire-plugin.version>
2121

2222
<java.version>1.8</java.version>
2323
<selenium.version>4.25.0</selenium.version>

website_and_docs/content/documentation/grid/advanced_features/endpoints.en.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,13 @@ In the Hub-Node mode, the Distributor URL is the Hub server address.
5454
```shell
5555
cURL --request DELETE 'http://localhost:4444/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET: <secret> '
5656
```
57-
In the fully distributed mode, the URL is the Distributor server address.
57+
In the fully distributed mode, the URL is the Router server address.
5858
```shell
59-
cURL --request DELETE 'http://localhost:5553/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET: <secret>'
59+
cURL --request DELETE 'http://localhost:4444/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET: <secret>'
6060
```
6161
If no registration secret has been configured while setting up the Grid, then use
6262
```shell
63-
cURL --request DELETE 'http://<Distributor-URL>/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET;'
63+
cURL --request DELETE 'http://<Router-URL>/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET;'
6464
```
6565

6666
### Drain Node
@@ -75,13 +75,13 @@ In the Hub-Node mode, the Distributor URL is the Hub server address.
7575
```shell
7676
cURL --request POST 'http://localhost:4444/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET: <secret> '
7777
```
78-
In the fully distributed mode, the URL is the Distributor server address.
78+
In the fully distributed mode, the URL is the Router server address.
7979
```shell
80-
cURL --request POST 'http://localhost:5553/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET: <secret>'
80+
cURL --request POST 'http://localhost:4444/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET: <secret>'
8181
```
8282
If no registration secret has been configured while setting up the Grid, then use
8383
```shell
84-
cURL --request POST 'http://<Distributor-URL>/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET;'
84+
cURL --request POST 'http://<Router-URL>/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET;'
8585
```
8686

8787
## Node
@@ -159,14 +159,14 @@ In the Hub-Node mode, the Queue URL is the Hub server address.
159159
cURL --request DELETE 'http://localhost:4444/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET: <secret>'
160160
```
161161

162-
In the fully distributed mode, the Queue URL is New Session Queue server address.
162+
In the fully distributed mode, the Queue URL is Router server address.
163163
```shell
164-
cURL --request DELETE 'http://localhost:5559/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET: <secret>'
164+
cURL --request DELETE 'http://localhost:4444/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET: <secret>'
165165
```
166166

167167
If no registration secret has been configured while setting up the Grid, then use
168168
```shell
169-
cURL --request DELETE 'http://<URL>/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET;'
169+
cURL --request DELETE 'http://<Router-URL>/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET;'
170170
```
171171

172172
### Get New Session Queue Requests
@@ -183,6 +183,6 @@ In the Hub-Node mode, the Queue URL is the Hub server address.
183183
cURL --request GET 'http://localhost:4444/se/grid/newsessionqueue/queue'
184184
```
185185

186-
In the fully distributed mode, the Queue URL is New Session Queue server address.
186+
In the fully distributed mode, the Queue URL is Router server address.
187187
```shell
188-
cURL --request GET 'http://localhost:5559/se/grid/newsessionqueue/queue'
188+
cURL --request GET 'http://localhost:4444/se/grid/newsessionqueue/queue'

website_and_docs/content/documentation/grid/advanced_features/endpoints.ja.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,13 @@ cURL --request DELETE 'http://localhost:4444/se/grid/distributor/node/<node-id>'
5858
完全分散モードでは、ディストリビューター URL は ディストリビューターのアドレスになります。
5959

6060
```shell
61-
cURL --request DELETE 'http://localhost:5553/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET: <secret>'
61+
cURL --request DELETE 'http://localhost:4444/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET: <secret>'
6262
```
6363

6464
Grid の設定時に登録用の secret を設定していない場合は次のようにします:
6565

6666
```shell
67-
cURL --request DELETE 'http://<Distributor-URL>/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET;'
67+
cURL --request DELETE 'http://<Router-URL>/se/grid/distributor/node/<node-id>' --header 'X-REGISTRATION-SECRET;'
6868
```
6969

7070
### ノードのドレイン
@@ -84,13 +84,13 @@ cURL --request POST 'http://localhost:4444/se/grid/distributor/node/<node-id>/dr
8484
完全分散モードでは、ディストリビューター URL は ディストリビューターのアドレスになります。
8585

8686
```shell
87-
cURL --request POST 'http://localhost:5553/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET: <secret>'
87+
cURL --request POST 'http://localhost:4444/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET: <secret>'
8888
```
8989

9090
Grid の設定時に登録用の secret を設定していない場合は次のようにします:
9191

9292
```shell
93-
cURL --request POST 'http://<Distributor-URL>/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET;'
93+
cURL --request POST 'http://<Router-URL>/se/grid/distributor/node/<node-id>/drain' --header 'X-REGISTRATION-SECRET;'
9494
```
9595

9696
## ノード
@@ -178,13 +178,13 @@ cURL --request DELETE 'http://localhost:4444/se/grid/newsessionqueue/queue' --he
178178
完全分散モードでは、キューの URL は 新規セッションキューのアドレスになります。
179179

180180
```shell
181-
cURL --request DELETE 'http://localhost:5559/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET: <secret>'
181+
cURL --request DELETE 'http://localhost:4444/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET: <secret>'
182182
```
183183

184184
Grid の設定時に登録用の secret を設定していない場合は次のようにします:
185185

186186
```shell
187-
cURL --request DELETE 'http://<URL>/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET;'
187+
cURL --request DELETE 'http://<Router-URL>/se/grid/newsessionqueue/queue' --header 'X-REGISTRATION-SECRET;'
188188
```
189189

190190
### 新規セッションリクエストの取得
@@ -204,5 +204,5 @@ cURL --request GET 'http://localhost:4444/se/grid/newsessionqueue/queue'
204204
完全分散モードでは、キューの URL は 新規セッションキューのアドレスになります。
205205

206206
```shell
207-
cURL --request GET 'http://localhost:5559/se/grid/newsessionqueue/queue'
207+
cURL --request GET 'http://localhost:4444/se/grid/newsessionqueue/queue'
208208
```

0 commit comments

Comments
 (0)