aasm 2.2.0 → 2.2.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.
data/Gemfile ADDED
@@ -0,0 +1,16 @@
1
+ source :rubygems
2
+
3
+ # Add dependencies to develop your gem here.
4
+ # Include everything needed to run rake, tests, features, etc.
5
+ group :development do
6
+ gem "rspec", ">= 2.0.0"
7
+ gem "shoulda"
8
+ gem "sdoc"
9
+ gem "bundler", ">= 1.0.0"
10
+ gem "jeweler", ">= 1.5.1"
11
+ gem "rcov", ">= 0"
12
+ gem "rr"
13
+ gem "reek", "~> 1.2.8"
14
+ gem "roodi", "~> 2.1.0"
15
+ gem "activerecord"
16
+ end
@@ -1,5 +1,7 @@
1
1
  = Alternatives
2
2
 
3
+ This project is essentially abandoned. Thorsten Böttger has volunteered to take over maintenance: https://github.com/alto/aasm
4
+
3
5
  If you are looking for an alternative to AASM, I would highly suggest transitions: http://github.com/qoobaa/transitions
4
6
 
5
7
  = AASM - Ruby state machines
data/Rakefile CHANGED
@@ -1,108 +1,79 @@
1
1
  require 'rubygems'
2
+ require 'bundler'
3
+ begin
4
+ Bundler.setup(:default, :development)
5
+ rescue Bundler::BundlerError => e
6
+ $stderr.puts e.message
7
+ $stderr.puts "Run `bundle install` to install missing gems"
8
+ exit e.status_code
9
+ end
2
10
  require 'rake'
3
11
 
4
- begin
5
- require 'jeweler'
6
- Jeweler::Tasks.new do |gem|
7
- gem.name = "aasm"
8
- gem.summary = %Q{State machine mixin for Ruby objects}
9
- gem.description = %Q{AASM is a continuation of the acts as state machine rails plugin, built for plain Ruby objects.}
10
- gem.homepage = "http://rubyist.github.com/aasm/"
11
- gem.authors = ["Scott Barron", "Scott Petersen", "Travis Tilley"]
12
- gem.email = "scott@elitists.net, ttilley@gmail.com"
13
- gem.add_development_dependency "rspec"
14
- gem.add_development_dependency "shoulda"
15
- gem.add_development_dependency 'sdoc'
16
- # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
17
- end
18
- Jeweler::GemcutterTasks.new
19
- rescue LoadError
20
- puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
12
+ require 'jeweler'
13
+ Jeweler::Tasks.new do |gem|
14
+ gem.name = "aasm"
15
+ gem.summary = %Q{State machine mixin for Ruby objects}
16
+ gem.description = %Q{AASM is a continuation of the acts as state machine rails plugin, built for plain Ruby objects.}
17
+ gem.homepage = "http://rubyist.github.com/aasm/"
18
+ gem.authors = ["Scott Barron", "Scott Petersen", "Travis Tilley"]
19
+ gem.email = "scott@elitists.net, ttilley@gmail.com"
20
+ gem.add_development_dependency "rspec"
21
+ gem.add_development_dependency "shoulda"
22
+ gem.add_development_dependency 'sdoc'
23
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
21
24
  end
25
+ Jeweler::RubygemsDotOrgTasks.new
22
26
 
23
- require 'spec/rake/spectask'
27
+ require 'rspec/core/rake_task'
24
28
  require 'rake/testtask'
25
-
26
29
  Rake::TestTask.new(:test) do |test|
27
30
  test.libs << 'lib' << 'test'
28
31
  test.pattern = 'test/**/*_test.rb'
29
32
  test.verbose = true
30
33
  end
31
34
 
32
- begin
33
- require 'rcov/rcovtask'
34
- Rcov::RcovTask.new(:rcov_shoulda) do |test|
35
- test.libs << 'test'
36
- test.pattern = 'test/**/*_test.rb'
37
- test.verbose = true
38
- end
39
- rescue LoadError
40
- task :rcov do
41
- abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
42
- end
35
+ require 'rcov/rcovtask'
36
+ Rcov::RcovTask.new(:rcov_shoulda) do |test|
37
+ test.libs << 'test'
38
+ test.pattern = 'test/**/*_test.rb'
39
+ test.verbose = true
43
40
  end
