Sha256: 25000597e06302a470a6fe1fbf648ba33f3cac0c5fbb87680509207f44aa33f2

Contents?: true

Size: 789 Bytes

Versions: 10

Compression:

Stored size: 789 Bytes

Contents

require 'taza/fixture'

module Taza
  def self.load_fixtures
    dirs = Dir.glob(File.join(Fixture.base_path,'*/'))
    dirs.unshift Fixture.base_path
    dirs.each do |dir|
      mod = dir.sub(Fixture.base_path,File.join(File.basename(Fixture.base_path),'')).camelize.sub(/::$/,'')
      self.class_eval <<-EOS
      module #{mod}
        def self.included(other_module) 
          fixture = Fixture.new
          fixture.load_fixtures_from('#{dir}')
          fixture.fixture_names.each do |fixture_name|
            self.class_eval do
              define_method(fixture_name) do |entity_key|
                fixture.get_fixture_entity(fixture_name,entity_key.to_s)
              end
            end
          end
        end
      end
      EOS
    end
  end

  self.load_fixtures
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
taza-3.0.0 lib/taza/fixtures.rb
taza-2.1.0 lib/taza/fixtures.rb
taza-2.0 lib/taza/fixtures.rb
taza-1.0 lib/taza/fixtures.rb
taza-0.9.2.1 lib/taza/fixtures.rb
taza-0.9.2.0 lib/taza/fixtures.rb
taza-0.9.1.2 lib/taza/fixtures.rb
taza-0.9.1.1 lib/taza/fixtures.rb
taza-0.9.1 lib/taza/fixtures.rb
taza-0.9.0 lib/taza/fixtures.rb