yema 0.0.1

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 (59) hide show
  1. data/.gitignore +18 -0
  2. data/.rspec +2 -0
  3. data/.travis.yml +8 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +70 -0
  7. data/Rakefile +1 -0
  8. data/lib/yema.rb +33 -0
  9. data/lib/yema/error.rb +11 -0
  10. data/lib/yema/exceptions.rb +3 -0
  11. data/lib/yema/registry/rule.rb +26 -0
  12. data/lib/yema/rule.rb +32 -0
  13. data/lib/yema/rule/format.rb +29 -0
  14. data/lib/yema/rule/inclusion.rb +29 -0
  15. data/lib/yema/rule/length.rb +34 -0
  16. data/lib/yema/rule/required.rb +17 -0
  17. data/lib/yema/rule/strong_type.rb +58 -0
  18. data/lib/yema/validations.rb +30 -0
  19. data/lib/yema/validator.rb +25 -0
  20. data/lib/yema/version.rb +3 -0
  21. data/lib/yema/virtus/attribute.rb +48 -0
  22. data/lib/yema/virtus/attribute/array.rb +12 -0
  23. data/lib/yema/virtus/attribute/numeric.rb +12 -0
  24. data/lib/yema/virtus/attribute/string.rb +16 -0
  25. data/lib/yema/virtus/builder.rb +17 -0
  26. data/lib/yema/virtus/builder/format.rb +13 -0
  27. data/lib/yema/virtus/builder/inclusion.rb +13 -0
  28. data/lib/yema/virtus/builder/length.rb +13 -0
  29. data/lib/yema/virtus/builder/required.rb +13 -0
  30. data/lib/yema/virtus/builder/strong_type.rb +18 -0
  31. data/lib/yema/virtus/validations.rb +28 -0
  32. data/spec/integration/rule/format_spec.rb +23 -0
  33. data/spec/integration/rule/inclusion_spec.rb +28 -0
  34. data/spec/integration/rule/length_spec.rb +40 -0
  35. data/spec/integration/rule/required_spec.rb +22 -0
  36. data/spec/integration/rule/strong_type_spec.rb +27 -0
  37. data/spec/integration/virtus/combination_spec.rb +58 -0
  38. data/spec/integration/virtus/format_spec.rb +22 -0
  39. data/spec/integration/virtus/inclusion_spec.rb +26 -0
  40. data/spec/integration/virtus/length_spec.rb +36 -0
  41. data/spec/integration/virtus/required_spec.rb +21 -0
  42. data/spec/integration/virtus/strong_type_spec.rb +40 -0
  43. data/spec/shared/invalid_options.rb +6 -0
  44. data/spec/shared/invalid_resource.rb +6 -0
  45. data/spec/shared/valid_options.rb +6 -0
  46. data/spec/shared/valid_resource.rb +6 -0
  47. data/spec/spec_helper.rb +9 -0
  48. data/spec/unit/rule/format/valid_options_spec.rb +13 -0
  49. data/spec/unit/rule/inclusion/valid_options_spec.rb +15 -0
  50. data/spec/unit/rule/length/valid_options_spec.rb +16 -0
  51. data/spec/unit/rule/required_options_spec.rb +18 -0
  52. data/spec/unit/rule/strong_type/valid_options_spec.rb +13 -0
  53. data/spec/unit/validations/rules_spec.rb +15 -0
  54. data/spec/unit/validations/valid_spec.rb +41 -0
  55. data/spec/unit/validator/errors_spec.rb +26 -0
  56. data/spec/unit/validator/valid_predicate_spec.rb +31 -0
  57. data/spec/unit/virtus/not_supported_type_spec.rb +11 -0
  58. data/yema.gemspec +26 -0
  59. metadata +210 -0
