Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | 5x 5x 1x 4x 1x 5x | /**
*
* Delete cookies visible to the current page. By providing a cookie name it just removes the single cookie or more when multiple names are passed.
*
* <example>
:deleteCookie.js
it('should delete cookies', () => {
browser.setCookies([
{name: 'test', value: '123'},
{name: 'test2', value: '456'},
{name: 'test3', value: '789'}
])
let cookies = browser.getCookies()
console.log(cookies)
// outputs:
// [
// { name: 'test', value: '123' },
// { name: 'test2', value: '456' }
// { name: 'test3', value: '789' }
// ]
browser.deleteCookies(['test3'])
cookies = browser.getCookies()
console.log(cookies)
// outputs:
// [
// { name: 'test', value: '123' },
// { name: 'test2', value: '456' }
// ]
browser.deleteCookies()
cookies = browser.getCookies()
console.log(cookies) // outputs: []
})
* </example>
*
* @alias browser.deleteCookies
* @param {String[]=} names names of cookies to be deleted
* @uses webdriver/deleteAllCookies,webdriver/deleteCookie
* @type cookie
*
*/
export default function deleteCookies(names) {
const namesList = typeof names !== 'undefined' && !Array.isArray(names) ? [names] : names
if (typeof namesList === 'undefined') {
return this.deleteAllCookies()
}
if (namesList.every(obj => typeof obj !== 'string')) {
return Promise.reject(new Error('Invalid input (see https://webdriver.io/docs/api/browser/deleteCookies.html for documentation.'))
}
return Promise.all(namesList.map(name => this.deleteCookie(name)))
}
|