state_machine 0.8.1 → 0.9.0

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 (42) hide show
  1. data/CHANGELOG.rdoc +17 -0
  2. data/LICENSE +1 -1
  3. data/README.rdoc +162 -23
  4. data/Rakefile +3 -18
  5. data/lib/state_machine.rb +3 -4
  6. data/lib/state_machine/callback.rb +65 -13
  7. data/lib/state_machine/eval_helpers.rb +20 -4
  8. data/lib/state_machine/initializers.rb +4 -0
  9. data/lib/state_machine/initializers/merb.rb +1 -0
  10. data/lib/state_machine/initializers/rails.rb +7 -0
  11. data/lib/state_machine/integrations.rb +21 -6
  12. data/lib/state_machine/integrations/active_model.rb +414 -0
  13. data/lib/state_machine/integrations/active_model/locale.rb +11 -0
  14. data/lib/state_machine/integrations/{active_record → active_model}/observer.rb +7 -7
  15. data/lib/state_machine/integrations/active_record.rb +65 -129
  16. data/lib/state_machine/integrations/active_record/locale.rb +4 -11
  17. data/lib/state_machine/integrations/data_mapper.rb +24 -6
  18. data/lib/state_machine/integrations/data_mapper/observer.rb +36 -0
  19. data/lib/state_machine/integrations/mongo_mapper.rb +295 -0
  20. data/lib/state_machine/integrations/sequel.rb +33 -7
  21. data/lib/state_machine/machine.rb +121 -23
  22. data/lib/state_machine/machine_collection.rb +12 -103
  23. data/lib/state_machine/transition.rb +125 -164
  24. data/lib/state_machine/transition_collection.rb +244 -0
  25. data/lib/tasks/state_machine.rb +12 -15
  26. data/test/functional/state_machine_test.rb +11 -1
  27. data/test/unit/callback_test.rb +305 -32
  28. data/test/unit/eval_helpers_test.rb +103 -1
  29. data/test/unit/event_test.rb +2 -1
  30. data/test/unit/guard_test.rb +2 -1
  31. data/test/unit/integrations/active_model_test.rb +909 -0
  32. data/test/unit/integrations/active_record_test.rb +1542 -1292
  33. data/test/unit/integrations/data_mapper_test.rb +1369 -1041
  34. data/test/unit/integrations/mongo_mapper_test.rb +1349 -0
  35. data/test/unit/integrations/sequel_test.rb +1214 -985
  36. data/test/unit/integrations_test.rb +8 -0
  37. data/test/unit/machine_collection_test.rb +140 -513
  38. data/test/unit/machine_test.rb +212 -10
  39. data/test/unit/state_test.rb +2 -1
  40. data/test/unit/transition_collection_test.rb +2098 -0
  41. data/test/unit/transition_test.rb +704 -552
  42. metadata +16 -3
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: state_machine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aaron Pfeifer
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-03-13 23:00:00 -05:00
12
+ date: 2010-04-12 00:00:00 -04:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -45,17 +45,24 @@ files:
45
45
  - examples/merb-rest/view_index.html.erb
46
46
  - lib/state_machine/state.rb
47
47
  - lib/state_machine/machine_collection.rb
48
+ - lib/state_machine/initializers/merb.rb
49
+ - lib/state_machine/initializers/rails.rb
48
50
  - lib/state_machine/state_collection.rb
51
+ - lib/state_machine/initializers.rb
49
52
  - lib/state_machine/event.rb
50
53
  - lib/state_machine/machine.rb
51
54
  - lib/state_machine/guard.rb
52
55
  - lib/state_machine/assertions.rb
56
+ - lib/state_machine/transition_collection.rb
53
57
  - lib/state_machine/extensions.rb
54
58
  - lib/state_machine/integrations/data_mapper/observer.rb
59
+ - lib/state_machine/integrations/active_model/observer.rb
60
+ - lib/state_machine/integrations/active_model/locale.rb
55
61
  - lib/state_machine/integrations/sequel.rb
56
62
  - lib/state_machine/integrations/data_mapper.rb
63
+ - lib/state_machine/integrations/active_model.rb
57
64
  - lib/state_machine/integrations/active_record.rb
58
- - lib/state_machine/integrations/active_record/observer.rb
65
+ - lib/state_machine/integrations/mongo_mapper.rb
59
66
  - lib/state_machine/integrations/active_record/locale.rb
60
67
  - lib/state_machine/event_collection.rb
61
68
  - lib/state_machine/eval_helpers.rb
@@ -69,6 +76,7 @@ files:
69
76
  - lib/tasks/state_machine.rake
70
77
  - lib/tasks/state_machine.rb
71
78
  - lib/state_machine.rb
79
+ - test/unit/transition_collection_test.rb
72
80
  - test/unit/callback_test.rb
73
81
  - test/unit/state_machine_test.rb
74
82
  - test/unit/invalid_event_test.rb
@@ -80,6 +88,8 @@ files:
80
88
  - test/unit/guard_test.rb
81
89
  - test/unit/integrations/data_mapper_test.rb
82
90
  - test/unit/integrations/sequel_test.rb
91
+ - test/unit/integrations/mongo_mapper_test.rb
92
+ - test/unit/integrations/active_model_test.rb
83
93
  - test/unit/integrations/active_record_test.rb
84
94
  - test/unit/eval_helpers_test.rb
85
95
  - test/unit/invalid_transition_test.rb
@@ -128,6 +138,7 @@ signing_key:
128
138
  specification_version: 3
129
139
  summary: Adds support for creating state machines for attributes on any Ruby class
130
140
  test_files:
141
+ - test/unit/transition_collection_test.rb
131
142
  - test/unit/callback_test.rb
132
143
  - test/unit/state_machine_test.rb
133
144
  - test/unit/invalid_event_test.rb
@@ -139,6 +150,8 @@ test_files:
139
150
  - test/unit/guard_test.rb
140
151
  - test/unit/integrations/data_mapper_test.rb
141
152
  - test/unit/integrations/sequel_test.rb
153
+ - test/unit/integrations/mongo_mapper_test.rb
154
+ - test/unit/integrations/active_model_test.rb
142
155
  - test/unit/integrations/active_record_test.rb
143
156
  - test/unit/eval_helpers_test.rb
144
157
  - test/unit/invalid_transition_test.rb