UNPKG

siesta-lite

Version:

Stress-free JavaScript unit testing and functional testing tool, works in NodeJS and browsers

52 lines (37 loc) 1.44 kB
/* Siesta 5.6.1 Copyright(c) 2009-2022 Bryntum AB https://bryntum.com/contact https://bryntum.com/products/siesta/license */ Class('Ariadne.DomQueryFinder.Identifier.AttributeValue', { isa : Ariadne.QueryFinder.Identifier, does : Ariadne.DomQueryFinder.Role.DomHelper, has : { // an array of attribute names, which can be used for matching attributes : function () { return [ 'name', 'title' ] } }, methods : { initialize : function (cfg) { this.attributes = this.mergeArrayAttributeFromClassHierarchy('attributes', cfg) }, ignoreAttribute : function (target, attributeName) { return false }, identify : function (target, root, maze) { var attributes = this.attributes var segments = [] for (var i = 0; i < attributes.length; i++) { var attribute = attributes[ i ] if (target.hasAttribute(attribute) && !this.ignoreAttribute(target, attribute)) segments.push("[" + attribute + "='" + this.escapeDomSelector(target.getAttribute(attribute)) + "']") } return segments } } });