Module: FigMagic

Extended by:
DateTranslation, Missing, StandardTranslation, YmlReader
Defined in:
lib/fig_magic.rb,
lib/fig_magic/node.rb,
lib/fig_magic/missing.rb,
lib/fig_magic/version.rb,
lib/fig_magic/translation.rb,
lib/fig_magic/date_translation.rb,
lib/fig_magic/standard_translation.rb

Defined Under Namespace

Modules: DateTranslation, Missing, StandardTranslation Classes: Node, Translation

Constant Summary collapse

VERSION =
"0.5"

Class Attribute Summary collapse

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from StandardTranslation

catch_phrase, cell_phone, characters, city, company_name, country, credit_card_number, credit_card_type, domain_name, email_address, first_name, full_name, last_name, mask, name_prefix, name_suffix, paragraphs, phone_number, randomize, secondary_address, sentence, sentences, sequential, state, state_abbr, street_address, title, url, user_name, words, zip_code

Methods included from DateTranslation

day_of_week, day_of_week_abbr, month, month_abbr, today, tomorrow, yesterday

Methods included from Missing

method_missing, read_file

Class Attribute Details

.ymlObject

Returns the value of attribute yml.



78
79
80
# File 'lib/fig_magic.rb', line 78

def yml
  @yml
end

Instance Attribute Details

#parentObject (readonly)

Returns the value of attribute parent.



24
25
26
# File 'lib/fig_magic.rb', line 24

def parent
  @parent
end

Class Method Details

.add_translator(translator) ⇒ Object



84
85
86
# File 'lib/fig_magic.rb', line 84

def add_translator(translator)
  translators << translator
end

.default_directoryObject



80
81
82
# File 'lib/fig_magic.rb', line 80

def default_directory
  'config/'
end

.included(cls) ⇒ Object



32
33
34
35
36
37
# File 'lib/fig_magic.rb', line 32

def self.included(cls)
  @parent = cls
  translators.each do |translator|
    Translation.send :include, translator
  end
end

.locale=(value) ⇒ Object



28
29
30
# File 'lib/fig_magic.rb', line 28

def self.locale=(value)
  Faker::Config.locale = value
end

.translatorsObject



88
89
90
# File 'lib/fig_magic.rb', line 88

def translators
  @translators ||= []
end

Instance Method Details

#data_for(key, additional = {}) ⇒ Object

Raises:

  • (ArgumentError)


39
40
41
42
43
44
45
46
47
48
49
50
# File 'lib/fig_magic.rb', line 39

def data_for(key, additional={})
  if key.is_a?(String) && key.match(%r{/})
    filename, record = key.split('/')
    FigMagic.load("#{filename}.yml")
  else
    record = key.to_s
    FigMagic.load(the_file) unless FigMagic.yml
  end
  data = FigMagic.yml[record]
  raise ArgumentError, "Undefined key #{key}" unless data
  prep_data data.merge(additional).clone
end