44
41
 
45
- Spec::Rake::SpecTask.new(:spec) do |spec|
46
- spec.libs << 'lib' << 'spec'
47
- spec.spec_files = FileList['spec/**/*_spec.rb']
48
- spec.spec_opts = ['-cfs']
42
+ RSpec::Core::RakeTask.new(:spec) do |spec|
43
+ spec.pattern = 'spec/**/*_spec.rb'
44
+ spec.rspec_opts = ['-cfs']
49
45
  end
50
46
 
51
- Spec::Rake::SpecTask.new(:rcov_rspec) do |spec|
52
- spec.libs << 'lib' << 'spec'
47
+ RSpec::Core::RakeTask.new(:rcov_rspec) do |spec|
53
48
  spec.pattern = 'spec/**/*_spec.rb'
54
49
  spec.rcov = true
55
50
  end
56
51
 
57
- task :test => :check_dependencies
58
- task :spec => :check_dependencies
59
-
60
- begin
61
- require 'reek/rake_task'
62
- Reek::RakeTask.new do |t|
63
- t.fail_on_error = true
64
- t.verbose = false
65
- t.source_files = 'lib/**/*.rb'
66
- end
67
- rescue LoadError
68
- task :reek do
69
- abort "Reek is not available. In order to run reek, you must: sudo gem install reek"
70
- end
52
+ require 'reek/rake/task'
53
+ Reek::Rake::Task.new do |t|
54
+ t.fail_on_error = true
55
+ t.verbose = false
56
+ t.source_files = 'lib/**/*.rb'
71
57
  end
72
58
 
73
- begin
74
- require 'roodi'
75
- require 'roodi_task'
76
- RoodiTask.new do |t|
77
- t.verbose = false
78
- end
79
- rescue LoadError
80
- task :roodi do
81
- abort "Roodi is not available. In order to run roodi, you must: sudo gem install roodi"
82
- end
59
+ require 'roodi'
60
+ require 'roodi_task'
61
+ RoodiTask.new do |t|
62
+ t.verbose = false
83
63
  end
84
64
 
85
65
  task :default => :test
86
66
 
87
- begin
88
- require 'rake/rdoctask'
89
- require 'sdoc'
90
- Rake::RDocTask.new do |rdoc|
91
- if File.exist?('VERSION')
92
- version = File.read('VERSION')
93
- else
94
- version = ""
95
- end
96
-
97
- rdoc.rdoc_dir = 'rdoc'
98
- rdoc.title = "aasm #{version}"
99
- rdoc.rdoc_files.include('README*')
100
- rdoc.rdoc_files.include('lib/**/*.rb')
67
+ require 'rake/rdoctask'
68
+ require 'sdoc'
69
+ Rake::RDocTask.new do |rdoc|
70
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
101
71
 
102
- rdoc.options << '--fmt' << 'shtml'
103
- rdoc.template = 'direct'
104
- end
105
- rescue LoadError
106
- puts "aasm makes use of the sdoc gem. Install it with: sudo gem install sdoc"
107
- end
72
+ rdoc.rdoc_dir = 'rdoc'
73
+ rdoc.title = "aasm #{version}"
74
+ rdoc.rdoc_files.include('README*')
75
+ rdoc.rdoc_files.include('lib/**/*.rb')
108
76
 
77
+ rdoc.options << '--fmt' << 'shtml'
78
+ rdoc.template = 'direct'
79
+ end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.2.0
1
+ 2.2.1
@@ -1,91 +1,123 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{aasm}
8
- s.version = "2.2.0"
8
+ s.version = "2.2.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Scott Barron", "Scott Petersen", "Travis Tilley"]
12
- s.date = %q{2010-09-13}
12
+ s.date = %q{2011-08-31}
13
13
  s.description = %q{AASM is a continuation of the acts as state machine rails plugin, built for plain Ruby objects.}
