Class: Faker::Lorem

Inherits:
Base
  • Object
show all
Defined in:
lib/faker/lorem.rb

Overview

Based on Perl’s Text::Lorem

Constant Summary collapse

CHARACTERS =
('0'..'9').to_a + ('a'..'z').to_a

Constants inherited from Base

Base::Letters, Base::Numbers, Base::ULetters

Class Method Summary collapse

Methods inherited from Base

bothify, fetch, fetch_all, flexible, letterify, method_missing, numerify, parse, rand_in_range, regexify, translate, with_locale

Class Method Details

.characterObject



21
22
23
# File 'lib/faker/lorem.rb', line 21

def character
  CHARACTERS.sample
end

.characters(char_count = 255) ⇒ Object



25
26
27
28
29
# File 'lib/faker/lorem.rb', line 25

def characters(char_count = 255)
  char_count = resolve(char_count)
  return '' if char_count.to_i < 1
  Array.new(char_count) { CHARACTERS.sample }.join
end

.paragraph(sentence_count = 3, supplemental = false, random_sentences_to_add = 3) ⇒ Object



43
44
45
# File 'lib/faker/lorem.rb', line 43

def paragraph(sentence_count = 3, supplemental = false, random_sentences_to_add = 3)
  sentences(resolve(sentence_count) + rand(random_sentences_to_add.to_i), supplemental).join(' ')
end

.paragraphs(paragraph_count = 3, supplemental = false) ⇒ Object



47
48
49
50
51
52
53
# File 'lib/faker/lorem.rb', line 47

def paragraphs(paragraph_count = 3, supplemental = false)
  [].tap do |paragraphs|
    1.upto(resolve(paragraph_count)) do
      paragraphs << paragraph(3, supplemental)
    end
  end
end

.question(word_count = 4, supplemental = false, random_words_to_add = 6) ⇒ Object



55
56
57
# File 'lib/faker/lorem.rb', line 55

def question(word_count = 4, supplemental = false, random_words_to_add = 6)
  words(word_count + rand(random_words_to_add.to_i).to_i, supplemental).join(' ').capitalize + '?'
end

.questions(question_count = 3, supplemental = false) ⇒ Object



59
60
61
62
63
64
65
# File 'lib/faker/lorem.rb', line 59

def questions(question_count = 3, supplemental = false)
  [].tap do |questions|
    1.upto(resolve(question_count)) do
      questions << question(3, supplemental)
    end
  end
end

.sentence(word_count = 4, supplemental = false, random_words_to_add = 6) ⇒ Object



31
32
33
# File 'lib/faker/lorem.rb', line 31

def sentence(word_count = 4, supplemental = false, random_words_to_add = 6)
  words(word_count + rand(random_words_to_add.to_i), supplemental).join(' ').capitalize + '.'
end

.sentences(sentence_count = 3, supplemental = false) ⇒ Object



35
36
37
38
39
40
41
# File 'lib/faker/lorem.rb', line 35

def sentences(sentence_count = 3, supplemental = false)
  [].tap do |sentences|
    1.upto(resolve(sentence_count)) do
      sentences << sentence(3, supplemental)
    end
  end
end

.wordObject



7
8
9
# File 'lib/faker/lorem.rb', line 7

def word
  translate('faker.lorem.words').sample
end

.words(num = 3, supplemental = false) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'lib/faker/lorem.rb', line 11

def words(num = 3, supplemental = false)
  resolved_num = resolve(num)
  word_list = (
    translate('faker.lorem.words') +
    (supplemental ? translate('faker.lorem.supplemental') : [])
  )
  word_list = word_list * ((resolved_num / word_list.length) + 1)
  word_list.shuffle[0, resolved_num]
end