Sha256: 055649f33c01daeb1a82ea38775cd4171312034ab95b1335b62617c668940f96
Contents?: true
Size: 959 Bytes
Versions: 7
Compression:
Stored size: 959 Bytes
Contents
module CucumberAnalytics # A mix-in module containing methods used by elements that are nested inside # of other elements. module Nested # The parent object that contains *self* attr_accessor :parent_element # Returns the ancestor of *self* that matches the given type. def get_ancestor(ancestor_type) ancestor = self.parent_element target_type = {:directory => Directory, :feature_file => FeatureFile, :feature => Feature, :test => TestElement, :step => Step, :table => Table, :example => Example }[ancestor_type] raise(ArgumentError, "Unknown ancestor type '#{ancestor_type}'.") if target_type.nil? until ancestor.is_a?(target_type) || ancestor.nil? ancestor = ancestor.parent_element end ancestor end end end
Version data entries
7 entries across 7 versions & 1 rubygems