14
14
  s.email = %q{scott@elitists.net, ttilley@gmail.com}
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE",
17
- "README.rdoc"
17
+ "README.rdoc"
18
18
  ]
19
19
  s.files = [
20
20
  ".document",
21
- ".gitignore",
22
- "LICENSE",
23
- "README.rdoc",
24
- "Rakefile",
25
- "VERSION",
26
- "aasm.gemspec",
27
- "lib/aasm.rb",
28
- "lib/aasm/aasm.rb",
29
- "lib/aasm/event.rb",
30
- "lib/aasm/persistence.rb",
31
- "lib/aasm/persistence/active_record_persistence.rb",
32
- "lib/aasm/state.rb",
33
- "lib/aasm/state_machine.rb",
34
- "lib/aasm/state_transition.rb",
35
- "lib/aasm/supporting_classes.rb",
36
- "spec/functional/conversation.rb",
37
- "spec/functional/conversation_spec.rb",
38
- "spec/spec_helper.rb",
39
- "spec/unit/aasm_spec.rb",
40
- "spec/unit/active_record_persistence_spec.rb",
41
- "spec/unit/before_after_callbacks_spec.rb",
42
- "spec/unit/event_spec.rb",
43
- "spec/unit/state_spec.rb",
44
- "spec/unit/state_transition_spec.rb",
45
- "test/functional/auth_machine_test.rb",
46
- "test/test_helper.rb",
47
- "test/unit/aasm_test.rb",
48
- "test/unit/event_test.rb",
49
- "test/unit/state_test.rb",
50
- "test/unit/state_transition_test.rb"
21
+ "Gemfile",
22
+ "LICENSE",
23
+ "README.rdoc",
24
+ "Rakefile",
25
+ "VERSION",
26
+ "aasm.gemspec",
27
+ "lib/aasm.rb",
28
+ "lib/aasm/aasm.rb",
29
+ "lib/aasm/event.rb",
30
+ "lib/aasm/persistence.rb",
31
+ "lib/aasm/persistence/active_record_persistence.rb",
32
+ "lib/aasm/state.rb",
33
+ "lib/aasm/state_machine.rb",
34
+ "lib/aasm/state_transition.rb",
35
+ "lib/aasm/supporting_classes.rb",
36
+ "spec/functional/conversation.rb",
37
+ "spec/functional/conversation_spec.rb",
38
+ "spec/spec_helper.rb",
39
+ "spec/unit/aasm_spec.rb",
40
+ "spec/unit/active_record_persistence_spec.rb",
41
+ "spec/unit/before_after_callbacks_spec.rb",
42
+ "spec/unit/event_spec.rb",
43
+ "spec/unit/state_spec.rb",
44
+ "spec/unit/state_transition_spec.rb",
45
+ "test/functional/auth_machine_test.rb",
46
+ "test/models/process.rb",
47
+ "test/test_helper.rb",
48
+ "test/unit/aasm_test.rb",
49
+ "test/unit/event_test.rb",
50
+ "test/unit/state_machine_test.rb",
51
+ "test/unit/state_test.rb",
52
+ "test/unit/state_transition_test.rb"
51
53
  ]
