@camperaid/watest 2.4.6 → 2.4.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.prettierrc.js +1 -3
- package/.watestrc.js +1 -3
- package/bin/watest.js +3 -8
- package/core/base.js +79 -56
- package/core/core.js +25 -45
- package/core/format.js +96 -56
- package/core/process_args.js +1 -5
- package/core/series.js +60 -56
- package/core/settings.js +27 -32
- package/core/spawn.js +14 -21
- package/core/util.js +12 -19
- package/eslint.config.js +27 -0
- package/index.js +15 -17
- package/interfaces/logger.js +1 -3
- package/interfaces/servicer.js +1 -3
- package/logging/filestream.js +3 -7
- package/logging/logging.js +5 -11
- package/logging/logpipe.js +21 -21
- package/package.json +12 -11
- package/tests/base/t_api.js +3 -6
- package/tests/base/t_contains.js +12 -12
- package/tests/base/t_core.js +11 -8
- package/tests/base/t_format.js +13 -14
- package/tests/base/t_is.js +9 -11
- package/tests/base/t_is_object.js +23 -25
- package/tests/base/t_is_primitive.js +12 -14
- package/tests/base/t_is_string.js +6 -8
- package/tests/base/t_ok.js +4 -6
- package/tests/base/t_stringify.js +6 -8
- package/tests/base/t_test_.js +3 -5
- package/tests/base/t_throws.js +73 -0
- package/tests/base/test.js +8 -18
- package/tests/e2e/samples/{loader/.watestrc.cjs → folder/.watestrc.js} +1 -1
- package/tests/e2e/samples/folder/package-lock.json +1019 -5940
- package/tests/e2e/samples/folder/package.json +3 -2
- package/tests/e2e/samples/folder/tests/meta.js +1 -1
- package/tests/e2e/samples/folder/tests/unit/t_test.js +3 -3
- package/tests/e2e/samples/{loader_mixed/.watestrc.cjs → loader/.watestrc.js} +1 -1
- package/tests/e2e/samples/loader/package-lock.json +1751 -28
- package/tests/e2e/samples/loader/package.json +2 -2
- package/tests/e2e/samples/{folder/.watestrc.cjs → loader_mixed/.watestrc.js} +1 -1
- package/tests/e2e/samples/loader_mixed/package-lock.json +1751 -28
- package/tests/e2e/samples/loader_multiple/{.watestrc.cjs → .watestrc.js} +1 -1
- package/tests/e2e/samples/loader_multiple/package-lock.json +1751 -28
- package/tests/e2e/samples/loader_multiple/package.json +2 -2
- package/tests/e2e/samples/single/.watestrc.js +5 -0
- package/tests/e2e/samples/single/package-lock.json +1017 -5938
- package/tests/e2e/samples/single/package.json +5 -2
- package/tests/e2e/samples/wd_mixed/{.watestrc.cjs → .watestrc.js} +1 -1
- package/tests/e2e/samples/wd_mixed/package-lock.json +779 -4862
- package/tests/e2e/samples/wd_mixed/package.json +2 -2
- package/tests/e2e/samples/wd_single/{.watestrc.cjs → .watestrc.js} +1 -1
- package/tests/e2e/samples/wd_single/package-lock.json +779 -4862
- package/tests/e2e/samples/wd_single/package.json +2 -2
- package/tests/e2e/t_folder.js +4 -6
- package/tests/e2e/t_loader.js +4 -6
- package/tests/e2e/t_loader_mixed.js +4 -6
- package/tests/e2e/t_loader_multiple.js +4 -6
- package/tests/e2e/t_loader_multiple_patterns.js +4 -6
- package/tests/e2e/t_single.js +4 -6
- package/tests/e2e/t_wd_firefox.js +4 -6
- package/tests/e2e/t_wd_firefox_chrome.js +4 -6
- package/tests/e2e/t_wd_firefox_chrome_pattern.js +4 -6
- package/tests/e2e/t_wd_mixed_firefox.js +4 -6
- package/tests/e2e/t_wd_mixed_firefox_chrome.js +4 -6
- package/tests/e2e/test.js +15 -16
- package/tests/meta.js +1 -3
- package/tests/series/build/t_adjust_names.js +4 -6
- package/tests/series/build/t_adjust_names_webdriver.js +6 -10
- package/tests/series/build/t_expected_failures.js +4 -6
- package/tests/series/build/t_loader.js +4 -6
- package/tests/series/build/t_loader_mixed.js +4 -6
- package/tests/series/build/t_mixed.js +4 -6
- package/tests/series/build/t_nested.js +4 -6
- package/tests/series/build/t_patterns_loader.js +4 -6
- package/tests/series/build/t_patterns_webdriver.js +4 -6
- package/tests/series/build/t_webdriver.js +4 -6
- package/tests/series/build/t_webdriver_firefox_mixed.js +4 -6
- package/tests/series/build/t_webdriver_nested.js +4 -6
- package/tests/series/build/t_webdriver_services.js +4 -6
- package/tests/series/generic/t_failures_info.js +9 -12
- package/tests/series/logging/t_failures.js +18 -20
- package/tests/series/logging/t_success.js +15 -17
- package/tests/series/logging/t_verify.js +17 -14
- package/tests/series/meta.js +1 -3
- package/tests/series/mock_series.js +7 -13
- package/tests/series/perform/t_failure.js +4 -6
- package/tests/series/perform/t_failure_notest.js +4 -6
- package/tests/series/perform/t_intermittent.js +5 -7
- package/tests/series/perform/t_intermittent_global.js +4 -6
- package/tests/series/perform/t_missing_perma.js +5 -7
- package/tests/series/perform/t_nested.js +4 -10
- package/tests/series/perform/t_perma.js +4 -6
- package/tests/series/perform/t_success.js +5 -11
- package/tests/series/run/t_debunk_failure.js +7 -6
- package/tests/series/run/t_debunk_success.js +7 -6
- package/tests/series/run/t_nested.js +7 -6
- package/tests/series/run/t_verify.js +7 -6
- package/tests/series/run/t_verify_webdriver.js +7 -6
- package/tests/series/test.js +29 -40
- package/tests/webdriver/meta.js +1 -3
- package/tests/webdriver/t_app_driver.js +3 -5
- package/tests/webdriver/t_app_driver_selectors.js +3 -5
- package/tests/webdriver/t_attribute.js +5 -7
- package/tests/webdriver/t_attribute_all.js +6 -8
- package/tests/webdriver/t_doubleclick.js +3 -5
- package/tests/webdriver/t_doubleclickat.js +3 -5
- package/tests/webdriver/t_execute.js +4 -6
- package/tests/webdriver/t_if_has_elements.js +6 -8
- package/tests/webdriver/t_if_no_elements.js +6 -8
- package/tests/webdriver/t_no_elements_or_not_visible.js +7 -9
- package/tests/webdriver/t_properties.js +11 -13
- package/tests/webdriver/t_script.js +8 -10
- package/tests/webdriver/t_select_all.js +6 -11
- package/tests/webdriver/t_selection.js +4 -6
- package/tests/webdriver/t_text.js +12 -14
- package/tests/webdriver/t_text_all.js +6 -8
- package/tests/webdriver/test.js +32 -41
- package/webdriver/app_driver.js +15 -19
- package/webdriver/control_driver.js +4 -8
- package/webdriver/driver.js +58 -61
- package/webdriver/driver_base.js +50 -60
- package/webdriver/session.js +6 -11
- package/webdriver/util.js +7 -8
- package/.eslintrc.js +0 -45
- package/index.mjs +0 -5
- package/tests/e2e/samples/folder/node_modules/.package-lock.json +0 -3871
- package/tests/e2e/samples/loader/node_modules/.package-lock.json +0 -36
- package/tests/e2e/samples/loader_mixed/node_modules/.package-lock.json +0 -36
- package/tests/e2e/samples/loader_multiple/node_modules/.package-lock.json +0 -36
- package/tests/e2e/samples/single/.watestrc.cjs +0 -5
- package/tests/e2e/samples/single/node_modules/.package-lock.json +0 -3871
- package/tests/e2e/samples/wd_mixed/node_modules/.package-lock.json +0 -3586
- package/tests/e2e/samples/wd_single/node_modules/.package-lock.json +0 -3586
package/tests/series/test.js
CHANGED
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { Core } = require('../../core/core.js');
|
|
4
|
-
const { Series } = require('../../core/series.js');
|
|
5
|
-
|
|
6
|
-
const scripts = [
|
|
7
|
-
'../../core/util.js',
|
|
8
|
-
'../../core/base.js',
|
|
9
|
-
'../../core/format.js',
|
|
10
|
-
'./mock_series.js',
|
|
11
|
-
];
|
|
12
|
-
for (let script of scripts) {
|
|
13
|
-
let script_exports = require(script);
|
|
14
|
-
for (let e in script_exports) {
|
|
15
|
-
module.exports[e] = script_exports[e];
|
|
16
|
-
}
|
|
17
|
-
}
|
|
1
|
+
import { Core } from '../../core/core.js';
|
|
2
|
+
import { Series } from '../../core/series.js';
|
|
18
3
|
|
|
19
4
|
function build_tests(tests) {
|
|
20
5
|
return tests.map(t => ({
|
|
@@ -44,17 +29,17 @@ class MockLogPipe {
|
|
|
44
29
|
logToFile() {}
|
|
45
30
|
}
|
|
46
31
|
|
|
47
|
-
|
|
32
|
+
export * from '../../core/util.js';
|
|
33
|
+
export * from '../../core/base.js';
|
|
34
|
+
export * from '../../core/format.js';
|
|
35
|
+
export * from './mock_series.js';
|
|
36
|
+
|
|
37
|
+
export { Series };
|
|
48
38
|
|
|
49
39
|
/**
|
|
50
40
|
* Message output checkers.
|
|
51
41
|
*/
|
|
52
|
-
|
|
53
|
-
name,
|
|
54
|
-
intermittents,
|
|
55
|
-
todos,
|
|
56
|
-
warnings,
|
|
57
|
-
}) => {
|
|
42
|
+
export function completed_checkers({ name, intermittents, todos, warnings }) {
|
|
58
43
|
let checkers = [];
|
|
59
44
|
if (intermittents) {
|
|
60
45
|
checkers.push(`>${name} has ${intermittents} intermittent(s)`);
|
|
@@ -67,22 +52,26 @@ module.exports.completed_checkers = ({
|
|
|
67
52
|
}
|
|
68
53
|
checkers.push(got => got.startsWith(`>${name} completed in`));
|
|
69
54
|
return checkers;
|
|
70
|
-
}
|
|
55
|
+
}
|
|
71
56
|
|
|
72
|
-
|
|
73
|
-
got.startsWith('Logs are written to');
|
|
57
|
+
export function logswritten_checker(got) {
|
|
58
|
+
return got.startsWith('Logs are written to');
|
|
59
|
+
}
|
|
74
60
|
|
|
75
|
-
|
|
76
|
-
`\n!Running: ${name}, path: ${path}\n\n`;
|
|
61
|
+
export function running_checker(name, path) {
|
|
62
|
+
return `\n!Running: ${name}, path: ${path}\n\n`;
|
|
63
|
+
}
|
|
77
64
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
}
|
|
65
|
+
export function make_perform_function(tests) {
|
|
66
|
+
return async () => {
|
|
67
|
+
const series = new Series('tests/', {
|
|
68
|
+
core: new Core(),
|
|
69
|
+
LogPipe: new MockLogPipe(),
|
|
70
|
+
});
|
|
71
|
+
try {
|
|
72
|
+
await series.perform({ folder: 'tests/', tests: build_tests(tests) });
|
|
73
|
+
} finally {
|
|
74
|
+
series.shutdown();
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
}
|
package/tests/webdriver/meta.js
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { AppDriver, do_self_tests, is_ok_output } = require('./test.js');
|
|
1
|
+
import { AppDriver, do_self_tests, is_ok_output } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -17,7 +15,7 @@ class Input extends AppDriver {
|
|
|
17
15
|
}
|
|
18
16
|
}
|
|
19
17
|
|
|
20
|
-
|
|
18
|
+
export var test = do_self_tests(snippet, async session => {
|
|
21
19
|
// AppDriver: chainable
|
|
22
20
|
let expectations = session.isFirefox()
|
|
23
21
|
? [
|
|
@@ -69,6 +67,6 @@ module.exports.test = do_self_tests(snippet, async session => {
|
|
|
69
67
|
() => Input.get(session).type('hello'),
|
|
70
68
|
expectations,
|
|
71
69
|
[],
|
|
72
|
-
`AppDriver: chainable
|
|
70
|
+
`AppDriver: chainable`,
|
|
73
71
|
);
|
|
74
72
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { AppDriver, is, do_self_tests } = require('./test.js');
|
|
1
|
+
import { AppDriver, is, do_self_tests } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -24,7 +22,7 @@ class Body extends AppDriver {
|
|
|
24
22
|
}
|
|
25
23
|
}
|
|
26
24
|
|
|
27
|
-
|
|
25
|
+
export var test = do_self_tests(snippet, async session => {
|
|
28
26
|
let body = await Body.get(session);
|
|
29
27
|
is(body.Self, 'body', `AppDriver selectors: Self`);
|
|
30
28
|
is(body.Form.Self, 'body .form', `AppDriver selectors: Form.Self`);
|
|
@@ -32,6 +30,6 @@ module.exports.test = do_self_tests(snippet, async session => {
|
|
|
32
30
|
is(
|
|
33
31
|
body.Form.Button,
|
|
34
32
|
'body .form .button',
|
|
35
|
-
`AppDriver selectors: Form.Button
|
|
33
|
+
`AppDriver selectors: Form.Button`,
|
|
36
34
|
);
|
|
37
35
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is_failure_output, is_ok_output } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is_failure_output, is_ok_output } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -8,7 +6,7 @@ const snippet = `
|
|
|
8
6
|
</body></html>
|
|
9
7
|
`;
|
|
10
8
|
|
|
11
|
-
|
|
9
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
12
10
|
// attributeIs: success
|
|
13
11
|
await is_ok_output(
|
|
14
12
|
() => driver.attributeIs('#input', 'value', 'hey', `attributeIs`),
|
|
@@ -18,7 +16,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
18
16
|
`Ok: attributeIs`,
|
|
19
17
|
],
|
|
20
18
|
[],
|
|
21
|
-
`attributeIs:success
|
|
19
|
+
`attributeIs:success`,
|
|
22
20
|
);
|
|
23
21
|
|
|
24
22
|
// attributeIs: failure
|
|
@@ -31,7 +29,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
31
29
|
`Failed: attributeIs, timeout while waiting to meet criteria`,
|
|
32
30
|
`Failed: attributeIs`,
|
|
33
31
|
],
|
|
34
|
-
`attributeIs:failed
|
|
32
|
+
`attributeIs:failed`,
|
|
35
33
|
);
|
|
36
34
|
|
|
37
35
|
// attributeContains: success
|
|
@@ -44,6 +42,6 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
44
42
|
`Ok: attributeContains`,
|
|
45
43
|
],
|
|
46
44
|
[],
|
|
47
|
-
`attributeContains:success
|
|
45
|
+
`attributeContains:success`,
|
|
48
46
|
);
|
|
49
47
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is_failure_output, is_ok_output } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is_failure_output, is_ok_output } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -9,7 +7,7 @@ const snippet = `
|
|
|
9
7
|
</body></html>
|
|
10
8
|
`;
|
|
11
9
|
|
|
12
|
-
|
|
10
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
13
11
|
// attributeContainsAll: success
|
|
14
12
|
await is_ok_output(
|
|
15
13
|
() =>
|
|
@@ -17,7 +15,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
17
15
|
'input',
|
|
18
16
|
'value',
|
|
19
17
|
['he', 'hacha'],
|
|
20
|
-
`attributeContainsAll
|
|
18
|
+
`attributeContainsAll`,
|
|
21
19
|
),
|
|
22
20
|
[
|
|
23
21
|
`Test: attributeContainsAll. Expected: ['he', 'hacha']. Selector: 'input'`,
|
|
@@ -25,7 +23,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
25
23
|
`Ok: attributeContainsAll`,
|
|
26
24
|
],
|
|
27
25
|
[],
|
|
28
|
-
`attributeContainsAll:success
|
|
26
|
+
`attributeContainsAll:success`,
|
|
29
27
|
);
|
|
30
28
|
|
|
31
29
|
// attributeContainsAll: failure
|
|
@@ -36,7 +34,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
36
34
|
'input',
|
|
37
35
|
'value',
|
|
38
36
|
['hey', 'chachacha'],
|
|
39
|
-
`attributeContainsAll
|
|
37
|
+
`attributeContainsAll`,
|
|
40
38
|
),
|
|
41
39
|
[
|
|
42
40
|
`Test: attributeContainsAll. Expected: ['hey', 'chachacha']. Selector: 'input'`,
|
|
@@ -47,6 +45,6 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
47
45
|
`Failed: attributeContainsAll, timeout while waiting to meet criteria`,
|
|
48
46
|
`Failed: attributeContainsAll`,
|
|
49
47
|
],
|
|
50
|
-
`attributeContainsAll:failure
|
|
48
|
+
`attributeContainsAll:failure`,
|
|
51
49
|
);
|
|
52
50
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -16,11 +14,11 @@ const snippet = `
|
|
|
16
14
|
</body></html>
|
|
17
15
|
`;
|
|
18
16
|
|
|
19
|
-
|
|
17
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
20
18
|
await driver.doubleClick('input', `dblclick input`);
|
|
21
19
|
is(
|
|
22
20
|
await driver.executeScript('window.getPromise()', `get dblclick result`),
|
|
23
21
|
true,
|
|
24
|
-
'check dblclick result'
|
|
22
|
+
'check dblclick result',
|
|
25
23
|
);
|
|
26
24
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -32,7 +30,7 @@ const snippet = `
|
|
|
32
30
|
</body></html>
|
|
33
31
|
`;
|
|
34
32
|
|
|
35
|
-
|
|
33
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
36
34
|
await driver.doubleClickAt('div', [0, 0], `dblclick`);
|
|
37
35
|
is(
|
|
38
36
|
await driver.executeScript('window.getPromise()', `get dblclickat result`),
|
|
@@ -40,6 +38,6 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
40
38
|
x: 50,
|
|
41
39
|
y: 50,
|
|
42
40
|
},
|
|
43
|
-
'check dblclickat results'
|
|
41
|
+
'check dblclickat results',
|
|
44
42
|
);
|
|
45
43
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -17,15 +15,15 @@ const snippet = `
|
|
|
17
15
|
</body></html>
|
|
18
16
|
`;
|
|
19
17
|
|
|
20
|
-
|
|
18
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
21
19
|
is(
|
|
22
20
|
await driver.executeScript('window.getValue()', `get input value`),
|
|
23
21
|
'hey',
|
|
24
|
-
'get input value sync'
|
|
22
|
+
'get input value sync',
|
|
25
23
|
);
|
|
26
24
|
is(
|
|
27
25
|
await driver.executeScript('window.getValueAsync()', `get input value`),
|
|
28
26
|
'hey',
|
|
29
|
-
'get input value async'
|
|
27
|
+
'get input value async',
|
|
30
28
|
);
|
|
31
29
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is_ok_output } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is_ok_output } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -8,7 +6,7 @@ const snippet = `
|
|
|
8
6
|
</body></html>
|
|
9
7
|
`;
|
|
10
8
|
|
|
11
|
-
|
|
9
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
12
10
|
// ifHasElements: true path
|
|
13
11
|
await is_ok_output(
|
|
14
12
|
() =>
|
|
@@ -16,7 +14,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
16
14
|
'#input',
|
|
17
15
|
`ifHasElements true path`,
|
|
18
16
|
() => console.log(`Input doesn't exist`),
|
|
19
|
-
() => console.log(`Input unexpectedly exists`)
|
|
17
|
+
() => console.log(`Input unexpectedly exists`),
|
|
20
18
|
),
|
|
21
19
|
[
|
|
22
20
|
`Test: ifHasElements true path. Selector: '#input'`,
|
|
@@ -24,7 +22,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
24
22
|
`Ok: ifHasElements true path`,
|
|
25
23
|
],
|
|
26
24
|
[],
|
|
27
|
-
`ifHasElements: true path
|
|
25
|
+
`ifHasElements: true path`,
|
|
28
26
|
);
|
|
29
27
|
|
|
30
28
|
// ifHasElements: false path
|
|
@@ -34,7 +32,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
34
32
|
'#input-doesnot-exist',
|
|
35
33
|
`ifHasElements false path`,
|
|
36
34
|
() => console.log(`Input unexpectedly doesn't exist`),
|
|
37
|
-
() => console.log(`Input exists`)
|
|
35
|
+
() => console.log(`Input exists`),
|
|
38
36
|
),
|
|
39
37
|
[
|
|
40
38
|
`Test: ifHasElements false path. Selector: '#input-doesnot-exist'`,
|
|
@@ -42,6 +40,6 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
42
40
|
`Ok: ifHasElements false path`,
|
|
43
41
|
],
|
|
44
42
|
[],
|
|
45
|
-
`ifHasElements: false path
|
|
43
|
+
`ifHasElements: false path`,
|
|
46
44
|
);
|
|
47
45
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is_ok_output } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is_ok_output } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -8,7 +6,7 @@ const snippet = `
|
|
|
8
6
|
</body></html>
|
|
9
7
|
`;
|
|
10
8
|
|
|
11
|
-
|
|
9
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
12
10
|
// ifNoElements: true path
|
|
13
11
|
await is_ok_output(
|
|
14
12
|
() =>
|
|
@@ -16,7 +14,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
16
14
|
'#input-doesnot-exist',
|
|
17
15
|
`ifNoElements true path`,
|
|
18
16
|
() => console.log(`Input doesn't exist`),
|
|
19
|
-
() => console.log(`Input unexpectedly exists`)
|
|
17
|
+
() => console.log(`Input unexpectedly exists`),
|
|
20
18
|
),
|
|
21
19
|
[
|
|
22
20
|
`Test: ifNoElements true path. Selector: '#input-doesnot-exist'`,
|
|
@@ -24,7 +22,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
24
22
|
`Ok: ifNoElements true path`,
|
|
25
23
|
],
|
|
26
24
|
[],
|
|
27
|
-
`ifNoElements: true path
|
|
25
|
+
`ifNoElements: true path`,
|
|
28
26
|
);
|
|
29
27
|
|
|
30
28
|
// ifNoElements: false path
|
|
@@ -34,7 +32,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
34
32
|
'#input',
|
|
35
33
|
`ifNoElements false path`,
|
|
36
34
|
() => console.log(`Input unexpectedly doesn't exist`),
|
|
37
|
-
() => console.log(`Input exists`)
|
|
35
|
+
() => console.log(`Input exists`),
|
|
38
36
|
),
|
|
39
37
|
[
|
|
40
38
|
`Test: ifNoElements false path. Selector: '#input'`,
|
|
@@ -42,6 +40,6 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
42
40
|
`Ok: ifNoElements false path`,
|
|
43
41
|
],
|
|
44
42
|
[],
|
|
45
|
-
`ifNoElements: false path
|
|
43
|
+
`ifNoElements: false path`,
|
|
46
44
|
);
|
|
47
45
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is_failure_output, is_ok_output } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is_failure_output, is_ok_output } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -9,20 +7,20 @@ const snippet = `
|
|
|
9
7
|
</body></html>
|
|
10
8
|
`;
|
|
11
9
|
|
|
12
|
-
|
|
10
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
13
11
|
// noElementsOrNotVisible: no elements: success
|
|
14
12
|
await is_ok_output(
|
|
15
13
|
() =>
|
|
16
14
|
driver.noElementsOrNotVisible(
|
|
17
15
|
'#input-doesnot-exist',
|
|
18
|
-
`noElementsOrNotVisible
|
|
16
|
+
`noElementsOrNotVisible`,
|
|
19
17
|
),
|
|
20
18
|
[
|
|
21
19
|
`Test: noElementsOrNotVisible. Selector: '#input-doesnot-exist'`,
|
|
22
20
|
`Ok: noElementsOrNotVisible`,
|
|
23
21
|
],
|
|
24
22
|
[],
|
|
25
|
-
`noElementsOrNotVisible:no elements: success
|
|
23
|
+
`noElementsOrNotVisible:no elements: success`,
|
|
26
24
|
);
|
|
27
25
|
|
|
28
26
|
// noElementsOrNotVisible: not visible: success
|
|
@@ -30,14 +28,14 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
30
28
|
() =>
|
|
31
29
|
driver.noElementsOrNotVisible(
|
|
32
30
|
'#input-not-visible',
|
|
33
|
-
`noElementsOrNotVisible
|
|
31
|
+
`noElementsOrNotVisible`,
|
|
34
32
|
),
|
|
35
33
|
[
|
|
36
34
|
`Test: noElementsOrNotVisible. Selector: '#input-not-visible'`,
|
|
37
35
|
`Ok: noElementsOrNotVisible`,
|
|
38
36
|
],
|
|
39
37
|
[],
|
|
40
|
-
`noElementsOrNotVisible:not visible:success
|
|
38
|
+
`noElementsOrNotVisible:not visible:success`,
|
|
41
39
|
);
|
|
42
40
|
|
|
43
41
|
// noElementsOrNotVisible: visible: failure
|
|
@@ -50,6 +48,6 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
50
48
|
`Failed: noElementsOrNotVisible, timeout while waiting to meet criteria`,
|
|
51
49
|
`Failed: noElementsOrNotVisible. Failure details: Got elements count: 1, elements visibility [true], expected: not visible`,
|
|
52
50
|
],
|
|
53
|
-
`noElementsOrNotVisible:visible:failure
|
|
51
|
+
`noElementsOrNotVisible:visible:failure`,
|
|
54
52
|
);
|
|
55
53
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is_failure_output, is_ok_output } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is_failure_output, is_ok_output } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -10,7 +8,7 @@ const snippet = `
|
|
|
10
8
|
</body></html>
|
|
11
9
|
`;
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
14
12
|
// classNameStateIs: on
|
|
15
13
|
await is_ok_output(
|
|
16
14
|
() =>
|
|
@@ -21,7 +19,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
21
19
|
`Ok: classNameStateIs.on`,
|
|
22
20
|
],
|
|
23
21
|
[],
|
|
24
|
-
`classNameStateIs.on
|
|
22
|
+
`classNameStateIs.on`,
|
|
25
23
|
);
|
|
26
24
|
|
|
27
25
|
// classNameStateIs: off
|
|
@@ -31,7 +29,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
31
29
|
'#input',
|
|
32
30
|
'chorizo-off',
|
|
33
31
|
'off',
|
|
34
|
-
`classNameStateIs.off
|
|
32
|
+
`classNameStateIs.off`,
|
|
35
33
|
),
|
|
36
34
|
[
|
|
37
35
|
`Test: classNameStateIs.off. Selector: '#input'`,
|
|
@@ -39,7 +37,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
39
37
|
`Ok: classNameStateIs.off`,
|
|
40
38
|
],
|
|
41
39
|
[],
|
|
42
|
-
`classNameStateIs.off
|
|
40
|
+
`classNameStateIs.off`,
|
|
43
41
|
);
|
|
44
42
|
|
|
45
43
|
// classNameStateIs: failure
|
|
@@ -50,7 +48,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
50
48
|
'#input',
|
|
51
49
|
'chorizo-off',
|
|
52
50
|
'on',
|
|
53
|
-
`classNameStateIs.off
|
|
51
|
+
`classNameStateIs.off`,
|
|
54
52
|
),
|
|
55
53
|
[`Test: classNameStateIs.off. Selector: '#input'`],
|
|
56
54
|
[
|
|
@@ -58,7 +56,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
58
56
|
`Failed: classNameStateIs.off, timeout while waiting to meet criteria`,
|
|
59
57
|
`Failed: classNameStateIs.off`,
|
|
60
58
|
],
|
|
61
|
-
`classNameStateIs.failure
|
|
59
|
+
`classNameStateIs.failure`,
|
|
62
60
|
);
|
|
63
61
|
|
|
64
62
|
// innerHTMLIs
|
|
@@ -70,7 +68,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
70
68
|
`Ok: innerHTMLIs`,
|
|
71
69
|
],
|
|
72
70
|
[],
|
|
73
|
-
`innerHTMLIs
|
|
71
|
+
`innerHTMLIs`,
|
|
74
72
|
);
|
|
75
73
|
|
|
76
74
|
// innerHTMLIs: failure
|
|
@@ -88,7 +86,7 @@ unexpected character: '<' at 0 pos, expected: 'b' at '' line`,
|
|
|
88
86
|
`Failed: innerHTMLIs, timeout while waiting to meet criteria`,
|
|
89
87
|
`Failed: innerHTMLIs`,
|
|
90
88
|
],
|
|
91
|
-
`innerHTMLIs:failure
|
|
89
|
+
`innerHTMLIs:failure`,
|
|
92
90
|
);
|
|
93
91
|
|
|
94
92
|
// propertyIs
|
|
@@ -100,7 +98,7 @@ unexpected character: '<' at 0 pos, expected: 'b' at '' line`,
|
|
|
100
98
|
`Ok: propertyIs`,
|
|
101
99
|
],
|
|
102
100
|
[],
|
|
103
|
-
`propertyIs
|
|
101
|
+
`propertyIs`,
|
|
104
102
|
);
|
|
105
103
|
|
|
106
104
|
// propertyIs: failure
|
|
@@ -113,6 +111,6 @@ unexpected character: '<' at 0 pos, expected: 'b' at '' line`,
|
|
|
113
111
|
`Failed: propertyIs, timeout while waiting to meet criteria`,
|
|
114
112
|
`Failed: propertyIs`,
|
|
115
113
|
],
|
|
116
|
-
`propertyIs:failure
|
|
114
|
+
`propertyIs:failure`,
|
|
117
115
|
);
|
|
118
116
|
});
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const { do_self_tests, is_failure_output, is_ok_output } = require('./test.js');
|
|
1
|
+
import { do_self_tests, is_failure_output, is_ok_output } from './test.js';
|
|
4
2
|
|
|
5
3
|
const snippet = `
|
|
6
4
|
<html><body>
|
|
@@ -17,7 +15,7 @@ const snippet = `
|
|
|
17
15
|
</body></html>
|
|
18
16
|
`;
|
|
19
17
|
|
|
20
|
-
|
|
18
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
21
19
|
// scriptRetvalIs: success
|
|
22
20
|
await is_ok_output(
|
|
23
21
|
() => driver.scriptRetvalIs('window.getValue()', 'hey', `scriptRetvalIs`),
|
|
@@ -27,7 +25,7 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
27
25
|
`Ok: scriptRetvalIs`,
|
|
28
26
|
],
|
|
29
27
|
[],
|
|
30
|
-
`scriptRetvalIs:success
|
|
28
|
+
`scriptRetvalIs:success`,
|
|
31
29
|
);
|
|
32
30
|
|
|
33
31
|
// scriptRetvalIs: failure
|
|
@@ -45,7 +43,7 @@ unexpected character: 'y' at 2 pos, expected: 'o' at '' line`,
|
|
|
45
43
|
`Failed: scriptRetvalIs, timeout while waiting to meet criteria`,
|
|
46
44
|
`Failed: scriptRetvalIs`,
|
|
47
45
|
],
|
|
48
|
-
`scriptRetvalIs:failed
|
|
46
|
+
`scriptRetvalIs:failed`,
|
|
49
47
|
);
|
|
50
48
|
|
|
51
49
|
// scriptRetvalContains: success
|
|
@@ -54,7 +52,7 @@ unexpected character: 'y' at 2 pos, expected: 'o' at '' line`,
|
|
|
54
52
|
driver.scriptRetvalContains(
|
|
55
53
|
'window.getValues()',
|
|
56
54
|
['hey'],
|
|
57
|
-
`scriptRetvalContains
|
|
55
|
+
`scriptRetvalContains`,
|
|
58
56
|
),
|
|
59
57
|
[
|
|
60
58
|
`Test: scriptRetvalContains. Expected: ['hey']`,
|
|
@@ -62,7 +60,7 @@ unexpected character: 'y' at 2 pos, expected: 'o' at '' line`,
|
|
|
62
60
|
`Ok: scriptRetvalContains`,
|
|
63
61
|
],
|
|
64
62
|
[],
|
|
65
|
-
`scriptRetvalContains:success
|
|
63
|
+
`scriptRetvalContains:success`,
|
|
66
64
|
);
|
|
67
65
|
|
|
68
66
|
// scriptRetvalContains: failure
|
|
@@ -72,7 +70,7 @@ unexpected character: 'y' at 2 pos, expected: 'o' at '' line`,
|
|
|
72
70
|
driver.scriptRetvalContains(
|
|
73
71
|
'window.getValues()',
|
|
74
72
|
['heo'],
|
|
75
|
-
`scriptRetvalContains
|
|
73
|
+
`scriptRetvalContains`,
|
|
76
74
|
),
|
|
77
75
|
[`Test: scriptRetvalContains. Expected: ['heo']`],
|
|
78
76
|
[
|
|
@@ -80,6 +78,6 @@ unexpected character: 'y' at 2 pos, expected: 'o' at '' line`,
|
|
|
80
78
|
`Failed: scriptRetvalContains, timeout while waiting to meet criteria`,
|
|
81
79
|
`Failed: scriptRetvalContains`,
|
|
82
80
|
],
|
|
83
|
-
`scriptRetvalContains:failed
|
|
81
|
+
`scriptRetvalContains:failed`,
|
|
84
82
|
);
|
|
85
83
|
});
|
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const {
|
|
4
|
-
do_self_tests,
|
|
5
|
-
is_ok_output,
|
|
6
|
-
} = require('./test.js');
|
|
1
|
+
import { do_self_tests, is_ok_output } from './test.js';
|
|
7
2
|
|
|
8
3
|
const snippet = `
|
|
9
4
|
<html>
|
|
@@ -20,7 +15,7 @@ window.getSelection = selector => {
|
|
|
20
15
|
</html>
|
|
21
16
|
`;
|
|
22
17
|
|
|
23
|
-
|
|
18
|
+
export var test = do_self_tests(snippet, async ({ driver }) => {
|
|
24
19
|
let stdout = driver.firefox
|
|
25
20
|
? [
|
|
26
21
|
`Test: select input text press Ctrl+A. Selector: 'input'`,
|
|
@@ -34,13 +29,13 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
34
29
|
() => driver.selectAll('input', `select input text`),
|
|
35
30
|
stdout,
|
|
36
31
|
[],
|
|
37
|
-
`selectAll:input
|
|
32
|
+
`selectAll:input`,
|
|
38
33
|
);
|
|
39
34
|
|
|
40
35
|
await driver.scriptRetvalIs(
|
|
41
36
|
`window.getSelection('input')`,
|
|
42
37
|
[0, 3],
|
|
43
|
-
'input text is selected'
|
|
38
|
+
'input text is selected',
|
|
44
39
|
);
|
|
45
40
|
|
|
46
41
|
// selectAll:textarea
|
|
@@ -56,12 +51,12 @@ module.exports.test = do_self_tests(snippet, async ({ driver }) => {
|
|
|
56
51
|
() => driver.selectAll('textarea', `select textarea text`),
|
|
57
52
|
stdout,
|
|
58
53
|
[],
|
|
59
|
-
`selectAll:textarea
|
|
54
|
+
`selectAll:textarea`,
|
|
60
55
|
);
|
|
61
56
|
|
|
62
57
|
await driver.scriptRetvalIs(
|
|
63
58
|
`window.getSelection('textarea')`,
|
|
64
59
|
[0, 3],
|
|
65
|
-
'textarea text is selected'
|
|
60
|
+
'textarea text is selected',
|
|
66
61
|
);
|
|
67
62
|
});
|