acts_as_trashable 1.0.4 → 1.0.6

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/Rakefile CHANGED
@@ -6,14 +6,13 @@ desc 'Default: run unit tests.'
6
6
  task :default => :test
7
7
 
8
8
  begin
9
- require 'spec/rake/spectask'
10
- desc 'Test the gem.'
11
- Spec::Rake::SpecTask.new(:test) do |t|
12
- t.spec_files = FileList.new('spec/**/*_spec.rb')
13
- end
9
+ require 'rspec'
10
+ require 'rspec/core/rake_task'
11
+ desc 'Run the unit tests'
12
+ RSpec::Core::RakeTask.new(:test)
14
13
  rescue LoadError
15
- tast :test do
16
- STDERR.puts "You must have rspec >= 1.3.0 to run the tests"
14
+ task :test do
15
+ STDERR.puts "You must have rspec 2.0 installed to run the tests"
17
16
  end
18
17
  end
19
18
 
@@ -38,7 +37,7 @@ begin
38
37
 
39
38
  gem.add_dependency('activerecord', '>= 2.2')
40
39
  gem.add_development_dependency('sqlite3')
41
- gem.add_development_dependency('rspec', '>= 1.3.0')
40
+ gem.add_development_dependency('rspec', '>= 2.0.0')
42
41
  gem.add_development_dependency('jeweler')
43
42
  end