52
54
  s.homepage = %q{http://rubyist.github.com/aasm/}
53
- s.rdoc_options = ["--charset=UTF-8"]
54
55
  s.require_paths = ["lib"]
55
- s.rubygems_version = %q{1.3.7}
56
+ s.rubygems_version = %q{1.6.2}
56
57
  s.summary = %q{State machine mixin for Ruby objects}
57
58
  s.test_files = [
58
59
  "spec/functional/conversation.rb",
59
- "spec/functional/conversation_spec.rb",
60
- "spec/spec_helper.rb",
61
- "spec/unit/aasm_spec.rb",
62
- "spec/unit/active_record_persistence_spec.rb",
63
- "spec/unit/before_after_callbacks_spec.rb",
64
- "spec/unit/event_spec.rb",
65
- "spec/unit/state_spec.rb",
66
- "spec/unit/state_transition_spec.rb",
67
- "test/functional/auth_machine_test.rb",
68
- "test/test_helper.rb",
69
- "test/unit/aasm_test.rb",
70
- "test/unit/event_test.rb",
71
- "test/unit/state_test.rb",
72
- "test/unit/state_transition_test.rb"
60
+ "spec/functional/conversation_spec.rb",
61
+ "spec/spec_helper.rb",
62
+ "spec/unit/aasm_spec.rb",
63
+ "spec/unit/active_record_persistence_spec.rb",
64
+ "spec/unit/before_after_callbacks_spec.rb",
65
+ "spec/unit/event_spec.rb",
66
+ "spec/unit/state_spec.rb",
67
+ "spec/unit/state_transition_spec.rb",
68
+ "test/functional/auth_machine_test.rb",
69
+ "test/models/process.rb",
70
+ "test/test_helper.rb",
71
+ "test/unit/aasm_test.rb",
72
+ "test/unit/event_test.rb",
73
+ "test/unit/state_machine_test.rb",
74
+ "test/unit/state_test.rb",
75
+ "test/unit/state_transition_test.rb"
73
76
  ]
74
77
 
75
78
  if s.respond_to? :specification_version then
76
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
77
79
  s.specification_version = 3
78
80
 
79
81
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
82
+ s.add_development_dependency(%q<rspec>, [">= 2.0.0"])
83
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
84
+ s.add_development_dependency(%q<sdoc>, [">= 0"])
85
+ s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
86
+ s.add_development_dependency(%q<jeweler>, [">= 1.5.1"])
87
+ s.add_development_dependency(%q<rcov>, [">= 0"])
88
+ s.add_development_dependency(%q<rr>, [">= 0"])
89
+ s.add_development_dependency(%q<reek>, ["~> 1.2.8"])
90
+ s.add_development_dependency(%q<roodi>, ["~> 2.1.0"])
91
+ s.add_development_dependency(%q<activerecord>, [">= 0"])
80
92
  s.add_development_dependency(%q<rspec>, [">= 0"])
81
93
  s.add_development_dependency(%q<shoulda>, [">= 0"])
82
94
  s.add_development_dependency(%q<sdoc>, [">= 0"])
83
95
  else
96
+ s.add_dependency(%q<rspec>, [">= 2.0.0"])
97
+ s.add_dependency(%q<shoulda>, [">= 0"])
98
+ s.add_dependency(%q<sdoc>, [">= 0"])
99
+ s.add_dependency(%q<bundler>, [">= 1.0.0"])
100
+ s.add_dependency(%q<jeweler>, [">= 1.5.1"])
101
+ s.add_dependency(%q<rcov>, [">= 0"])
102
+ s.add_dependency(%q<rr>, [">= 0"])
103
+ s.add_dependency(%q<reek>, ["~> 1.2.8"])
104
+ s.add_dependency(%q<roodi>, ["~> 2.1.0"])
105
+ s.add_dependency(%q<activerecord>, [">= 0"])
84
106
  s.add_dependency(%q<rspec>, [">= 0"])
85
107
  s.add_dependency(%q<shoulda>, [">= 0"])
86
108
  s.add_dependency(%q<sdoc>, [">= 0"])
87
109
  end
88
110
  else
111
+ s.add_dependency(%q<rspec>, [">= 2.0.0"])
112
+ s.add_dependency(%q<shoulda>, [">= 0"])
113
+ s.add_dependency(%q<sdoc>, [">= 0"])
114
+ s.add_dependency(%q<bundler>, [">= 1.0.0"])
115
+ s.add_dependency(%q<jeweler>, [">= 1.5.1"])
116
+ s.add_dependency(%q<rcov>, [">= 0"])
117
+ s.add_dependency(%q<rr>, [">= 0"])
118
+ s.add_dependency(%q<reek>, ["~> 1.2.8"])
119
+ s.add_dependency(%q<roodi>, ["~> 2.1.0"])
120
+ s.add_dependency(%q<activerecord>, [">= 0"])
89
121
  s.add_dependency(%q<rspec>, [">= 0"])
90
122
  s.add_dependency(%q<shoulda>, [">= 0"])
91
123
  s.add_dependency(%q<sdoc>, [">= 0"])
@@ -14,7 +14,7 @@ class AASM::SupportingClasses::Event
14
14
  next_state = nil
15
15
  transitions.each do |transition|
16
16
  next if to_state and !Array(transition.to).include?(to_state)
17
- if transition.perform(obj)
17
+ if transition.perform(obj, *args)
18
18
  next_state = to_state || Array(transition.to).first
19
19
  transition.execute(obj, *args)
20
20
  break
@@ -1,13 +1,12 @@
1
1
  class AASM::StateMachine
2
- def self.[](*args)
3
- (@machines ||= {})[args]
2
+ def self.[](clazz)
3
+ (@machines ||= {})[clazz.to_s]
4
4
  end
5
-
6
- def self.[]=(*args)
7
- val = args.pop
8
- (@machines ||= {})[args] = val
5
+
6
+ def self.[]=(clazz, machine)
7
+ (@machines ||= {})[clazz.to_s] = machine
9
8
  end
10
-
9
+
11
10
  attr_accessor :states, :events, :initial_state, :config
12
11
  attr_reader :name
13
12
 
@@ -7,12 +7,12 @@ class AASM::SupportingClasses::StateTransition
7
7
  @opts = opts
8
8
  end
9
9
 
10
- def perform(obj)
10
+ def perform(obj, *args)
11
11
  case @guard
12
12
  when Symbol, String
13
- obj.send(@guard)
13
+ obj.send(@guard, *args)
14
14
  when Proc
15
- @guard.call(obj)
15
+ @guard.call(obj, *args)
16
16
  else
17
17
  true
18
18
  end
@@ -1,11 +1,10 @@
1
1
  $LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__)))
