Skip to content

Commit 4e38f3f

Browse files
committed
refactor[js]: update code samples to use mocha and update docs
1 parent c503089 commit 4e38f3f

17 files changed

+247
-272
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,49 @@
1-
const { By, Key, Browser} = require('selenium-webdriver')
2-
const { suite } = require('selenium-webdriver/testing')
1+
const { By, Key, Browser, Builder} = require('selenium-webdriver')
32
const assert = require('assert')
43

5-
suite(function(env) {
6-
describe('Actions API - Pause and Release All Actions', function() {
7-
let driver
4+
describe('Actions API - Pause and Release All Actions', function() {
5+
let driver
86

9-
before(async function() {
10-
driver = await env.builder().build()
11-
})
7+
before(async function() {
8+
driver = await new Builder().forBrowser('chrome').build();
9+
})
1210

13-
after(() => driver.quit())
11+
after(() => driver.quit())
1412

15-
it('Pause', async function() {
16-
await driver.get('https://selenium.dev/selenium/web/mouse_interaction.html')
13+
it('Pause', async function() {
14+
await driver.get('https://selenium.dev/selenium/web/mouse_interaction.html')
1715

18-
const start = Date.now()
16+
const start = Date.now()
1917

20-
const clickable = await driver.findElement(By.id('clickable'))
21-
await driver.actions()
22-
.move({ origin: clickable })
23-
.pause(1000)
24-
.press()
25-
.pause(1000)
26-
.sendKeys('abc')
27-
.perform()
18+
const clickable = await driver.findElement(By.id('clickable'))
19+
await driver.actions()
20+
.move({ origin: clickable })
21+
.pause(1000)
22+
.press()
23+
.pause(1000)
24+
.sendKeys('abc')
25+
.perform()
2826

29-
const end = Date.now() - start
30-
assert.ok(end > 2000)
31-
assert.ok(end < 4000)
32-
})
27+
const end = Date.now() - start
28+
assert.ok(end > 2000)
29+
assert.ok(end < 4000)
30+
})
3331

34-
it('Clear', async function() {
35-
await driver.get('https://selenium.dev/selenium/web/mouse_interaction.html')
32+
it('Clear', async function() {
33+
await driver.get('https://selenium.dev/selenium/web/mouse_interaction.html')
3634

37-
const clickable = driver.findElement(By.id('clickable'))
38-
await driver.actions()
39-
.click(clickable)
40-
.keyDown(Key.SHIFT)
41-
.sendKeys('a')
42-
.perform()
35+
const clickable = driver.findElement(By.id('clickable'))
36+
await driver.actions()
37+
.click(clickable)
38+
.keyDown(Key.SHIFT)
39+
.sendKeys('a')
40+
.perform()
4341

44-
await driver.actions().clear()
45-
await driver.actions().sendKeys('a').perform()
42+
await driver.actions().clear()
43+
await driver.actions().sendKeys('a').perform()
4644

47-
const value = await clickable.getAttribute('value')
48-
assert.deepStrictEqual('A', value.substring(0, 1))
49-
assert.deepStrictEqual('a', value.substring(1, 2))
50-
})
45+
const value = await clickable.getAttribute('value')
46+
assert.deepStrictEqual('A', value.substring(0, 1))
47+
assert.deepStrictEqual('a', value.substring(1, 2))
5148
})
52-
}, { browsers: [Browser.CHROME]})
49+
})
Original file line numberDiff line numberDiff line change
@@ -1,92 +1,89 @@
1-
const { By, Key, Browser} = require('selenium-webdriver')
2-
const { suite } = require('selenium-webdriver/testing')
1+
const { By, Key, Browser, Builder} = require('selenium-webdriver')
32
const assert = require('assert')
43
const { platform } = require('node:process')
54

6-
suite(function(env) {
7-
describe('Keyboard Action - Keys test', function() {
8-
let driver
5+
describe('Keyboard Action - Keys test', function() {
6+
let driver
97

10-
before(async function() {
11-
driver = await env.builder().build()
12-
})
8+
before(async function() {
9+
driver = await new Builder().forBrowser('chrome').build();
10+
})
1311

14-
after(() => driver.quit())
12+
after(() => driver.quit())
1513

16-
it('KeyDown', async function() {
17-
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
14+
it('KeyDown', async function() {
15+
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
1816

19-
await driver.actions()
20-
.keyDown(Key.SHIFT)
21-
.sendKeys('a')
22-
.perform()
17+
await driver.actions()
18+
.keyDown(Key.SHIFT)
19+
.sendKeys('a')
20+
.perform()
2321

24-
const textField = driver.findElement(By.id('textInput'))
25-
assert.deepStrictEqual(await textField.getAttribute('value'), 'A')
26-
})
22+
const textField = driver.findElement(By.id('textInput'))
23+
assert.deepStrictEqual(await textField.getAttribute('value'), 'A')
24+
})
2725

28-
it('KeyUp', async function() {
29-
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
26+
it('KeyUp', async function() {
27+
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
3028

31-
const textField = driver.findElement(By.id('textInput'))
32-
await textField.click()
29+
const textField = driver.findElement(By.id('textInput'))
30+
await textField.click()
3331

34-
await driver.actions()
35-
.keyDown(Key.SHIFT)
36-
.sendKeys('a')
37-
.keyUp(Key.SHIFT)
38-
.sendKeys('b')
39-
.perform()
32+
await driver.actions()
33+
.keyDown(Key.SHIFT)
34+
.sendKeys('a')
35+
.keyUp(Key.SHIFT)
36+
.sendKeys('b')
37+
.perform()
4038

41-
assert.deepStrictEqual(await textField.getAttribute('value'), 'Ab')
42-
})
39+
assert.deepStrictEqual(await textField.getAttribute('value'), 'Ab')
40+
})
4341

44-
it('sendKeys', async function() {
45-
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
42+
it('sendKeys', async function() {
43+
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
4644

47-
const textField = driver.findElement(By.id('textInput'))
48-
await textField.click()
45+
const textField = driver.findElement(By.id('textInput'))
46+
await textField.click()
4947

50-
await driver.actions()
51-
.sendKeys('abc')
52-
.perform()
48+
await driver.actions()
49+
.sendKeys('abc')
50+
.perform()
5351

54-
assert.deepStrictEqual(await textField.getAttribute('value'), 'abc')
55-
})
52+
assert.deepStrictEqual(await textField.getAttribute('value'), 'abc')
53+
})
5654

57-
it('Designated Element', async function() {
58-
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
55+
it('Designated Element', async function() {
56+
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
5957

60-
await driver.findElement(By.css('body')).click()
61-
const textField = await driver.findElement(By.id('textInput'))
58+
await driver.findElement(By.css('body')).click()
59+
const textField = await driver.findElement(By.id('textInput'))
6260

63-
await driver.actions()
64-
.sendKeys(textField, 'abc')
65-
.perform()
61+
await driver.actions()
62+
.sendKeys(textField, 'abc')
63+
.perform()
6664

67-
assert.deepStrictEqual(await textField.getAttribute('value'), 'abc')
68-
})
65+
assert.deepStrictEqual(await textField.getAttribute('value'), 'abc')
66+
})
6967

70-
it('Copy and Paste', async function() {
71-
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
68+
it('Copy and Paste', async function() {
69+
await driver.get('https://www.selenium.dev/selenium/web/single_text_input.html')
7270

73-
const textField = await driver.findElement(By.id('textInput'))
71+
const textField = await driver.findElement(By.id('textInput'))
7472

75-
const cmdCtrl = platform.includes('darwin') ? Key.COMMAND : Key.CONTROL
73+
const cmdCtrl = platform.includes('darwin') ? Key.COMMAND : Key.CONTROL
7674

77-
await driver.actions()
78-
.click(textField)
79-
.sendKeys('Selenium!')
80-
.sendKeys(Key.ARROW_LEFT)
81-
.keyDown(Key.SHIFT)
82-
.sendKeys(Key.ARROW_UP)
83-
.keyUp(Key.SHIFT)
84-
.keyDown(cmdCtrl)
85-
.sendKeys('xvv')
86-
.keyUp(cmdCtrl)
87-
.perform()
75+
await driver.actions()
76+
.click(textField)
77+
.sendKeys('Selenium!')
78+
.sendKeys(Key.ARROW_LEFT)
79+
.keyDown(Key.SHIFT)
80+
.sendKeys(Key.ARROW_UP)
81+
.keyUp(Key.SHIFT)
82+
.keyDown(cmdCtrl)
83+
.sendKeys('xvv')
84+
.keyUp(cmdCtrl)
85+
.perform()
8886

89-
assert.deepStrictEqual(await textField.getAttribute('value'), 'SeleniumSelenium!')
90-
})
87+
assert.deepStrictEqual(await textField.getAttribute('value'), 'SeleniumSelenium!')
9188
})
92-
}, { browsers: [Browser.CHROME, Browser.FIREFOX]})
89+
})
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,21 @@
1-
const { By, Builder, Browser} = require('selenium-webdriver');
2-
const { suite } = require('selenium-webdriver/testing');
3-
4-
suite(function(env) {
5-
describe('Scroll by given amount from element', function() {
6-
let driver;
7-
8-
before(async function() {
9-
driver = await new Builder().forBrowser('chrome').build();
10-
});
11-
12-
after(() => driver.quit());
13-
14-
it('Scroll to element by 300', async function() {
15-
await driver.manage().window().setRect({ width: 500, height: 400 });
16-
17-
// Navigate to url
18-
await driver.get('https://crossbrowsertesting.github.io/selenium_example_page.html');
19-
20-
// Store element
21-
let element = await driver.findElement(By.linkText('Go To Page 2'));
22-
23-
// Scroll to element by 300
24-
await driver.actions().scroll(0, 0, 0, 300, element).perform();
25-
});
26-
27-
});
28-
}, { browsers: [Browser.CHROME, Browser.FIREFOX]});
1+
const { By, Builder} = require('selenium-webdriver');
2+
3+
describe('Scroll by given amount from element', function() {
4+
let driver;
5+
6+
before(async function() {
7+
driver = await new Builder().forBrowser('chrome').build();
8+
});
9+
10+
after(() => driver.quit());
11+
12+
it('Scroll to element by 300', async function() {
13+
await driver.manage().window().setRect({ width: 500, height: 400 });
14+
// Navigate to url
15+
await driver.get('https://crossbrowsertesting.github.io/selenium_example_page.html');
16+
// Store element
17+
let element = await driver.findElement(By.linkText('Go To Page 2'));
18+
// Scroll to element by 300
19+
await driver.actions().scroll(0, 0, 0, 300, element).perform();
20+
});
21+
});
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,20 @@
1-
const { By, Builder, Browser} = require('selenium-webdriver');
2-
const { suite } = require('selenium-webdriver/testing');
1+
const { By, Builder} = require('selenium-webdriver');
32

4-
suite(function(env) {
5-
describe('Whell scroll to element', function() {
6-
let driver;
3+
describe('Wheel scroll to element', function() {
4+
let driver;
75

8-
before(async function() {
9-
driver = await new Builder().forBrowser('chrome').build();
10-
});
6+
before(async function() {
7+
driver = await new Builder().forBrowser('chrome').build();
8+
});
119

12-
after(() => driver.quit());
10+
after(() => driver.quit());
1311

14-
it('Scroll to the element', async function() {
15-
// Navigate to the url
16-
await driver.get('https://crossbrowsertesting.github.io/selenium_example_page.html');
17-
18-
// Find close button element
19-
let element = driver.findElement(By.id('closepopup'));
20-
21-
// Scroll to the element
22-
await driver.actions().scroll(0, 0, 0, 0, element).perform();
23-
});
24-
25-
});
26-
}, { browsers: [Browser.CHROME, Browser.FIREFOX]});
12+
it('Scroll to the element', async function() {
13+
// Navigate to the url
14+
await driver.get('https://crossbrowsertesting.github.io/selenium_example_page.html');
15+
// Find close button element
16+
let element = driver.findElement(By.id('closepopup'));
17+
// Scroll to the element
18+
await driver.actions().scroll(0, 0, 0, 0, element).perform();
19+
});
20+
});

0 commit comments

Comments
 (0)