metadata ADDED
@@ -0,0 +1,210 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: yema
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 0.0.1
6
+ platform: ruby
7
+ authors:
8
+ - Handi Wiguna
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-04-01 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ! '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ none: false
21
+ name: rspec
22
+ type: :development
23
+ prerelease: false
24
+ requirement: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - ! '>='
27
+ - !ruby/object:Gem::Version
28
+ version: '0'
29
+ none: false
30
+ - !ruby/object:Gem::Dependency
31
+ version_requirements: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ! '>='
34
+ - !ruby/object:Gem::Version
35
+ version: '0'
36
+ none: false
37
+ name: rake
38
+ type: :development
39
+ prerelease: false
40
+ requirement: !ruby/object:Gem::Requirement
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
45
+ none: false
46
+ - !ruby/object:Gem::Dependency
47
+ version_requirements: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ! '>='
50
+ - !ruby/object:Gem::Version
51
+ version: '0'
52
+ none: false
53
+ name: simplecov
54
+ type: :development
55
+ prerelease: false
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ! '>='
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ none: false
62
+ - !ruby/object:Gem::Dependency
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - '='
66
+ - !ruby/object:Gem::Version
67
+ version: 0.5.4
68
+ none: false
69
+ name: virtus
70
+ type: :runtime
71
+ prerelease: false
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - '='
75
+ - !ruby/object:Gem::Version
76
+ version: 0.5.4
77
+ none: false
78
+ - !ruby/object:Gem::Dependency
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - '='
82
+ - !ruby/object:Gem::Version
83
+ version: 0.0.2
84
+ none: false
85
+ name: equalizer
86
+ type: :runtime
87
+ prerelease: false
88
+ requirement: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - '='
91
+ - !ruby/object:Gem::Version
92
+ version: 0.0.2
93
+ none: false
94
+ description: Simple validation library with virtus integration
95
+ email:
96
+ - handi_wiguna@yahoo.com
97
+ executables: []
98
+ extensions: []
99
+ extra_rdoc_files: []
100
+ files:
101
+ - .gitignore
102
+ - .rspec
103
+ - .travis.yml
104
+ - Gemfile
105
+ - LICENSE.txt
106
+ - README.md
107
+ - Rakefile
108
+ - lib/yema.rb
109
+ - lib/yema/error.rb
110
+ - lib/yema/exceptions.rb
111
+ - lib/yema/registry/rule.rb
112
+ - lib/yema/rule.rb
113
+ - lib/yema/rule/format.rb
114
+ - lib/yema/rule/inclusion.rb
115
+ - lib/yema/rule/length.rb
116
+ - lib/yema/rule/required.rb
117
+ - lib/yema/rule/strong_type.rb
118
+ - lib/yema/validations.rb
119
+ - lib/yema/validator.rb
120
+ - lib/yema/version.rb
121
+ - lib/yema/virtus/attribute.rb
122
+ - lib/yema/virtus/attribute/array.rb
123
+ - lib/yema/virtus/attribute/numeric.rb
124
+ - lib/yema/virtus/attribute/string.rb
125
+ - lib/yema/virtus/builder.rb
126
+ - lib/yema/virtus/builder/format.rb
127
+ - lib/yema/virtus/builder/inclusion.rb
128
+ - lib/yema/virtus/builder/length.rb
129
+ - lib/yema/virtus/builder/required.rb
130
+ - lib/yema/virtus/builder/strong_type.rb
131
+ - lib/yema/virtus/validations.rb
132
+ - spec/integration/rule/format_spec.rb
133
+ - spec/integration/rule/inclusion_spec.rb
134
+ - spec/integration/rule/length_spec.rb
135
+ - spec/integration/rule/required_spec.rb
136
+ - spec/integration/rule/strong_type_spec.rb
137
+ - spec/integration/virtus/combination_spec.rb
138
+ - spec/integration/virtus/format_spec.rb
139
+ - spec/integration/virtus/inclusion_spec.rb
140
+ - spec/integration/virtus/length_spec.rb
141
+ - spec/integration/virtus/required_spec.rb
142
+ - spec/integration/virtus/strong_type_spec.rb
143
+ - spec/shared/invalid_options.rb
144
+ - spec/shared/invalid_resource.rb
145
+ - spec/shared/valid_options.rb
146
+ - spec/shared/valid_resource.rb
147
+ - spec/spec_helper.rb
148
+ - spec/unit/rule/format/valid_options_spec.rb
149
+ - spec/unit/rule/inclusion/valid_options_spec.rb
150
+ - spec/unit/rule/length/valid_options_spec.rb
151
+ - spec/unit/rule/required_options_spec.rb
152
+ - spec/unit/rule/strong_type/valid_options_spec.rb
153
+ - spec/unit/validations/rules_spec.rb
154
+ - spec/unit/validations/valid_spec.rb
155
+ - spec/unit/validator/errors_spec.rb
156
+ - spec/unit/validator/valid_predicate_spec.rb
157
+ - spec/unit/virtus/not_supported_type_spec.rb
158
+ - yema.gemspec
159
+ homepage: https://github.com/handiwiguna/yema
160
+ licenses: []
161
+ post_install_message:
162
+ rdoc_options: []
163
+ require_paths:
164
+ - lib
165
+ required_ruby_version: !ruby/object:Gem::Requirement
166
+ requirements:
167
+ - - ! '>='
168
+ - !ruby/object:Gem::Version
169
+ version: '0'
170
+ none: false
171
+ required_rubygems_version: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - ! '>='
174
+ - !ruby/object:Gem::Version
175
+ version: '0'
176
+ none: false
177
+ requirements: []
178
+ rubyforge_project:
179
+ rubygems_version: 1.8.23
180
+ signing_key:
181
+ specification_version: 3
182
+ summary: Simple validation library with virtus integration
183
+ test_files:
184
+ - spec/integration/rule/format_spec.rb
185
+ - spec/integration/rule/inclusion_spec.rb
186
+ - spec/integration/rule/length_spec.rb
187
+ - spec/integration/rule/required_spec.rb
188
+ - spec/integration/rule/strong_type_spec.rb
189
+ - spec/integration/virtus/combination_spec.rb
190
+ - spec/integration/virtus/format_spec.rb
191
+ - spec/integration/virtus/inclusion_spec.rb
192
+ - spec/integration/virtus/length_spec.rb
193
+ - spec/integration/virtus/required_spec.rb
194
+ - spec/integration/virtus/strong_type_spec.rb
195
+ - spec/shared/invalid_options.rb
196
+ - spec/shared/invalid_resource.rb
197
+ - spec/shared/valid_options.rb
198
+ - spec/shared/valid_resource.rb
199
+ - spec/spec_helper.rb
200
+ - spec/unit/rule/format/valid_options_spec.rb
201
+ - spec/unit/rule/inclusion/valid_options_spec.rb
202
+ - spec/unit/rule/length/valid_options_spec.rb
203
+ - spec/unit/rule/required_options_spec.rb
204
+ - spec/unit/rule/strong_type/valid_options_spec.rb
205
+ - spec/unit/validations/rules_spec.rb
206
+ - spec/unit/validations/valid_spec.rb
207
+ - spec/unit/validator/errors_spec.rb
208
+ - spec/unit/validator/valid_predicate_spec.rb
209
+ - spec/unit/virtus/not_supported_type_spec.rb
210
+ has_rdoc: