Module: TestProf::FactoryDefault::FactoryBotPatch::SyntaxExt
- Defined in:
- lib/test_prof/factory_default/factory_bot_patch.rb
Instance Method Summary collapse
- #create_default(name, *args, &block) ⇒ Object
- #get_factory_default(name, *traits, **overrides) ⇒ Object
- #set_factory_default(*name, obj, preserve_traits: FactoryDefault.config.preserve_traits, preserve_attributes: FactoryDefault.config.preserve_attributes, **other) ⇒ Object
- #skip_factory_default(&block) ⇒ Object
Instance Method Details
#create_default(name, *args, &block) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/test_prof/factory_default/factory_bot_patch.rb', line 26 def create_default(name, *args, &block) = args. = {} [:preserve_traits] = .delete(:preserve_traits) if .key?(:preserve_traits) [:preserve_attributes] = .delete(:preserve_attributes) if .key?(:preserve_attributes) obj = TestProf::FactoryBot.create(name, *args, , &block) # Factory with traits name = [name, *args] if args.any? set_factory_default(name, obj, **) end |
#get_factory_default(name, *traits, **overrides) ⇒ Object
50 51 52 |
# File 'lib/test_prof/factory_default/factory_bot_patch.rb', line 50 def get_factory_default(name, *traits, **overrides) FactoryDefault.get(name, traits, overrides, skip_stats: true) end |
#set_factory_default(*name, obj, preserve_traits: FactoryDefault.config.preserve_traits, preserve_attributes: FactoryDefault.config.preserve_attributes, **other) ⇒ Object
40 41 42 43 44 45 46 47 48 |
# File 'lib/test_prof/factory_default/factory_bot_patch.rb', line 40 def set_factory_default(*name, obj, preserve_traits: FactoryDefault.config.preserve_traits, preserve_attributes: FactoryDefault.config.preserve_attributes, **other) name = name.first if name.size == 1 FactoryDefault.register( name, obj, preserve_traits: preserve_traits, preserve_attributes: preserve_attributes, **other ) end |
#skip_factory_default(&block) ⇒ Object
54 55 56 |
# File 'lib/test_prof/factory_default/factory_bot_patch.rb', line 54 def skip_factory_default(&block) FactoryDefault.disable!(&block) end |