rspec-paper_trail 0.0.6 → 0.0.7

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/.rspec ADDED
@@ -0,0 +1 @@
1
+ --colour
@@ -24,14 +24,7 @@ module PaperTrail
24
24
 
25
25
  def generate_configuration_files
26
26
  copy_file 'features/versioning.rb', 'config/features/versioning.rb'
27
- end
28
-
29
- desc 'Augments spec/spec_helper.rb adding paperclip and rspec-extensions'
30
-
31
- def augment_spec_helper
32
- [ 'config.include Rspec::PaperTrailExtensions' ].each do |line|
33
- insert_into_file 'spec/spec_helper.rb', " #{line}\n", after: "RSpec.configure do |config|\n"
34
- end
27
+ copy_file 'spec/support/rspec-paper_trail.rb', 'spec/support/rspec-paper_trail.rb'
35
28
  end
36
29
  private
37
30
  def use_string_ids?
@@ -1,24 +1,5 @@
1
- require 'rspec'
2
- require 'rspec/expectations'
3
-
4
- module Rspec::PaperTrailExtensions
5
- # :call-seq:
6
- # with_versioning
7
- #
8
- # enable versioning for specific blocks
9
-
10
- def with_versioning
11
- was_enabled = PaperTrail.enabled?
12
- PaperTrail.enabled = true
13
- begin
14
- yield
15
- ensure
16
- PaperTrail.enabled = was_enabled
17
- end
18
- end
19
- end
20
-
21
1
  RSpec.configure do |config|
2
+ config.include Paperclip::Shoulda::Matchers
22
3
  config.include Rspec::PaperTrailExtensions
23
4
 
24
5
  config.before(:each) do
@@ -37,4 +18,3 @@ RSpec::Matchers.define :be_versioned do
37
18
  actual.respond_to?(:versions)
38
19
  end
39
20
  end
40
-
@@ -0,0 +1,21 @@
1
+ require 'rspec'
2
+ require 'rspec/expectations'
3
+
4
+ module Rspec
5
+ module PaperTrailExtensions
6
+ # :call-seq:
7
+ # with_versioning
8
+ #
9
+ # enable versioning for specific blocks
10
+
11
+ def with_versioning
12
+ was_enabled = ::PaperTrail.enabled?
13
+ ::PaperTrail.enabled = true
14
+ begin
15
+ yield
16
+ ensure
17
+ ::PaperTrail.enabled = was_enabled
18
+ end
19
+ end
20
+ end
21
+ end
@@ -1,5 +1,5 @@
1
1
  module Rspec
2
2
  module PaperTrail
3
- VERSION = '0.0.6'
3
+ VERSION = '0.0.7'
4
4
  end
5
5
  end
@@ -1,3 +1,3 @@
1
1
  require 'rspec/paper_trail/version'
2
- require 'rspec/versioning_extensions'
2
+ require 'rspec/paper_trail/extensions'
3
3
 
data/spec/spec.opts ADDED
@@ -0,0 +1,5 @@
1
+ +--colour
2
+ +--format progress
3
+ +--loadby mtime
4
+ +--reverse
5
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-paper_trail
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-03-18 00:00:00.000000000Z
12
+ date: 2013-03-26 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: paper_trail
16
- requirement: &2266634340 !ruby/object:Gem::Requirement
16
+ requirement: &2231106500 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 2.7.1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2266634340
24
+ version_requirements: *2231106500
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rspec
27
- requirement: &2266633860 !ruby/object:Gem::Requirement
27
+ requirement: &2231106020 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 2.13.0
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2266633860
35
+ version_requirements: *2231106020
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &2266633380 !ruby/object:Gem::Requirement
38
+ requirement: &2231105540 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.3.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2266633380
46
+ version_requirements: *2231105540
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &2266633000 !ruby/object:Gem::Requirement
49
+ requirement: &2231103360 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *2266633000
57
+ version_requirements: *2231103360
58
58
  description: use paper_trail within rspec, conveniently
59
59
  email:
60
60
  - paul.belt@gmail.com
@@ -63,23 +63,22 @@ extensions: []
63
63
  extra_rdoc_files: []
64
64
  files:
65
65
  - .gitignore
66
+ - .rspec
66
67
  - .rvmrc
67
68
  - Gemfile
68
69
  - LICENSE.txt
69
70
  - README.md
70
71
  - Rakefile
71
- - lib/generators/rspec-paper_trail/install_generator.rb
72
- - lib/generators/rspec-paper_trail/templates/features/versioning.rb
73
- - lib/generators/rspec-paper_trail/templates/migrations/create_versions.rb
74
- - lib/generators/rspec-paper_trail/templates/migrations/stringify_versions_item_id.rb
75
72
  - lib/generators/rspec/paper_trail/install_generator.rb
76
73
  - lib/generators/rspec/paper_trail/templates/features/versioning.rb
77
74
  - lib/generators/rspec/paper_trail/templates/migrations/create_versions.rb