44
43
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.4
1
+ 1.0.6
@@ -1,65 +1,63 @@
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{acts_as_trashable}
8
- s.version = "1.0.4"
8
+ s.version = "1.0.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Brian Durand"]
12
- s.date = %q{2010-10-08}
12
+ s.date = %q{2011-02-08}
13
13
  s.description = %q{ActiveRecord extension that serializes destroyed records into a trash table from which they can be restored. This is intended to reduce the risk of users misusing your application's delete function and losing data.}
14
14
  s.email = %q{brian@embellishedvisions.com}
15
15
  s.extra_rdoc_files = [
16
16
  "README.rdoc"
17
17
  ]
18
18
  s.files = [
19
- ".gitignore",
20
- "MIT-LICENSE",
21
- "README.rdoc",
22
- "Rakefile",
23
- "VERSION",
24
- "acts_as_trashable.gemspec",
25
- "lib/acts_as_trashable.rb",
26
- "lib/acts_as_trashable/trash_record.rb",
27
- "spec/acts_as_trashable_spec.rb",
28
- "spec/full_spec.rb",
29
- "spec/spec_helper.rb",
30
- "spec/trash_record_spec.rb"
19
+ "MIT-LICENSE",
20
+ "README.rdoc",
21
+ "Rakefile",
22
+ "VERSION",
23
+ "acts_as_trashable.gemspec",
24
+ "lib/acts_as_trashable.rb",
25
+ "lib/acts_as_trashable/trash_record.rb",
26
+ "spec/acts_as_trashable_spec.rb",
27
+ "spec/full_spec.rb",
28
+ "spec/spec_helper.rb",
29
+ "spec/trash_record_spec.rb"
31
30
  ]
32
31
  s.homepage = %q{http://github.com/bdurand/acts_as_trashable}
33
32
  s.rdoc_options = ["--charset=UTF-8", "--main", "README.rdoc"]
34
33
  s.require_paths = ["lib"]
35
- s.rubygems_version = %q{1.3.7}
34
+ s.rubygems_version = %q{1.4.1}
36
35
  s.summary = %q{ActiveRecord extension that serializes destroyed records into a trash table from which they can be restored.}
37
36
  s.test_files = [
38
37
  "spec/acts_as_trashable_spec.rb",
39
- "spec/full_spec.rb",
40
- "spec/spec_helper.rb",
41
- "spec/trash_record_spec.rb"
38
+ "spec/full_spec.rb",
39
+ "spec/spec_helper.rb",
40
+ "spec/trash_record_spec.rb"
42
41
  ]
43
42
 
44
43
  if s.respond_to? :specification_version then
45
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
46
44
  s.specification_version = 3
47
45
 
48
46
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
49
47
  s.add_runtime_dependency(%q<activerecord>, [">= 2.2"])
50
48
  s.add_development_dependency(%q<sqlite3>, [">= 0"])
51
- s.add_development_dependency(%q<rspec>, [">= 1.3.0"])
49
+ s.add_development_dependency(%q<rspec>, [">= 2.0.0"])
52
50
  s.add_development_dependency(%q<jeweler>, [">= 0"])
53
51
  else
54
52
  s.add_dependency(%q<activerecord>, [">= 2.2"])
55
53
  s.add_dependency(%q<sqlite3>, [">= 0"])
56
- s.add_dependency(%q<rspec>, [">= 1.3.0"])
54
+ s.add_dependency(%q<rspec>, [">= 2.0.0"])
57
55
  s.add_dependency(%q<jeweler>, [">= 0"])
58
56
  end
59
57
  else
60
58
  s.add_dependency(%q<activerecord>, [">= 2.2"])
61
59
  s.add_dependency(%q<sqlite3>, [">= 0"])
62
- s.add_dependency(%q<rspec>, [">= 1.3.0"])
60
+ s.add_dependency(%q<rspec>, [">= 2.0.0"])
63
61
  s.add_dependency(%q<jeweler>, [">= 0"])
64
62
  end
65
63
  end
@@ -56,12 +56,15 @@ module ActsAsTrashable
56
56
  def restore
57
57
  restore_class = self.trashable_type.constantize
58
58
 
59
- # Check if we have a type field, if yes, assume single table inheritance and restore the actual class instead of the stored base class
60
59
  sti_type = self.trashable_attributes[restore_class.inheritance_column]
61
60
  if sti_type
62
61
  begin
63
- restore_class = self.trashable_type.send(:type_name_with_module, sti_type).constantize
64
- rescue NameError
62
+ if !restore_class.store_full_sti_class && !sti_type.start_with?("::")
63
+ sti_type = "#{restore_class.parent.name}::#{sti_type}"
64
+ end
65
+ restore_class = sti_type.constantize
66
+ rescue NameError => e
67
+ raise e
65
68
  # Seems our assumption was wrong and we have no STI
66
69
  end
67
70
  end
data/spec/spec_helper.rb CHANGED
@@ -1,4 +1,11 @@
1
1
  require 'rubygems'
2
+
3
+ if ENV["ACTIVE_RECORD_VERSION"]
4
+ gem 'activerecord', ENV["ACTIVE_RECORD_VERSION"]
5
+ else
6
+ gem 'activerecord'
7
+ end
8
+
2
9
  require File.expand_path('../../lib/acts_as_trashable', __FILE__)
3
10
  require 'sqlite3'
4
11
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_as_trashable
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
5
- prerelease: false
4
+ hash: 27
5
+ prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
- - 4
10
- version: 1.0.4
9
+ - 6
10
+ version: 1.0.6
11
11
  platform: ruby
12
12
  authors:
13
13
  - Brian Durand
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-10-08 00:00:00 -05:00
18
+ date: 2011-02-08 00:00:00 -06:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -55,12 +55,12 @@ dependencies:
55
55
  requirements:
56
56
  - - ">="
57
57
  - !ruby/object:Gem::Version
58
- hash: 27
58
+ hash: 15
59
59
  segments:
60
- - 1
61
- - 3
60
+ - 2
61
+ - 0
62
62
  - 0
63
- version: 1.3.0
63
+ version: 2.0.0
64
64
  type: :development
65
65
  version_requirements: *id003
66
66
  - !ruby/object:Gem::Dependency
@@ -86,7 +86,6 @@ extensions: []
86
86
  extra_rdoc_files:
87
87
  - README.rdoc
88
88
  files:
89
- - .gitignore
90
89
  - MIT-LICENSE
91
90
  - README.rdoc
92
91
  - Rakefile
@@ -130,7 +129,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
130
129
  requirements: []
131
130
 
132
131
  rubyforge_project:
133
- rubygems_version: 1.3.7
132
+ rubygems_version: 1.4.1
134
133
  signing_key:
135
134
  specification_version: 3
136
135
  summary: ActiveRecord extension that serializes destroyed records into a trash table from which they can be restored.
data/.gitignore DELETED
@@ -1 +0,0 @@
1
- pkg