activemodel 3.0.pre → 3.0.0.rc

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. data/CHANGELOG +44 -1
  2. data/MIT-LICENSE +1 -1
  3. data/README.rdoc +184 -0
  4. data/lib/active_model.rb +29 -19
  5. data/lib/active_model/attribute_methods.rb +167 -46
  6. data/lib/active_model/callbacks.rb +134 -0
  7. data/lib/active_model/conversion.rb +41 -1
  8. data/lib/active_model/deprecated_error_methods.rb +1 -1
  9. data/lib/active_model/dirty.rb +56 -12
  10. data/lib/active_model/errors.rb +205 -46
  11. data/lib/active_model/lint.rb +53 -17
  12. data/lib/active_model/locale/en.yml +26 -23
  13. data/lib/active_model/mass_assignment_security.rb +160 -0
  14. data/lib/active_model/mass_assignment_security/permission_set.rb +40 -0
  15. data/lib/active_model/mass_assignment_security/sanitizer.rb +23 -0
  16. data/lib/active_model/naming.rb +70 -5
  17. data/lib/active_model/observing.rb +40 -16
  18. data/lib/active_model/railtie.rb +2 -0
  19. data/lib/active_model/serialization.rb +59 -0
  20. data/lib/active_model/serializers/json.rb +17 -11
  21. data/lib/active_model/serializers/xml.rb +66 -123
  22. data/lib/active_model/test_case.rb +0 -2
  23. data/lib/active_model/translation.rb +64 -0
  24. data/lib/active_model/validations.rb +150 -68
  25. data/lib/active_model/validations/acceptance.rb +53 -33
  26. data/lib/active_model/validations/callbacks.rb +57 -0
  27. data/lib/active_model/validations/confirmation.rb +41 -23
  28. data/lib/active_model/validations/exclusion.rb +18 -13
  29. data/lib/active_model/validations/format.rb +28 -24
  30. data/lib/active_model/validations/inclusion.rb +18 -13
  31. data/lib/active_model/validations/length.rb +67 -65
  32. data/lib/active_model/validations/numericality.rb +83 -58
  33. data/lib/active_model/validations/presence.rb +10 -8
  34. data/lib/active_model/validations/validates.rb +110 -0
  35. data/lib/active_model/validations/with.rb +90 -23
  36. data/lib/active_model/validator.rb +186 -0
  37. data/lib/active_model/version.rb +3 -2
  38. metadata +79 -20
  39. data/README +0 -21
  40. data/lib/active_model/state_machine.rb +0 -70
  41. data/lib/active_model/state_machine/event.rb +0 -62
  42. data/lib/active_model/state_machine/machine.rb +0 -75
  43. data/lib/active_model/state_machine/state.rb +0 -47
  44. data/lib/active_model/state_machine/state_transition.rb +0 -40
  45. data/lib/active_model/validations_repair_helper.rb +0 -35
@@ -1,40 +0,0 @@
1
- module ActiveModel
2
- module StateMachine
3
- class StateTransition
4
- attr_reader :from, :to, :options
5
-
6
- def initialize(opts)
7
- @from, @to, @guard, @on_transition = opts[:from], opts[:to], opts[:guard], opts[:on_transition]
8
- @options = opts
9
- end
10
-
11
- def perform(obj)
12
- case @guard
13
- when Symbol, String
14
- obj.send(@guard)
15
- when Proc
16
- @guard.call(obj)
17
- else
18
- true
19
- end
20
- end
21
-
22
- def execute(obj, *args)
23
- case @on_transition
24
- when Symbol, String
25
- obj.send(@on_transition, *args)
26
- when Proc
27
- @on_transition.call(obj, *args)
28
- end
29
- end
30
-
31
- def ==(obj)
32
- @from == obj.from && @to == obj.to
33
- end
34
-
35
- def from?(value)
36
- @from == value
37
- end
38
- end
39
- end
40
- end
@@ -1,35 +0,0 @@
1
- module ActiveModel
2
- module ValidationsRepairHelper
3
- extend ActiveSupport::Concern
4
-
5
- module ClassMethods
6
- def repair_validations(*model_classes)
7
- setup do
8
- @_stored_callbacks = {}
9
- model_classes.each do |k|
10
- @_stored_callbacks[k] = k._validate_callbacks.dup
11
- end
12
- end
13
- teardown do
14
- model_classes.each do |k|
15
- k._validate_callbacks = @_stored_callbacks[k]
16
- k.__update_callbacks(:validate)
17
- end
18
- end
19
- end
20
- end
21
-
22
- def repair_validations(*model_classes, &block)
23
- @__stored_callbacks = {}
24
- model_classes.each do |k|
25
- @__stored_callbacks[k] = k._validate_callbacks.dup
26
- end
27
- return block.call
28
- ensure
29
- model_classes.each do |k|
30
- k._validate_callbacks = @__stored_callbacks[k]
31
- k.__update_callbacks(:validate)
32
- end
33
- end
34
- end
35
- end