2
2
  $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib')))
3
-
4
3
  require 'aasm'
5
4
 
6
- require 'spec'
7
- require 'spec/autorun'
5
+ require 'rspec'
6
+ require 'rspec/autorun'
8
7
 
9
- Spec::Runner.configure do |config|
8
+ RSpec.configure do |config|
10
9
 
11
10
  end
@@ -60,7 +60,7 @@ begin
60
60
  attr_accessor :skilled, :aasm_state
61
61
  end
62
62
 
63
- describe "aasm model", :shared => true do
63
+ shared_examples_for "aasm model" do
64
64
  it "should include AASM::Persistence::ActiveRecordPersistence" do
65
65
  @klass.included_modules.should be_include(AASM::Persistence::ActiveRecordPersistence)
66
66
  end
@@ -48,6 +48,20 @@ describe AASM::SupportingClasses::Event, 'when firing an event' do
48
48
 
49
49
  event.fire(obj).should == :closed
50
50
  end
51
+
52
+
53
+ it 'should call the guard with the params passed in' do
54
+ event = AASM::SupportingClasses::Event.new(:event) do
55
+ transitions :to => :closed, :from => [:open, :received], :guard => :guard_fn
56
+ end
57
+
58
+ obj = mock('object')
59
+ obj.stub!(:aasm_current_state).and_return(:open)
60
+ obj.should_receive(:guard_fn).with('arg1', 'arg2').and_return(true)
61
+
62
+ event.fire(obj, nil, 'arg1', 'arg2').should == :closed
63
+ end
64
+
51
65
  end
52
66
 
53
67
  describe AASM::SupportingClasses::Event, 'when executing the success callback' do
