UNPKG

skutter

Version:

Skutter: Opinionated BDD Browser based test framework

28 lines (27 loc) 1.18 kB
"use strict"; const base_1 = require("./base"); const page_element_searcher_1 = require("./page-element-searcher"); class Container extends base_1.Base { constructor(name, boundarySelector, contents, type = Container.name) { super(name, boundarySelector, type); this.contents = {}; this.contents = contents; } find(target, throwIfNotFound = false) { return page_element_searcher_1.PageElementSearcher.find(this.contents, target, throwIfNotFound); } findBack(stack, target, throwIfNotFound = false) { console.log("[Container].[findBack] Finding back..."); page_element_searcher_1.PageElementSearcher.rewindStack(stack, target, throwIfNotFound); let topItem = stack.topItem; if (!topItem) { if (throwIfNotFound) { throw new Error("[Container].[FindBack] after rewinding stack, no item matching target was found."); } return null; } let definition = stack.topItem.definition; return page_element_searcher_1.PageElementSearcher.find(definition.contents, target, throwIfNotFound); } } exports.Container = Container;