lib/pickle/adapter.rb in pickle-0.5.0 vs lib/pickle/adapter.rb in pickle-0.5.1
- old
+ new
@@ -68,11 +68,11 @@
end
def find_all_models(klass, conditions)
klass.const_get(:PickleAdapter).find_all_models(klass, conditions)
end
-
+
def create_model(klass, attributes)
klass.const_get(:PickleAdapter).create_model(klass, attributes)
end
end
@@ -102,29 +102,41 @@
# factory-girl adapter
class FactoryGirl < Adapter
def self.factories
if defined? ::FactoryGirl
factories = []
- ::FactoryGirl.factories.each {|v| factories << new(v)}
+ ::FactoryGirl.factories.each do |factory|
+ factory.names.each do |name|
+ factories << new(factory, name)
+ end
+ end
factories
else
(::Factory.factories.values rescue []).map {|factory| new(factory)}
end
end
- def initialize(factory)
+ def initialize(factory, factory_name)
if defined? ::FactoryGirl
- @klass, @name = factory.build_class, factory.name.to_s
+ @klass, @name = factory.build_class, factory_name.to_s
else
@klass, @name = factory.build_class, factory.factory_name.to_s
end
end
def create(attrs = {})
if defined? ::FactoryGirl
::FactoryGirl.create(@name, attrs)
else
Factory(@name, attrs)
+ end
+ end
+
+ def build(attrs = {})
+ if defined? ::FactoryGirl
+ ::FactoryGirl.build(@name, attrs)
+ else
+ Factory.build(@name, attrs)
end
end
end
# fabrication adapter