dm-validations 0.10.1 → 0.10.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 (102) hide show
  1. data/Rakefile +23 -18
  2. data/VERSION +1 -0
  3. data/dm-validations.gemspec +188 -0
  4. data/lib/dm-validations.rb +25 -75
  5. data/lib/dm-validations/auto_validate.rb +7 -7
  6. data/lib/dm-validations/contextual_validators.rb +4 -18
  7. data/lib/dm-validations/exceptions.rb +3 -1
  8. data/lib/dm-validations/support/context.rb +40 -1
  9. data/lib/dm-validations/validation_errors.rb +2 -13
  10. data/lib/dm-validations/validators/absent_field_validator.rb +2 -2
  11. data/lib/dm-validations/validators/acceptance_validator.rb +14 -16
  12. data/lib/dm-validations/validators/confirmation_validator.rb +17 -15
  13. data/lib/dm-validations/validators/format_validator.rb +18 -11
  14. data/lib/dm-validations/validators/generic_validator.rb +45 -15
  15. data/lib/dm-validations/validators/length_validator.rb +2 -11
  16. data/lib/dm-validations/validators/method_validator.rb +2 -2
  17. data/lib/dm-validations/validators/numeric_validator.rb +8 -6
  18. data/lib/dm-validations/validators/primitive_validator.rb +1 -1
  19. data/lib/dm-validations/validators/uniqueness_validator.rb +13 -9
  20. data/lib/dm-validations/validators/within_validator.rb +4 -3
  21. data/spec/fixtures/basketball_player.rb +0 -3
  22. data/spec/fixtures/bill_of_landing.rb +1 -1
  23. data/spec/fixtures/city.rb +0 -1
  24. data/spec/fixtures/company.rb +1 -3
  25. data/spec/fixtures/corporate_world.rb +0 -6
  26. data/spec/fixtures/country.rb +0 -1
  27. data/spec/fixtures/event.rb +1 -1
  28. data/spec/fixtures/page.rb +2 -2
  29. data/spec/fixtures/reservation.rb +1 -1
  30. data/spec/fixtures/scm_operation.rb +0 -8
  31. data/spec/integration/absent_field_validator/absent_field_validator_spec.rb +6 -2
  32. data/spec/integration/acceptance_validator/acceptance_validator_spec.rb +36 -36
  33. data/spec/integration/automatic_validation/custom_messages_for_inferred_validation_spec.rb +2 -2
  34. data/spec/integration/automatic_validation/disabling_inferred_validation_spec.rb +4 -4
  35. data/spec/integration/automatic_validation/inferred_boolean_properties_validation_spec.rb +2 -2
  36. data/spec/integration/automatic_validation/inferred_float_property_validation_spec.rb +2 -0
  37. data/spec/integration/automatic_validation/inferred_format_validation_spec.rb +3 -1
  38. data/spec/integration/automatic_validation/inferred_integer_properties_validation_spec.rb +2 -0
  39. data/spec/integration/automatic_validation/inferred_length_validation_spec.rb +6 -2
  40. data/spec/integration/automatic_validation/inferred_presence_validation_spec.rb +8 -4
  41. data/spec/integration/automatic_validation/inferred_primitive_validation_spec.rb +3 -1
  42. data/spec/integration/automatic_validation/spec_helper.rb +6 -6
  43. data/spec/integration/block_validator/block_validator_spec.rb +1 -1
  44. data/spec/integration/conditional_validation/if_condition_spec.rb +3 -1
  45. data/spec/integration/confirmation_validator/confirmation_validator_spec.rb +3 -1
  46. data/spec/integration/datamapper_models/association_validation_spec.rb +4 -1
  47. data/spec/integration/datamapper_models/inheritance_spec.rb +6 -2
  48. data/spec/integration/duplicated_validations/duplicated_validations_spec.rb +3 -1
  49. data/spec/integration/format_validator/email_format_validator_spec.rb +5 -1
  50. data/spec/integration/format_validator/format_validator_spec.rb +5 -1
  51. data/spec/integration/format_validator/regexp_validator_spec.rb +5 -1
  52. data/spec/integration/format_validator/url_format_validator_spec.rb +8 -4
  53. data/spec/integration/length_validator/default_value_spec.rb +4 -2
  54. data/spec/integration/length_validator/equality_spec.rb +3 -1
  55. data/spec/integration/length_validator/error_message_spec.rb +3 -1
  56. data/spec/integration/length_validator/maximum_spec.rb +3 -1
  57. data/spec/integration/length_validator/minimum_spec.rb +3 -1
  58. data/spec/integration/length_validator/range_spec.rb +3 -1
  59. data/spec/integration/method_validator/method_validator_spec.rb +3 -1
  60. data/spec/integration/numeric_validator/equality_with_float_type_spec.rb +5 -1
  61. data/spec/integration/numeric_validator/equality_with_integer_type_spec.rb +5 -1
  62. data/spec/integration/numeric_validator/float_type_spec.rb +3 -1
  63. data/spec/integration/numeric_validator/gt_with_float_type_spec.rb +3 -1
  64. data/spec/integration/numeric_validator/gte_with_float_type_spec.rb +3 -1
  65. data/spec/integration/numeric_validator/integer_only_true_spec.rb +11 -9
  66. data/spec/integration/numeric_validator/integer_type_spec.rb +10 -8
  67. data/spec/integration/numeric_validator/lt_with_float_type_spec.rb +3 -1
  68. data/spec/integration/numeric_validator/lte_with_float_type_spec.rb +3 -1
  69. data/spec/integration/primitive_validator/primitive_validator_spec.rb +3 -1
  70. data/spec/integration/pure_ruby_objects/plain_old_ruby_object_validation_spec.rb +6 -6
  71. data/spec/integration/required_field_validator/association_spec.rb +9 -4
  72. data/spec/integration/required_field_validator/boolean_type_value_spec.rb +24 -18
  73. data/spec/integration/required_field_validator/date_type_value_spec.rb +21 -19
  74. data/spec/integration/required_field_validator/datetime_type_value_spec.rb +21 -19
  75. data/spec/integration/required_field_validator/float_type_value_spec.rb +21 -19
  76. data/spec/integration/required_field_validator/integer_type_value_spec.rb +17 -15
  77. data/spec/integration/required_field_validator/shared_examples.rb +5 -3
  78. data/spec/integration/required_field_validator/string_type_value_spec.rb +20 -16
  79. data/spec/integration/required_field_validator/text_type_value_spec.rb +10 -6
  80. data/spec/integration/uniqueness_validator/uniqueness_validator_spec.rb +23 -25
  81. data/spec/integration/within_validator/within_validator_spec.rb +7 -3
  82. data/spec/public/resource_spec.rb +5 -6
  83. data/spec/rcov.opts +6 -0
  84. data/spec/spec.opts +2 -0
  85. data/spec/unit/contextual_validators/emptiness_spec.rb +1 -1
  86. data/spec/unit/contextual_validators/execution_spec.rb +9 -16
  87. data/spec/unit/generic_validator/equality_operator_spec.rb +3 -3
  88. data/spec/unit/validation_errors/adding_spec.rb +1 -1
  89. data/spec/unit/validation_errors/emptiness_spec.rb +1 -1
  90. data/spec/unit/validation_errors/enumerable_spec.rb +1 -1
  91. data/tasks/ci.rake +1 -0
  92. data/tasks/metrics.rake +36 -0
  93. data/tasks/spec.rake +41 -0
  94. data/tasks/yard.rake +9 -0
  95. data/tasks/yardstick.rake +19 -0
  96. metadata +36 -18
  97. data/History.rdoc +0 -45
  98. data/Manifest.txt +0 -139
  99. data/TODO +0 -16
  100. data/lib/dm-validations/version.rb +0 -5
  101. data/tasks/install.rb +0 -13
  102. data/tasks/spec.rb +0 -25
