adbc 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +2 -0
  3. data/lib/adbc.rb +29 -0
  4. data/lib/adbc/cleaner.rb +15 -0
  5. metadata +45 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: cc5e2d23e404315f64ddbddf97d932e0083bb4d3be0a9709665eaecf69c1ec2e
4
+ data.tar.gz: 6b95291517ed9e6124201bf342f27f44c270ef21d9b7a05619183053cd8b8831
5
+ SHA512:
6
+ metadata.gz: 8ef5f0f8bab7640c102af69fa2ec7b956b66bf75cc1f6d25e0c07460644704ac54a851b6dc1cb195d619368360c7c18bdd529e8ea550496fdaffbaf5b0295f6b
7
+ data.tar.gz: cdf002881659228e93b6bce55d83b0dcff57911b9b3288a1a1ca38cf8c50ebd40be803faf9a6977ee3a942cbae0b1b78342766ffe39e3153d78e07d313685726
@@ -0,0 +1,2 @@
1
+ * ActiveRecord only
2
+ * truncation strategy only
@@ -0,0 +1,29 @@
1
+ # Another Database Cleaner
2
+
3
+ require 'adbc/cleaner'
4
+
5
+ module Adbc
6
+
7
+ class << self
8
+
9
+ def cleaners
10
+ @cleaners ||= [Adbc::Cleaner.new(ActiveRecord::Base.connection)]
11
+ end
12
+
13
+ def create_cleaner(connection)
14
+ cleaners << Adbc::Cleaner.new(connection)
15
+ end
16
+
17
+ def clean
18
+ cleaners.each &:clean
19
+ end
20
+
21
+ def watching
22
+ yield
23
+ ensure
24
+ clean
25
+ end
26
+
27
+ end
28
+
29
+ end
@@ -0,0 +1,15 @@
1
+ module Adbc
2
+ class Cleaner
3
+ EXCLUDES_TABLES = %w[ar_internal_metadata schema_migrations]
4
+
5
+ def initialize(connection)
6
+ @connection = connection
7
+ end
8
+
9
+ def clean
10
+ (@connection.tables - EXCLUDES_TABLES).each do |table_name|
11
+ @connection.truncate(table_name)
12
+ end
13
+ end
14
+ end
15
+ end
metadata ADDED
@@ -0,0 +1,45 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: adbc
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - yuan
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2019-12-09 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Another Database Cleaner
14
+ email: qmyemail@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - README.md
20
+ - lib/adbc.rb
21
+ - lib/adbc/cleaner.rb
22
+ homepage: http://fa20.run
23
+ licenses:
24
+ - MIT
25
+ metadata: {}
26
+ post_install_message:
27
+ rdoc_options: []
28
+ require_paths:
29
+ - lib
30
+ required_ruby_version: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: '0'
35
+ required_rubygems_version: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ requirements: []
41
+ rubygems_version: 3.0.4
42
+ signing_key:
43
+ specification_version: 4
44
+ summary: ADBC
45
+ test_files: []