diff --git a/features/factory_girl_steps.feature b/features/factory_girl_steps.feature index b5bb9c7..27ed54f 100644 --- a/features/factory_girl_steps.feature +++ b/features/factory_girl_steps.feature @@ -215,3 +215,7 @@ Feature: Use step definitions generated by factories And the post "Tagged post" should not have the following tags: | name | | funky | + + Scenario: step definitions work correctly with ORMs that have simple `columns` + Given a simple column exists + Then there should be 1 SimpleColumn diff --git a/features/support/factories.rb b/features/support/factories.rb index bc91a4d..dbe1757 100644 --- a/features/support/factories.rb +++ b/features/support/factories.rb @@ -58,6 +58,21 @@ end class NonActiveRecord end +class SimpleColumn + def self.columns + [:name] + end + + def save! + @@count ||= 0 + @@count += 1 + end + + def self.count + @@count + end +end + FactoryGirl.define do # To make sure the step defs work with an email sequence :email do |n| @@ -90,6 +105,10 @@ FactoryGirl.define do # This is here to ensure that factory step definitions don't raise for a non-AR factory factory :non_active_record do end + + # This is here to make FG work with ORMs that have `columns => [:name, :admin, :etc]` on the class (Neo4j) + factory :simple_column do + end end require 'factory_girl/step_definitions'