Sha256: 231e616df1362392ba0e76a5c162089c23369f2767aa9911cbf1d4ea85cea8e2

Contents?: true

Size: 574 Bytes

Versions: 1

Compression:

Stored size: 574 Bytes

Contents

require "mache/dsl"

module Mache
  # An abstract class that wraps a capybara node object and exposes the mache
  # DSL. It also delegates any capybara methods to the underlying node object.
  class Node
    include DSL

    attr_reader :node

    def initialize(node)
      @node = node
    end

    def method_missing(name, *args, &block)
      if @node.respond_to?(name)
        @node.send(name, *args, &block)
      else
        super
      end
    end

    def respond_to_missing?(name, include_private = false)
      @node.respond_to?(name) || super
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mache-1.0.0 lib/mache/node.rb