lib/chop/dsl.rb in chop-0.24.0 vs lib/chop/dsl.rb in chop-0.25.0

- old
+ new

@@ -5,11 +5,17 @@ def create! klass, table, &block Create.create! klass, table, &block end def diff! selector, table, session: Capybara.current_session, as: nil, &block - class_name = as ? as.to_s.camelize : session.find(selector).tag_name.camelize + class_name = if as + as.to_s + elsif selector.respond_to?(:tag_name) + selector.tag_name + else + session.find(selector).tag_name + end.camelize klass = const_get("Chop::#{class_name}") klass.diff! selector, table, session: session, &block end def fill_in! table @@ -23,10 +29,10 @@ def create! klass, &block Chop.create! klass, self, &block end def diff! other_table="table", options={}, &block - if other_table.is_a?(String) && !other_table.include?("|") + if other_table.respond_to?(:tag_name) || (other_table.is_a?(String) && !other_table.include?("|")) Chop.diff! other_table, self, options, &block else super end end