Module FixtureReplacement::ClassMethods
In: lib/fixture_replacement/class_methods.rb

Methods

Attributes

defaults_file  [W] 
excluded_environments  [W] 

Public Instance methods

[Source]

   # File lib/fixture_replacement/class_methods.rb, line 3
3:     def attributes_for(fixture_name, options={}, fixture_attributes_class=FixtureReplacementController::AttributeCollection, &blk)
4:       fixture_attributes_class.new(fixture_name, {
5:         :class => options[:class],
6:         :from => options[:from],
7:         :attributes => blk
8:       })
9:     end

[Source]

    # File lib/fixture_replacement/class_methods.rb, line 13
13:     def defaults_file
14:       @defaults_file ||= "#{rails_root}/db/example_data.rb"
15:     end

[Source]

    # File lib/fixture_replacement/class_methods.rb, line 21
21:     def excluded_environments
22:       @excluded_environments ||= ["production"]
23:     end

[Source]

    # File lib/fixture_replacement/class_methods.rb, line 27
27:     def included(included_mod)
28:       raise_if_environment_is_in_excluded_environments
29:       FixtureReplacementController::MethodGenerator.generate_methods
30:     end

Any user defined instance methods (as well as default_*) need the module‘s class scope to be accessible inside the block given to attributes_for

Addresses bug 16858 (see CHANGELOG)

[Source]

    # File lib/fixture_replacement/class_methods.rb, line 36
36:     def method_added(method)
37:       module_function method if method != :method_added
38:     end

[Source]

    # File lib/fixture_replacement/class_methods.rb, line 17
17:     def reset_excluded_environments!
18:       @excluded_environments = ["production"]
19:     end

[Validate]