ryby 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/README.textile +135 -0
  3. metadata +58 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4eeecba57dcd914a6a39c86c004041cd98ef46c3
4
+ data.tar.gz: 426745f7ed3c4b95510e835a1a4313da218baf28
5
+ SHA512:
6
+ metadata.gz: 87c10c86e2e9591da5d42614b3a363e10cc516e7f6e43cf3b4f38ea4190e81e718bc0e7f8179d4ea81f16f3f04214819f09a69d16ffcb77028327589bef8ef05
7
+ data.tar.gz: b49dd63b8aa6cae9819ccf763d598f397ecd151cce7137fb6d4909455db7fb09baa345b8739860de1ce4b96c78553c7a5068eff9d7c484593a195796cfbc9bf7
@@ -0,0 +1,135 @@
1
+ h1. Ryba
2
+
3
+ h2. Введение
4
+
5
+ Часто встает задача заполнения баз данных «рыбой», т.е. случайно сгенерированными данными,
6
+ похожими на настоящие.
7
+
8
+ К таким данным относятся:
9
+ * ФИО.
10
+ * Почтовые адреса (индекс, город, улица, дом, квартира).
11
+ * Телефоны.
12
+ * E-mail адреса.
13
+ * Названия.
14
+ * «Просто текст» для больших текстовых полей.
15
+
16
+ Есть gemы, умеющие генерировать такие данные на английском: "faker":http://faker.rubyforge.org,
17
+ "random_data":http://rubyforge.org/projects/random-data и другие.
18
+
19
+ Ryba — попытка создать аналогичный генератор для русского языка: русские имена, адреса и т.д.
20
+
21
+ Библиотека находится в активной разработке. На данный момент реализованы:
22
+ * Генерация имен людей.
23
+ * Генерация телефонов.
24
+ * Генерация адресов.
25
+ * Генерация имен компаний.
26
+
27
+ Ниже описан интерфейс для реализованных возможностей.
28
+
29
+ h2. Генерация имен людей
30
+
31
+ Методы из @Ryba::Name@.
32
+
33
+ @Ryba::Name.first_name(male = nil)@ — случайное имя.
34
+
35
+ @Ryba::Name.middle_name(male = nil)@ — случайное отчество.
36
+
37
+ @Ryba::Name.family_name(male = nil)@ — случайная фамилия.
38
+
39
+ @Ryba::Name.full_name(male = nil)@ — случайное ФИО (например, "Щетинин Камилл Ростиславович").
40
+
41
+ Параметр @male@ указывает пол (@true@ — мужской, @false@ — женский). Если параметр не указывать,
42
+ будет выбран случайный пол.
43
+
44
+ Чтобы получить имена для одного пола, можно воспользоваться методом @Ryba::Name.gender@,
45
+ возвращающим случайный пол. Либо простым вызовом:
46
+
47
+ <pre><code>
48
+ gender = Ryba::Name.gender
49
+ first_name = Ryba::Name.first_name(gender)
50
+ family_name = Ryba::Name.family_name(gender)
51
+ </pre></code>
52
+
53
+ ...либо с помощью блока
54
+
55
+ <pre><code>
56
+ Ryba::Name.gender do |gender|
57
+ first_name = Ryba::Name.first_name(gender)
58
+ family_name = Ryba::Name.family_name(gender)
59
+ end
60
+ </pre></code>
61
+
62
+ h2. Генерация телефонов
63
+
64
+ Метод @Ryba::PhoneNumber.phone_number@.
65
+
66
+ <pre><code>
67
+ >> Ryba::PhoneNumber.phone_number
68
+ => "2-26-47"
69
+ >> Ryba::PhoneNumber.phone_number
70
+ => "431-15-94"
71
+ >> Ryba::PhoneNumber.phone_number
72
+ => "8 (87829) 9-45-53"
73
+ >> Ryba::PhoneNumber.phone_number
74
+ => "5515328"
75
+ >> Ryba::PhoneNumber.phone_number
76
+ => "(2397) 94 78 14"
77
+ </code></pre>
78
+
79
+ h2. Генерация адресов
80
+
81
+ Методы из @Ryba::Address@.
82
+
83
+ @Ryba::Address.index@ — случайный почтовый индекс (просто случайное число между 100000 и 700000). _Пример: 149544_.
84
+
85
+ @Ryba::Address.city@ - случайный город России. _Пример: "Выкса"_.
86
+
87
+ @Ryba::Address.full_city@ - случайный город с указанием региона, если это необходимо (город не является областным центром). _Примеры:_
88
+ * "Брянская обл., г. Унеча";
89
+ * "г. Ярославль";
90
+ * "г. Москва".
91
+
92
+ @Ryba::Address.street@ - случайное название улицы. _Примеры:_
93
+ * "ул. Бородина";
94
+ * "Красный пер.";
95
+ * "1 линия".
96
+
97
+ @Ryba::Address.address@ - случайный адрес. _Примеры:_
98
+ * "ул. Щербакова 130-279";
99
+ * "ул. Невская, д.167, оф. 32";
100
+ * "Пушкинский пер., д. 36, кв.234";
101
+ * "ул. Базарная, д. 182к2, 5-й эт.".
102
+
103
+ @Ryba::Address.postal@ - случайный полный почтовый адрес. _Примеры:_
104
+ * "242733, Рязанская обл., г. Спас-Клепики, ул. Куйбышева, 42-22";
105
+ * "471408, Челябинская обл., г. Златоуст, ул. Квартальная, 174-282";
106
+ * "195730, Воронежская обл., г. Калач, ул. Волжская, д. 175, кв. 7";
107
+ * "342656, Краснодарский край, г. Лабинск, ул. Ворошилова, д.153, кв.225";
108
+ * "209218, Сахалинская обл., г. Корсаков, ул. Мусоргского д. 65 кв. 206";
109
+ * "485245, г. Курган, ул. Литвинова д.173 кв. 245".
110
+
111
+ Обратите внимание, что индекс не является настоящим и что в городе может не быть
112
+ такой улицы (а на улице — такого дома, а в доме — такой квартиры).
113
+
114
+ h2. Генерация имен компаний
115
+
116
+ @Ryba::Company.name@ - случайное имя компании. _Примеры:_
117
+ * ПродуктАэро
118
+ * ТрастСеть
119
+ * СалоКондитер
120
+ * РезервФабрика
121
+ * ДжинсКредит
122
+
123
+ Опция :solidity позволяет управлять длиной имени. Например, @Ryba::Company.name(:solidity => 3)@
124
+ генерирует более солидное имя для компании:
125
+ * ТехВоенКомбинатАкадем Групп
126
+ * ТеплоМаркетТоргСинтез
127
+ * ПрофСайтВалютСвязь
128
+ * ТрейдингКоммерцКомТелеком
129
+ * ГосСервисСпецСтанция
130
+
131
+ h2. Лицензия
132
+
133
+ Библиотека ryba распространяется по лицензии MIT, см. файл MIT-LICENSE.
134
+
135
+ Автор: Олег Дашевский, "#{%w(Oleg Dashevskii).join('').downcase}@gmail.com"
metadata ADDED
@@ -0,0 +1,58 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ryby
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.2
5
+ platform: ruby
6
+ authors:
7
+ - oleg dashevskii
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-10-09 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rspec
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ description: belorussian names and addresses generator
28
+ email: olegdashevskii@gmail.com
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files:
32
+ - README.textile
33
+ files:
34
+ - README.textile
35
+ homepage: http://github.com/be9/ryba
36
+ licenses: []
37
+ metadata: {}
38
+ post_install_message:
39
+ rdoc_options: []
40
+ require_paths:
41
+ - lib
42
+ required_ruby_version: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ required_rubygems_version: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: '0'
52
+ requirements: []
53
+ rubyforge_project: ryby
54
+ rubygems_version: 2.6.13
55
+ signing_key:
56
+ specification_version: 4
57
+ summary: belorussian faker
58
+ test_files: []