Module: Ardb

Defined in:
lib/ardb/test_helpers.rb,
lib/ardb.rb,
lib/ardb/cli.rb,
lib/ardb/version.rb,
lib/ardb/db_tests.rb,
lib/ardb/cli/clirb.rb,
lib/ardb/migration.rb,
lib/ardb/record_spy.rb,
lib/ardb/adapter_spy.rb,
lib/ardb/adapter/base.rb,
lib/ardb/cli/commands.rb,
lib/ardb/relation_spy.rb,
lib/ardb/use_db_default.rb,
lib/ardb/default_order_by.rb

Overview

Use theses helpers in your test suite. They all generally assume Ardb has already been initialized by calling ‘Ardb.init`.

Defined Under Namespace

Modules: Adapter, DefaultOrderBy, RecordSpy, TestHelpers, UseDbDefault Classes: AdapterSpy, CLI, Config, DbTests, Migration, NotInitializedError, RelationSpy

Constant Summary collapse

VERSION =
"0.29.0"

Class Method Summary collapse

Class Method Details

.adapterObject



17
18
19
# File 'lib/ardb.rb', line 17

def self.adapter
  @adapter || raise(NotInitializedError.new(caller))
end

.configObject



9
10
11
# File 'lib/ardb.rb', line 9

def self.config
  @config ||= Config.new
end

.configure(&block) ⇒ Object



13
14
15
# File 'lib/ardb.rb', line 13

def self.configure(&block)
  self.config.tap(&block)
end

.escape_like_pattern(pattern, escape_char = nil) ⇒ Object



41
42
43
44
45
46
# File 'lib/ardb.rb', line 41

def self.escape_like_pattern(pattern, escape_char = nil)
  self.adapter.escape_like_pattern(pattern, escape_char)
rescue NotInitializedError => exception
  exception.set_backtrace(caller)
  raise exception
end

.init(establish_connection = true) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/ardb.rb', line 23

def self.init(establish_connection = true)
  require "ardb/require_autoloaded_active_record_files"
  begin
    require_db_file
  rescue InvalidDBFileError => exception
    exception.set_backtrace(caller)
    raise exception
  end

  self.config.validate!
  @adapter = Adapter.new(self.config)

  # setup AR
  ActiveRecord::Base.default_timezone = self.config.default_timezone
  ActiveRecord::Base.logger = self.config.logger
  self.adapter.connect_db if establish_connection
end

.reset_adapterObject



21
# File 'lib/ardb.rb', line 21

def self.reset_adapter; @adapter = nil; end