From fa826e82c2a308688c97aa25c9366cda360ee219 Mon Sep 17 00:00:00 2001 From: Ravi Sawlani Date: Thu, 24 Aug 2023 20:50:34 +0530 Subject: [PATCH] added test --- .../waitUntilElementNotPresent.js | 5 +++ test/apidemos/web-elements/waitUntilTest.js | 2 +- .../apidemos/web-elements/testWaitUntil.js | 33 +++++++++++++++++++ 3 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 test/apidemos/web-elements/waitUntilElementNotPresent.js diff --git a/test/apidemos/web-elements/waitUntilElementNotPresent.js b/test/apidemos/web-elements/waitUntilElementNotPresent.js new file mode 100644 index 0000000000..f19ea5ecc6 --- /dev/null +++ b/test/apidemos/web-elements/waitUntilElementNotPresent.js @@ -0,0 +1,5 @@ +describe('demo of failure of waitUntil element commands', function() { + it('waitUntil element is visible - element not present', function({element}) { + element.find('#badElement').waitUntil('visible'); + }); +}); \ No newline at end of file diff --git a/test/apidemos/web-elements/waitUntilTest.js b/test/apidemos/web-elements/waitUntilTest.js index c85c13220b..4abd1e3c4d 100644 --- a/test/apidemos/web-elements/waitUntilTest.js +++ b/test/apidemos/web-elements/waitUntilTest.js @@ -4,7 +4,7 @@ describe('demo tests using waitUntil element APIs', function() { }); it('wait until element is selected', function({element, state}) { - element('#weblogin').waitUntil('selected'); + element('#weblogin').waitUntil('present').waitUntil('selected'); }); it('wait until element is enabled', function({element}) { diff --git a/test/src/apidemos/web-elements/testWaitUntil.js b/test/src/apidemos/web-elements/testWaitUntil.js index f833d6b599..9fb74d4f3a 100644 --- a/test/src/apidemos/web-elements/testWaitUntil.js +++ b/test/src/apidemos/web-elements/testWaitUntil.js @@ -83,4 +83,37 @@ describe('waitUntil element command', function() { globals })); }); + + it('test waitUntil element command - element not present', function() { + const testsPath = path.join(__dirname, '../../../apidemos/web-elements/waitUntilElementNotPresent.js'); + + + const globals = { + waitForConditionPollInterval: 50, + waitForConditionTimeout: 120, + retryAssertionTimeout: 100, + + reporter(results) { + if (!results.lastError) { + assert.fail('Should result into failure'); + } + assert.ok(results.lastError.message.includes('not present'), 'err message should be element not present'); + } + }; + + return NightwatchClient.runTests(testsPath, settings({ + selenium: { + port: null, + start_process: false + }, + selenium_host: null, + webdriver: { + port: 10195, + start_process: false + }, + output: false, + skip_testcases_on_fail: false, + globals + })); + }); });