@@ -1,45 +0,0 @@
1
- === 0.10.1 / 2009-09-30
2
-
3
- * 2 minor enhancements:
4
-
5
- * Always pass the base options into the validation methods so that
6
- :allow_nil => true is always in effect in auto-validations
7
- * Improved active_model compatibility
8
-
9
- === 0.10.0 / 2009-09-15
10
-
11
- * 3 major enhancements:
12
-
13
- * Major spec refactoring
14
- * dm-validations now can be used with a pure Ruby classes, not just DM models
15
- * i18n of error messages
16
-
17
- * 1 minor enhancement:
18
-
19
- * allow_nil option now uses #blank? instead of #nil? to comply common a use case
20
-
21
-
22
- === 0.9.10 / 2009-01-19
23
-
24
- * 1 major enhancement:
25
-
26
- * Major spec refactoring
27
-
28
- * 2 minor enhancements:
29
-
30
- * Moved all error messages into ValidationErrors.default_error_messages
31
- * Added :allow_nil option to validates_within
32
-
33
- * 1 bug fix:
34
-
35
- * Fixed error messages and specs for within_validator
36
-
37
- === 0.9.9 / 2009-01-04
38
-
39
- * No changes this version
40
-
41
- === 0.9.8 / 2008-12-07
42
-
43
- * 1 bug fix:
44
-
45
- * Updated specs to test valididity of RFC2822 email addresses
@@ -1,139 +0,0 @@
1
- History.rdoc
2
- LICENSE
3
- Manifest.txt
4
- README.rdoc
5
- Rakefile
6
- TODO
7
- lib/dm-validations.rb
8
- lib/dm-validations/auto_validate.rb
9
- lib/dm-validations/contextual_validators.rb
10
- lib/dm-validations/exceptions.rb
11
- lib/dm-validations/formats/email.rb
12
- lib/dm-validations/formats/url.rb
13
- lib/dm-validations/support/context.rb
14
- lib/dm-validations/support/object.rb
15
- lib/dm-validations/validation_errors.rb
16
- lib/dm-validations/validators/absent_field_validator.rb
17
- lib/dm-validations/validators/acceptance_validator.rb
18
- lib/dm-validations/validators/block_validator.rb
19
- lib/dm-validations/validators/confirmation_validator.rb
20
- lib/dm-validations/validators/format_validator.rb
21
- lib/dm-validations/validators/generic_validator.rb
22
- lib/dm-validations/validators/length_validator.rb
23
- lib/dm-validations/validators/method_validator.rb
24
- lib/dm-validations/validators/numeric_validator.rb
25
- lib/dm-validations/validators/primitive_validator.rb
26
- lib/dm-validations/validators/required_field_validator.rb
27
- lib/dm-validations/validators/uniqueness_validator.rb
28
- lib/dm-validations/validators/within_validator.rb
29
- lib/dm-validations/version.rb
30
- spec/fixtures/barcode.rb
31
- spec/fixtures/basketball_court.rb
32
- spec/fixtures/basketball_player.rb
33
- spec/fixtures/beta_tester_account.rb
34
- spec/fixtures/bill_of_landing.rb
35
- spec/fixtures/boat_dock.rb
36
- spec/fixtures/city.rb
37
- spec/fixtures/company.rb
38
- spec/fixtures/corporate_world.rb
39
- spec/fixtures/country.rb
40
- spec/fixtures/currency.rb
41
- spec/fixtures/ethernet_frame.rb
42
- spec/fixtures/event.rb
43
- spec/fixtures/g3_concert.rb
44
- spec/fixtures/jabberwock.rb
45
- spec/fixtures/kayak.rb
46
- spec/fixtures/lernean_hydra.rb
47
- spec/fixtures/mathematical_function.rb
48
- spec/fixtures/memory_object.rb
49
- spec/fixtures/mittelschnauzer.rb
50
- spec/fixtures/motor_launch.rb
51
- spec/fixtures/page.rb
52
- spec/fixtures/phone_number.rb
53
- spec/fixtures/pirogue.rb
54
- spec/fixtures/programming_language.rb
55
- spec/fixtures/reservation.rb
56
- spec/fixtures/scm_operation.rb
57
- spec/fixtures/sms_message.rb
58
- spec/fixtures/udp_packet.rb
59
- spec/integration/absent_field_validator/absent_field_validator_spec.rb
60
- spec/integration/absent_field_validator/spec_helper.rb
61
- spec/integration/acceptance_validator/acceptance_validator_spec.rb
62
- spec/integration/acceptance_validator/spec_helper.rb
63
- spec/integration/automatic_validation/custom_messages_for_inferred_validation_spec.rb
64
- spec/integration/automatic_validation/disabling_inferred_validation_spec.rb
65
- spec/integration/automatic_validation/inferred_boolean_properties_validation_spec.rb
66
- spec/integration/automatic_validation/inferred_float_property_validation_spec.rb
67
- spec/integration/automatic_validation/inferred_format_validation_spec.rb
68
- spec/integration/automatic_validation/inferred_integer_properties_validation_spec.rb
69
- spec/integration/automatic_validation/inferred_length_validation_spec.rb
70
- spec/integration/automatic_validation/inferred_presence_validation_spec.rb
71
- spec/integration/automatic_validation/inferred_primitive_validation_spec.rb
72
- spec/integration/automatic_validation/inferred_within_validation_spec.rb
73
- spec/integration/automatic_validation/spec_helper.rb
74
- spec/integration/block_validator/block_validator_spec.rb
75
- spec/integration/block_validator/spec_helper.rb
76
- spec/integration/conditional_validation/if_condition_spec.rb
77
- spec/integration/conditional_validation/spec_helper.rb
78
- spec/integration/confirmation_validator/confirmation_validator_spec.rb
79
- spec/integration/confirmation_validator/spec_helper.rb
80
- spec/integration/datamapper_models/association_validation_spec.rb
81
- spec/integration/datamapper_models/inheritance_spec.rb
82
- spec/integration/duplicated_validations/duplicated_validations_spec.rb
83
- spec/integration/duplicated_validations/spec_helper.rb
84
- spec/integration/format_validator/email_format_validator_spec.rb
85
- spec/integration/format_validator/format_validator_spec.rb
86
- spec/integration/format_validator/regexp_validator_spec.rb
87
- spec/integration/format_validator/spec_helper.rb
88
- spec/integration/format_validator/url_format_validator_spec.rb
89
- spec/integration/length_validator/default_value_spec.rb
90
- spec/integration/length_validator/equality_spec.rb
91
- spec/integration/length_validator/error_message_spec.rb
92
- spec/integration/length_validator/maximum_spec.rb
93
- spec/integration/length_validator/minimum_spec.rb
94
- spec/integration/length_validator/range_spec.rb
95
- spec/integration/length_validator/spec_helper.rb
96
- spec/integration/method_validator/method_validator_spec.rb
97
- spec/integration/method_validator/spec_helper.rb
98
- spec/integration/numeric_validator/equality_with_float_type_spec.rb
99
- spec/integration/numeric_validator/equality_with_integer_type_spec.rb
100
- spec/integration/numeric_validator/float_type_spec.rb
101
- spec/integration/numeric_validator/gt_with_float_type_spec.rb
102
- spec/integration/numeric_validator/gte_with_float_type_spec.rb
103
- spec/integration/numeric_validator/integer_only_true_spec.rb
104
- spec/integration/numeric_validator/integer_type_spec.rb
105
- spec/integration/numeric_validator/lt_with_float_type_spec.rb
106
- spec/integration/numeric_validator/lte_with_float_type_spec.rb
107
- spec/integration/numeric_validator/spec_helper.rb
108
- spec/integration/primitive_validator/primitive_validator_spec.rb
109
- spec/integration/primitive_validator/spec_helper.rb
110
- spec/integration/pure_ruby_objects/plain_old_ruby_object_validation_spec.rb
111
- spec/integration/required_field_validator/association_spec.rb
112
- spec/integration/required_field_validator/boolean_type_value_spec.rb
113
- spec/integration/required_field_validator/date_type_value_spec.rb
114
- spec/integration/required_field_validator/datetime_type_value_spec.rb
115
- spec/integration/required_field_validator/float_type_value_spec.rb
116
- spec/integration/required_field_validator/integer_type_value_spec.rb
117
- spec/integration/required_field_validator/plain_old_ruby_object_spec.rb
118
- spec/integration/required_field_validator/shared_examples.rb
119
- spec/integration/required_field_validator/spec_helper.rb
120
- spec/integration/required_field_validator/string_type_value_spec.rb
121
- spec/integration/required_field_validator/text_type_value_spec.rb
122
- spec/integration/shared/default_validation_context.rb
123
- spec/integration/shared/valid_and_invalid_model.rb
124
- spec/integration/uniqueness_validator/spec_helper.rb
125
- spec/integration/uniqueness_validator/uniqueness_validator_spec.rb
126
- spec/integration/within_validator/spec_helper.rb
127
- spec/integration/within_validator/within_validator_spec.rb
128
- spec/public/resource_spec.rb
129
- spec/spec.opts
130
- spec/spec_helper.rb
131
- spec/unit/contextual_validators/emptiness_spec.rb
132
- spec/unit/contextual_validators/execution_spec.rb
133
- spec/unit/contextual_validators/spec_helper.rb
134
- spec/unit/generic_validator/equality_operator_spec.rb
135
- spec/unit/validation_errors/adding_spec.rb
136
- spec/unit/validation_errors/emptiness_spec.rb
137
- spec/unit/validation_errors/enumerable_spec.rb
138
- tasks/install.rb
139
- tasks/spec.rb
data/TODO DELETED
@@ -1,16 +0,0 @@
1
- Short TODO list
2
- ===============
3
-
4
- * Add logic_validator -- validates(“You need more money!”) { |instance| instance.money < 1_000_000 }
5
- * Allow for the translation of strings in messages
6
- * Add the canned RFC2822 email format to format_validator
7
- * Add a validates_acceptance_of validator
8
- * Add a validates_each validator
9
- * Add a validates_true validator
10
-
11
- * Validators do not accept associations except validates_uniqueness_of - fix this
12
- * Add auto validation on cardinality of associations
13
-
14
- ---
15
- TODO tickets may also be found in the DataMapper Issue Tracker:
16
- http://datamapper.lighthouseapp.com/
@@ -1,5 +0,0 @@
1
- module DataMapper
2
- module Validations
3
- VERSION = '0.10.1'.freeze
4
- end
5
- end
@@ -1,13 +0,0 @@
1
- def sudo_gem(cmd)
2
- sh "#{SUDO} #{RUBY} -S gem #{cmd}", :verbose => false
3
- end
4
-
5
- desc "Install #{GEM_NAME} #{GEM_VERSION}"
6
- task :install => [ :package ] do
7
- sudo_gem "install pkg/#{GEM_NAME}-#{GEM_VERSION} --no-update-sources"
8
- end
9
-
10
- desc "Uninstall #{GEM_NAME} #{GEM_VERSION}"
11
- task :uninstall => [ :clobber ] do
12
- sudo_gem "uninstall #{GEM_NAME} -v#{GEM_VERSION} -Ix"
13
- end
@@ -1,25 +0,0 @@
1
- begin
2
- require 'spec/rake/spectask'
3
-
4
- task :default => [ :spec ]
5
-
6
- desc 'Run specifications'
7
- Spec::Rake::SpecTask.new(:spec) do |t|
8
- t.spec_opts << '--options' << 'spec/spec.opts' if File.exists?('spec/spec.opts')
9
- t.libs << 'lib' << 'spec' # needed for CI rake spec task, duplicated in spec_helper
10
-
11
- begin
12
- require 'rcov'
13
- t.rcov = JRUBY ? false : (ENV.has_key?('NO_RCOV') ? ENV['NO_RCOV'] != 'true' : true)
14
- t.rcov_opts << '--exclude' << 'spec'
15
- t.rcov_opts << '--text-summary'
16
- t.rcov_opts << '--sort' << 'coverage' << '--sort-reverse'
17
- rescue LoadError
18
- # rcov not installed
19
- rescue SyntaxError
20
- # rcov syntax invalid
21
- end
22
- end
23
- rescue LoadError
24
- # rspec not installed
25
- end