database_cleaner 0.6.6 → 0.6.7.RC
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/History.txt
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
== 0.6.x (in git)
|
2
2
|
|
3
|
+
=== Bugfixes
|
4
|
+
* Explicity require ERB. (Vít Ondruch)
|
5
|
+
* Cache DB connections, fixes referential integrity bug when using multiple DBs. (John Ferlito)
|
6
|
+
|
7
|
+
== 0.6.6 2011-03-16
|
8
|
+
|
3
9
|
=== Bugfixes
|
4
10
|
* Don't modify the array passed in with the :except key. (Eric Wollesen)
|
5
11
|
* Fixes version checking for postgresql. (Greg Barnett)
|
@@ -45,7 +51,7 @@
|
|
45
51
|
== 0.6.0 2010-10-25 - The Multi-ORM/Connection Release
|
46
52
|
|
47
53
|
This release has the often asked for functionality of being able to clean
|
48
|
-
multiple databases within the same project. This involves being able to
|
54
|
+
multiple databases within the same project. This involves being able to
|
49
55
|
clean databases managed by the same ORM (i.e. different connections) and
|
50
56
|
also being able to clean databases managed by distinct ORMs. So, for
|
51
57
|
example you can now use DatabaseCleaner on a project that has ActiveRecord
|
@@ -53,10 +53,8 @@ module DatabaseCleaner::ActiveRecord
|
|
53
53
|
class Deletion < Truncation
|
54
54
|
|
55
55
|
def clean
|
56
|
-
connection
|
57
|
-
|
58
|
-
connection.delete_table table_name
|
59
|
-
end
|
56
|
+
each_table do |connection, table_name|
|
57
|
+
connection.delete_table table_name
|
60
58
|
end
|
61
59
|
end
|
62
60
|
|
@@ -103,24 +103,26 @@ module DatabaseCleaner::ActiveRecord
|
|
103
103
|
include ::DatabaseCleaner::Generic::Truncation
|
104
104
|
|
105
105
|
def clean
|
106
|
+
each_table do |connection, table_name|
|
107
|
+
connection.truncate_table table_name
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
def each_table
|
112
|
+
connection = connection_klass.connection
|
106
113
|
connection.disable_referential_integrity do
|
107
|
-
tables_to_truncate.each do |table_name|
|
108
|
-
connection
|
114
|
+
tables_to_truncate(connection).each do |table_name|
|
115
|
+
yield connection, table_name
|
109
116
|
end
|
110
117
|
end
|
111
118
|
end
|
112
119
|
|
113
120
|
private
|
114
121
|
|
115
|
-
def tables_to_truncate
|
122
|
+
def tables_to_truncate(connection)
|
116
123
|
(@only || connection.tables) - @tables_to_exclude - connection.views
|
117
124
|
end
|
118
125
|
|
119
|
-
def connection
|
120
|
-
#::ActiveRecord::Base.connection
|
121
|
-
connection_klass.connection
|
122
|
-
end
|
123
|
-
|
124
126
|
# overwritten
|
125
127
|
def migration_storage_name
|
126
128
|
'schema_migrations'
|
metadata
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: database_cleaner
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 5547382
|
5
|
+
prerelease: true
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 6
|
9
|
-
-
|
10
|
-
|
9
|
+
- 7
|
10
|
+
- RC
|
11
|
+
version: 0.6.7.RC
|
11
12
|
platform: ruby
|
12
13
|
authors:
|
13
14
|
- Ben Mabey
|
@@ -15,7 +16,7 @@ autorequire:
|
|
15
16
|
bindir: bin
|
16
17
|
cert_chain: []
|
17
18
|
|
18
|
-
date: 2011-03-
|
19
|
+
date: 2011-03-24 00:00:00 -06:00
|
19
20
|
default_executable:
|
20
21
|
dependencies: []
|
21
22
|
|