ardb 0.28.2 → 0.28.3

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
- SHA512:
3
- metadata.gz: f4a5484485c36474860b31db1f64cd6c2d50bfa9dbfc885b38ac248a79fe6022f34915085a842b3cbee868ac8bbe7de5bc03b80d84600185a7154be93675a0dd
4
- data.tar.gz: c52b82f4e6277afeac490fae8e3c80b4f71f8b0c73b8fa3170a7a42bf1d88894d4ad6b005961177976e6b68cc6533d965400cfe020fcf8378fea84755ad2d14f
5
2
  SHA1:
6
- metadata.gz: e44fd7cb818b602d49e0e5db5fd6a63ae9c23cfa
7
- data.tar.gz: 4e687f31400cf5c08a32e29b1153261a7b2c026a
3
+ data.tar.gz: 352c1dc50e3ac2567d5f74cc148ba572d4fa8f3d
4
+ metadata.gz: 0a5e57adec591aaa7273bade002b3f873caef819
5
+ SHA512:
6
+ data.tar.gz: c16e759ea474b84490ebb450825b44e11725960d847ff82cfec5e5840dd00b853a4278cc92f49989da04f6f04196b61aa428f4ba7f151f7562cd3d562ead9015
7
+ metadata.gz: f61b9a4df10d7d2b5b4520d8f601c1e3f9d3e1155a306d9b477cecf63d9021546bf9123adcdfddd9747f1348a905a388d564ef4babbde667c97fd732b355e213
@@ -15,14 +15,19 @@ module Ardb
15
15
  self.config.tap(&block)
16
16
  end
17
17
 
18
- def self.adapter; @adapter; end
18
+ def self.adapter
19
+ @adapter || raise(NotInitializedError.new(caller))
20
+ end
21
+
22
+ def self.reset_adapter; @adapter = nil; end
19
23
 
20
24
  def self.init(establish_connection = true)
21
25
  require 'ardb/require_autoloaded_active_record_files'
22
26
  begin
23
27
  require_db_file
24
28
  rescue InvalidDBFileError => exception
25
- raise exception.tap{ |e| e.set_backtrace(caller) }
29
+ exception.set_backtrace(caller)
30
+ raise exception
26
31
  end
27
32
 
28
33
  self.config.validate!
@@ -35,6 +40,9 @@ module Ardb
35
40
 
36
41
  def self.escape_like_pattern(pattern, escape_char = nil)
37
42
  self.adapter.escape_like_pattern(pattern, escape_char)
43
+ rescue NotInitializedError => exception
44
+ exception.set_backtrace(caller)
45
+ raise exception
38
46
  end
39
47
 
40
48
  private
@@ -122,10 +130,10 @@ module Ardb
122
130
  def ==(other)
123
131
  if other.kind_of?(self.class)
124
132
  self.activerecord_connect_hash == other.activerecord_connect_hash &&
125
- self.logger == other.logger &&
126
- self.root_path == other.root_path &&
127
- self.schema_format == other.schema_format &&
128
- self.migrations_path == other.migrations_path &&
133
+ self.logger == other.logger &&
134
+ self.root_path == other.root_path &&
135
+ self.schema_format == other.schema_format &&
136
+ self.migrations_path == other.migrations_path &&
129
137
  self.schema_path == other.schema_path
130
138
  else
131
139
  super
@@ -179,4 +187,11 @@ module Ardb
179
187
  ConfigurationError = Class.new(ArgumentError)
180
188
  InvalidAdapterError = Class.new(RuntimeError)
181
189
 
190
+ class NotInitializedError < RuntimeError
191
+ def initialize(backtrace)
192
+ super("ardb hasn't been initialized yet, run `Ardb.init`")
193
+ set_backtrace(backtrace)
194
+ end
195
+ end
196
+
182
197
  end
@@ -1,3 +1,3 @@
1
1
  module Ardb
2
- VERSION = "0.28.2"
2
+ VERSION = "0.28.3"
3
3
  end
@@ -31,6 +31,7 @@ class PostgresqlDbTests < Assert::Context
31
31
  Ardb.adapter.connect_db
32
32
  end
33
33
  teardown do
34
+ Ardb.reset_adapter
34
35
  ActiveRecord::Base.logger = @orig_ar_logger
35
36
  ENV['ARDB_DB_FILE'] = @orig_env_ardb_db_file
36
37
  end
@@ -14,10 +14,13 @@ module Ardb
14
14
  setup do
15
15
  @module = Ardb
16
16
  end
17
+ teardown do
18
+ @module.reset_adapter
19
+ end
17
20
  subject{ @module }
18
21
 
19
- should have_imeths :config, :configure, :adapter, :init
20
- should have_imeths :escape_like_pattern
22
+ should have_imeths :config, :configure, :adapter, :reset_adapter
23
+ should have_imeths :init, :escape_like_pattern
21
24
 
22
25
  should "default the db file env var" do
23
26
  assert_equal 'config/db', ENV['ARDB_DB_FILE']
@@ -122,6 +125,16 @@ module Ardb
122
125
  assert_equal 2, @ardb_adapter.connect_db_called_count
123
126
  end
124
127
 
128
+ should "raise a not initialized error using its adapter before init" do
129
+ subject.reset_adapter
130
+ assert_raises(NotInitializedError){ subject.adapter }
131
+ assert_raises(NotInitializedError){ subject.escape_like_pattern(Factory.string) }
132
+
133
+ subject.init
134
+ assert_nothing_raised{ subject.adapter }
135
+ assert_nothing_raised{ subject.escape_like_pattern(Factory.string) }
136
+ end
137
+
125
138
  end
126
139
 
127
140
  class InitTests < InitMethodSetupTests
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ardb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.28.2
4
+ version: 0.28.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kelly Redding
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2016-06-13 00:00:00 Z
13
+ date: 2016-08-18 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: assert