Path: blob/trunk/javascript/selenium-webdriver/test/ie/options_test.js
2885 views
// Licensed to the Software Freedom Conservancy (SFC) under one1// or more contributor license agreements. See the NOTICE file2// distributed with this work for additional information3// regarding copyright ownership. The SFC licenses this file4// to you under the Apache License, Version 2.0 (the5// "License"); you may not use this file except in compliance6// with the License. You may obtain a copy of the License at7//8// http://www.apache.org/licenses/LICENSE-2.09//10// Unless required by applicable law or agreed to in writing,11// software distributed under the License is distributed on an12// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY13// KIND, either express or implied. See the License for the14// specific language governing permissions and limitations15// under the License.1617'use strict'1819const assert = require('node:assert')20const ie = require('selenium-webdriver/ie')21const test = require('../../lib/test')22const Capabilities = require('selenium-webdriver/lib/capabilities').Capabilities2324test.suite(25function (env) {26let driver2728describe('Internet Explorer options', function () {29it('can set fileUploadDialogTimeout', async function () {30let timeOut = 1000031let options = new ie.Options().fileUploadDialogTimeout(timeOut)3233driver = await env.builder().setIeOptions(options).build()3435let caps = await driver.getCapabilities()36caps = caps.map_.get(ie.VENDOR_COMMAND_PREFIX)[ie.Key.FILE_UPLOAD_DIALOG_TIMEOUT]37assert.strictEqual(caps, timeOut)38await driver.quit()39})4041it('can set browserAttachTimeout', async function () {42let timeOut = 1000043let options = new ie.Options().browserAttachTimeout(timeOut)4445driver = await env.builder().setIeOptions(options).build()4647let caps = await driver.getCapabilities()48caps = caps.map_.get(ie.VENDOR_COMMAND_PREFIX)[ie.Key.BROWSER_ATTACH_TIMEOUT]49assert.strictEqual(caps, timeOut)50await driver.quit()51})5253it('can set elementScrollBehaviour - TOP', async function () {54let options = new ie.Options().setScrollBehavior(ie.Behavior.TOP)55driver = await env.builder().setIeOptions(options).build()5657let caps = await driver.getCapabilities()58caps = caps.map_.get(ie.VENDOR_COMMAND_PREFIX)[ie.Key.ELEMENT_SCROLL_BEHAVIOR]59assert.strictEqual(caps, ie.Behavior.TOP)60await driver.quit()61})6263it('can set elementScrollBehaviour - BOTTOM', async function () {64let options = new ie.Options().setScrollBehavior(ie.Behavior.TOP)65driver = await env.builder().setIeOptions(options).build()6667let caps = await driver.getCapabilities()68caps = caps.map_.get(ie.VENDOR_COMMAND_PREFIX)[ie.Key.ELEMENT_SCROLL_BEHAVIOR]69assert.strictEqual(caps, ie.Behavior.TOP)70await driver.quit()71})7273it('can set multiple browser-command-line switches', async function () {74let options = new ie.Options()75options.addBrowserCommandSwitches('-k')76options.addBrowserCommandSwitches('-private')77options.forceCreateProcessApi(true)78driver = await env.builder().setIeOptions(options).build()7980let caps = await driver.getCapabilities()81caps = caps.map_.get(ie.VENDOR_COMMAND_PREFIX)[ie.Key.BROWSER_COMMAND_LINE_SWITCHES]82assert.strictEqual(caps, '-k -private')83await driver.quit()84})8586it('can set capability', async function () {87let caps = Capabilities.ie()88assert.ok(!caps.has('silent'))89assert.strictEqual(undefined, caps.get('silent'))90caps.set('silent', true)91assert.strictEqual(true, caps.get('silent'))92assert.ok(caps.has('silent'))93})94})95},96{ browsers: ['internet explorer'] },97)9899100