78
75
  - lib/generators/rspec/paper_trail/templates/migrations/stringify_versions_item_id.rb
76
+ - lib/generators/rspec/paper_trail/templates/spec/support/rspec-paper_trail.rb
79
77
  - lib/rspec/paper_trail.rb
78
+ - lib/rspec/paper_trail/extensions.rb
80
79
  - lib/rspec/paper_trail/version.rb
81
- - lib/rspec/versioning_extensions.rb
82
80
  - rspec-paper_trail.gemspec
81
+ - spec/spec.opts
83
82
  homepage: https://github.com/belt/rspec-paper_trail
84
83
  licenses:
85
84
  - MIT
@@ -105,4 +104,5 @@ rubygems_version: 1.8.10
105
104
  signing_key:
106
105
  specification_version: 3
107
106
  summary: provides rspec-matcher to ensure versioning and per-spec, per-block versioning
108
- test_files: []
107
+ test_files:
108
+ - spec/spec.opts
@@ -1,58 +0,0 @@
1
- require 'rails/generators/active_record/migration'
2
-
3
- module Rspec::PaperTrail
4
- class InstallGenerator < Rails::Generators::Base
5
- include Rails::Generators::Migration
6
- extend ActiveRecord::Generators::Migration
7
-
8
- source_root File.expand_path('../templates', __FILE__)
9
- class_option :with_string_ids, type: :boolean, default: true, desc: 'versions.type_id as string (vs integer)'
10
-
11
- # paperclip-3.3.x seems to require this
12
- # paperclip-3.4.x seems to have broken this
13
- class_option :with_revision_in_filename, type: :boolean, default: false, desc: 'filename on system to include version-number'
14
-
15
- class_option :'skip-migrations', type: :boolean, default: false, desc: 'do not generate migrations'
16
- class_option :force, type: :boolean, default: false, desc: 'force generation migrations'
17
-
18
- desc 'Generates (but does not run) a migration to add attachments and versions tables.'
19
-
20
- def generate_migration_file
21
- return if options.send(:'skip-migrations')
22
- migration_template 'migrations/create_versions.rb', 'db/migrate/create_versions.rb'
23
- migration_template 'migrations/stringify_versions_item_id.rb', 'db/migrate/stringify_versions_item_id.rb' if use_string_ids? && (!migrated? || has_integer_column?)
24
- end
25
-
26
- desc 'Generates initialization files.'
27
-
28
- def generate_configuration_files
29
- copy_file 'features/versioning.rb', 'config/features/versioning.rb'
30
- end
31
-
32
- desc 'Augments spec/spec_helper.rb adding paperclip and rspec-extensions'
33
-
34
- def augment_spec_helper
35
- [ 'config.include RspecPapertrailExtensions' ].each do |line|
36
- insert_into_file 'spec/spec_helper.rb', " #{line}\n", after: "RSpec.configure do |config|\n"
37
- end
38
- ["require \'paperclip/matchers\'"].each do |line|
39
- insert_into_file 'spec/spec_helper.rb', "#{line}\n", before: "RSpec.configure do |config|\n"
40
- end
41
- end
42
- private
43
- def use_versioned_filename?
44
- options.with_revision_in_filename?
45
- end
46
- def use_string_ids?
47
- options.with_string_ids?
48
- end
49
- def migrated?
50
- return true if ActiveRecord::Base.connection.table_exists? 'versions'
51
- end
52
- def has_integer_column?
53
- return false unless migrated?
54
- Version.columns.select{|obj| obj.name == 'item_id'}.first.try(:type) == :integer
55
- end
56
- end
57
-
58
- end
@@ -1,6 +0,0 @@
1
- Configuration.for('versioning') do
2
- enabled true
3
- path ":rails_root/public/system/:rails_env/:style/:attachable_klass/:id_partition/:basename.:stream_version.:extension"
4
- url ['development', 'test'].include?(Rails.env) ? "/attachments/:id/download" : "/system/:rails_env/:style/:attachable_klass/:id_partition/:basename.:stream_version.:extension"
5
- end
6
-
@@ -1,14 +0,0 @@
1
- class CreateVersions < ActiveRecord::Migration
2
- def change
3
- create_table :versions, force: true do |t|
4
- t.string :item_type, null: false
5
- <% if use_string_ids? && (migrated? && !has_integer_column?) %>t.string :item_id, null: false # item_type.id generally should be GUID<% else %>t.integer :item_id, null: false, limit: 8<% end %>
6
- t.string :event, null: false
7
- t.string :whodunnit
8
- t.text :object
9
- t.datetime :created_at
10
- end
11
- add_index :versions, [:item_type, :item_id]
12
- end
13
- end
14
-
@@ -1,8 +0,0 @@
1
- class StringifyVersionsItemId < ActiveRecord::Migration
2
- def up
3
- change_column :versions, :item_id, :string, null: false
4
- end
5
- def down
6
- change_column :versions, :item_id, :integer, limit: 8, null: false
7
- end
8
- end