@@ -0,0 +1,18 @@
1
+ module Models
2
+ class Process
3
+ include AASM
4
+
5
+ aasm_state :sleeping
6
+ aasm_state :running
7
+ aasm_state :suspended
8
+
9
+ aasm_event :start do
10
+ transitions :from => :sleeping, :to => :running
11
+ end
12
+
13
+ aasm_event :stop do
14
+ transitions :from => :running, :to => :suspended
15
+ end
16
+
17
+ end
18
+ end
@@ -1,3 +1,13 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ begin
4
+ Bundler.setup(:default, :development)
5
+ rescue Bundler::BundlerError => e
6
+ $stderr.puts e.message
7
+ $stderr.puts "Run `bundle install` to install missing gems"
8
+ exit e.status_code
9
+ end
10
+
1
11
  require 'ostruct'
2
12
  require 'rubygems'
3
13
 
@@ -30,4 +40,4 @@ end
30
40
 
31
41
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
32
42
  $LOAD_PATH.unshift(File.dirname(__FILE__))
33
- require 'aasm'
43
+ require 'aasm'
@@ -0,0 +1,37 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
2
+
3
+ class StateMachineTest < Test::Unit::TestCase
4
+
5
+ context "state machines" do
6
+
7
+ should "be created without memory leak" do
8
+ assert_equal 1, AASM::StateMachine.instance_variable_get("@machines").size # AuthMachine
9
+ assert_number_of_objects AASM::SupportingClasses::State, 5 # AuthMachine
10
+ assert_number_of_objects AASM::SupportingClasses::Event, 10 # AuthMachine
11
+ assert_number_of_objects AASM::SupportingClasses::StateTransition, 18 # AuthMachine
12
+
13
+ load File.expand_path(File.dirname(__FILE__) + '/../models/process.rb')
14
+ assert_equal 2, AASM::StateMachine.instance_variable_get("@machines").size # AuthMachine + Process
15
+ assert_number_of_objects Models::Process, 0
16
+ assert_number_of_objects AASM::SupportingClasses::State, 8 # AuthMachine + Process
17
+ assert_number_of_objects AASM::SupportingClasses::Event, 12 # AuthMachine + Process
18
+ assert_number_of_objects AASM::SupportingClasses::StateTransition, 20 # AuthMachine + Process
19
+
20
+ Models.send(:remove_const, "Process") if Models.const_defined?("Process")
21
+ load File.expand_path(File.dirname(__FILE__) + '/../models/process.rb')
22
+ assert_equal 2, AASM::StateMachine.instance_variable_get("@machines").size # AuthMachine + Process
23
+ assert_number_of_objects AASM::SupportingClasses::State, 8 # AuthMachine + Process
24
+ assert_number_of_objects AASM::SupportingClasses::Event, 12 # AuthMachine + Process
25
+ assert_number_of_objects AASM::SupportingClasses::StateTransition, 20 # AuthMachine + Process
26
+ end
27
+
28
+ end
29
+
30
+ private
31
+
32
+ def assert_number_of_objects(clazz, num)
33
+ count = ObjectSpace.each_object(clazz) {}
34
+ assert_equal num, count, "#{num} expected, but we had #{count} #{clazz}"
35
+ end
36
+
37
+ end
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aasm
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 5
5
+ prerelease:
5
6
  segments:
6
7
  - 2
7
8
  - 2
8
- - 0
9
- version: 2.2.0
9
+ - 1
10
+ version: 2.2.1
10
11
  platform: ruby
11
12
  authors:
12
13
  - Scott Barron
@@ -16,48 +17,201 @@ autorequire:
16
17
  bindir: bin
17
18
  cert_chain: []
18
19
 
19
- date: 2010-09-13 00:00:00 -04:00
20
+ date: 2011-08-31 00:00:00 +02:00
20
21
  default_executable:
21
22
  dependencies:
22
23
  - !ruby/object:Gem::Dependency
23
- name: rspec
24
24
  prerelease: false
25
+ type: :development
25
26
  requirement: &id001 !ruby/object:Gem::Requirement
26
27
  none: false
27
28
  requirements:
28
29
  - - ">="
29
30
  - !ruby/object:Gem::Version
31
+ hash: 15
30
32
  segments:
33
+ - 2
31
34
  - 0
