prefactory 0.4.0 → 0.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b705b09aea1ed091cbd6a46aabd4df33438cb214
4
- data.tar.gz: 7f82cb399ee76a7d2aea8ceed15dc6d57b849b7b
3
+ metadata.gz: c1abdafe59af749590d226bcdb0b63c04f365832
4
+ data.tar.gz: 8553ebbca23fce19f82b16a8d89928165fafdfd2
5
5
  SHA512:
6
- metadata.gz: c3e66b35c17a5cccda2760a423962ba89f04d9882aa6d7dbdebd006915ae1a706534bd5162ebaef35e04af29203024e86f11e726fc61dbf7b0c294e907049924
7
- data.tar.gz: 6324783baa9b74fe4870ff811f21866b091aa4f89ca4ddc6eefde4359a6ac0a17e023335a63ab01d7903c11cb814ccdea80838c25daa6386fdb7a3bae08be434
6
+ metadata.gz: a224b382181a1d36f12adef59627e7f75f82ff11f1d530ce2fb201c6ffa9d759587a9a657b6e6ec2a6260f095870a5cd0296a0c35fad6e2f414a5286b881de2d
7
+ data.tar.gz: 8b14d70581d33d8993ea9e306573d77d2726e17fab359b8642b216a4743ee998d24cf3a79a79f998df85bdf6a7c70dcaff72532159661d3f9eac09b7cb6f40e2
data/.travis.yml CHANGED
@@ -8,3 +8,4 @@ env:
8
8
  - ACTIVE_RECORD_VERSION=4.0.0
9
9
  - ACTIVE_RECORD_VERSION=4.1.0 RSPEC_VERSION=2.99
10
10
  - ACTIVE_RECORD_VERSION=4.1.0
11
+ - ACTIVE_RECORD_VERSION=4.2.0.beta3
@@ -67,23 +67,47 @@ module ActiveRecord
67
67
  # If the savepoint was already released, we have an exception in an after-commit callback.
68
68
  # That means *this* transaction cannot and should not be rolled back, unlike the parent
69
69
  # transactions, which will roll back as the exception bubbles upwards.
70
- def perform_rollback
71
- unless @savepoint_already_released
72
- connection.rollback_to_savepoint
73
- rollback_records
70
+
71
+ if ActiveRecord.version.to_s.start_with?('4.2')
72
+ def rollback
73
+ unless @savepoint_already_released
74
+ connection.rollback_to_savepoint(savepoint_name)
75
+ super
76
+ rollback_records
77
+ end
74
78
  end
75
- end
76
79
 
77
- def perform_commit
78
- connection.release_savepoint
79
- if @fake_commit
80
- @savepoint_already_released = true
81
- commit_records
82
- else
83
- records.each { |r| parent.add_record(r) }
80
+ def commit
81
+ connection.release_savepoint(savepoint_name)
82
+ super
83
+ if @fake_commit
84
+ @savepoint_already_released = true
85
+ commit_records
86
+ else
87
+ parent = connection.transaction_manager.current_transaction
88
+ records.each { |r| parent.add_record(r) }
89
+ end
84
90
  end
85
- end
86
91
 
92
+ else
93
+
94
+ def perform_rollback
95
+ unless @savepoint_already_released
96
+ connection.rollback_to_savepoint
97
+ rollback_records
98
+ end
99
+ end
100
+
101
+ def perform_commit
102
+ connection.release_savepoint
103
+ if @fake_commit
104
+ @savepoint_already_released = true
105
+ commit_records
106
+ else
107
+ records.each { |r| parent.add_record(r) }
108
+ end
109
+ end
110
+ end
87
111
  end
88
112
  end
89
113
  end
@@ -21,5 +21,5 @@
21
21
  # SOFTWARE.
22
22
 
23
23
  module Prefactory
24
- VERSION = "0.4.0"
24
+ VERSION = "0.5.0"
25
25
  end
data/prefactory.gemspec CHANGED
@@ -36,6 +36,7 @@ Gem::Specification.new do |spec|
36
36
  spec.add_dependency 'rspec_around_all', '~> 0'
37
37
  spec.add_dependency('rspec', rspec_version) if rspec_version
38
38
  spec.add_dependency 'activerecord', active_record_version
39
+ spec.add_dependency 'railties', active_record_version
39
40
  spec.add_dependency 'factory_girl_rails', '~> 4'
40
41
 
41
42
  spec.add_development_dependency 'mysql2', '~> 0.3'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prefactory
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - developers@socialcast.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-22 00:00:00.000000000 Z
11
+ date: 2014-10-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec_around_all
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '4'
41
+ - !ruby/object:Gem::Dependency
42
+ name: railties
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '4'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '4'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: factory_girl_rails
43
57
  requirement: !ruby/object:Gem::Requirement