32
- version: "0"
33
- type: :development
35
+ - 0
36
+ version: 2.0.0
37
+ name: rspec
34
38
  version_requirements: *id001
35
39
  - !ruby/object:Gem::Dependency
36
- name: shoulda
37
40
  prerelease: false
41
+ type: :development
38
42
  requirement: &id002 !ruby/object:Gem::Requirement
39
43
  none: false
40
44
  requirements:
41
45
  - - ">="
42
46
  - !ruby/object:Gem::Version
47
+ hash: 3
43
48
  segments:
44
49
  - 0
45
50
  version: "0"
46
- type: :development
51
+ name: shoulda
47
52
  version_requirements: *id002
48
53
  - !ruby/object:Gem::Dependency
49
- name: sdoc
50
54
  prerelease: false
55
+ type: :development
51
56
  requirement: &id003 !ruby/object:Gem::Requirement
52
57
  none: false
53
58
  requirements:
54
59
  - - ">="
55
60
  - !ruby/object:Gem::Version
61
+ hash: 3
56
62
  segments:
57
63
  - 0
58
64
  version: "0"
59
- type: :development
65
+ name: sdoc
60
66
  version_requirements: *id003
67
+ - !ruby/object:Gem::Dependency
68
+ prerelease: false
69
+ type: :development
70
+ requirement: &id004 !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ hash: 23
76
+ segments:
77
+ - 1
78
+ - 0
79
+ - 0
80
+ version: 1.0.0
81
+ name: bundler
82
+ version_requirements: *id004
83
+ - !ruby/object:Gem::Dependency
84
+ prerelease: false
85
+ type: :development
86
+ requirement: &id005 !ruby/object:Gem::Requirement
87
+ none: false
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ hash: 1
92
+ segments:
93
+ - 1
94
+ - 5
95
+ - 1
96
+ version: 1.5.1
97
+ name: jeweler
98
+ version_requirements: *id005
99
+ - !ruby/object:Gem::Dependency
100
+ prerelease: false
101
+ type: :development
102
+ requirement: &id006 !ruby/object:Gem::Requirement
103
+ none: false
104
+ requirements:
105
+ - - ">="
106
+ - !ruby/object:Gem::Version
107
+ hash: 3
108
+ segments:
109
+ - 0
110
+ version: "0"
111
+ name: rcov
112
+ version_requirements: *id006
113
+ - !ruby/object:Gem::Dependency
114
+ prerelease: false
115
+ type: :development
116
+ requirement: &id007 !ruby/object:Gem::Requirement
117
+ none: false
118
+ requirements:
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ hash: 3
122
+ segments:
123
+ - 0
124
+ version: "0"
125
+ name: rr
126
+ version_requirements: *id007
127
+ - !ruby/object:Gem::Dependency
128
+ prerelease: false
129
+ type: :development
130
+ requirement: &id008 !ruby/object:Gem::Requirement
131
+ none: false
132
+ requirements:
133
+ - - ~>
134
+ - !ruby/object:Gem::Version
135
+ hash: 15
136
+ segments:
137
+ - 1
138
+ - 2
139
+ - 8
140
+ version: 1.2.8
141
+ name: reek
142
+ version_requirements: *id008
143
+ - !ruby/object:Gem::Dependency
144
+ prerelease: false
145
+ type: :development
146
+ requirement: &id009 !ruby/object:Gem::Requirement
147
+ none: false
148
+ requirements:
149
+ - - ~>
150
+ - !ruby/object:Gem::Version
151
+ hash: 11
152
+ segments:
153
+ - 2
154
+ - 1
155
+ - 0
156
+ version: 2.1.0
157
+ name: roodi
158
+ version_requirements: *id009
159
+ - !ruby/object:Gem::Dependency
160
+ prerelease: false
161
+ type: :development
162
+ requirement: &id010 !ruby/object:Gem::Requirement
163
+ none: false
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ hash: 3
168
+ segments:
169
+ - 0
170
+ version: "0"
171
+ name: activerecord
172
+ version_requirements: *id010
173
+ - !ruby/object:Gem::Dependency
174
+ prerelease: false
175
+ type: :development
176
+ requirement: &id011 !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ hash: 3
182
+ segments:
183
+ - 0
184
+ version: "0"
185
+ name: rspec
186
+ version_requirements: *id011
187
+ - !ruby/object:Gem::Dependency
188
+ prerelease: false
189
+ type: :development
190
+ requirement: &id012 !ruby/object:Gem::Requirement
191
+ none: false
192
+ requirements:
193
+ - - ">="
194
+ - !ruby/object:Gem::Version
195
+ hash: 3
196
+ segments:
197
+ - 0
198
+ version: "0"
199
+ name: shoulda
200
+ version_requirements: *id012
201
+ - !ruby/object:Gem::Dependency
202
+ prerelease: false
203
+ type: :development
204
+ requirement: &id013 !ruby/object:Gem::Requirement
205
+ none: false
206
+ requirements:
207
+ - - ">="
208
+ - !ruby/object:Gem::Version
209
+ hash: 3
210
+ segments:
211
+ - 0
212
+ version: "0"
213
+ name: sdoc
214
+ version_requirements: *id013
61
215
  description: AASM is a continuation of the acts as state machine rails plugin, built for plain Ruby objects.
62
216
  email: scott@elitists.net, ttilley@gmail.com
63
217
  executables: []
@@ -69,7 +223,7 @@ extra_rdoc_files:
69
223
  - README.rdoc
70
224
  files:
71
225
  - .document
72
- - .gitignore
226
+ - Gemfile
73
227
  - LICENSE
74
228
  - README.rdoc
75
229
  - Rakefile
@@ -94,9 +248,11 @@ files:
94
248
  - spec/unit/state_spec.rb
95
249
  - spec/unit/state_transition_spec.rb
96
250
  - test/functional/auth_machine_test.rb
251
+ - test/models/process.rb
97
252
  - test/test_helper.rb
98
253
  - test/unit/aasm_test.rb
99
254
  - test/unit/event_test.rb
255
+ - test/unit/state_machine_test.rb
100
256
  - test/unit/state_test.rb
101
257
  - test/unit/state_transition_test.rb
102
258
  has_rdoc: true
@@ -104,8 +260,8 @@ homepage: http://rubyist.github.com/aasm/
104
260
  licenses: []
105
261
 
106
262
  post_install_message:
107
- rdoc_options:
108
- - --charset=UTF-8
263
+ rdoc_options: []
264
+
109
265
  require_paths:
110
266
  - lib
111
267
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -113,6 +269,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
113
269
  requirements:
114
270
  - - ">="
115
271
  - !ruby/object:Gem::Version
272
+ hash: 3
116
273
  segments:
117
274
  - 0
118
275
  version: "0"
@@ -121,13 +278,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
278
  requirements:
122
279
  - - ">="
123
280
  - !ruby/object:Gem::Version
281
+ hash: 3
124
282
  segments:
125
283
  - 0
126
284
  version: "0"
127
285
  requirements: []
128
286
 
129
287
  rubyforge_project:
130
- rubygems_version: 1.3.7
288
+ rubygems_version: 1.6.2
131
289
  signing_key:
132
290
  specification_version: 3
133
291
  summary: State machine mixin for Ruby objects
@@ -142,8 +300,10 @@ test_files:
142
300
  - spec/unit/state_spec.rb
143
301
  - spec/unit/state_transition_spec.rb
144
302
  - test/functional/auth_machine_test.rb
303
+ - test/models/process.rb
145
304
  - test/test_helper.rb
146
305
  - test/unit/aasm_test.rb
147
306
  - test/unit/event_test.rb
307
+ - test/unit/state_machine_test.rb
148
308
  - test/unit/state_test.rb
149
309
  - test/unit/state_transition_test.rb
data/.gitignore DELETED
@@ -1,7 +0,0 @@
1
- *.sw?
2
- *~
3
- .DS_Store
4
- .idea
5
- coverage
6
- pkg
7
- rdoc