class DataVerifier::BaselineBuilder

Public Class Methods

new() click to toggle source
# File lib/data_verifier/baseline_builder.rb, line 6
def initialize
  @configs = []
end

Public Instance Methods

build() click to toggle source
# File lib/data_verifier/baseline_builder.rb, line 15
def build
  @configs.each do |config|
    db = create_db_connection(config)

    config.queries.each do |tag, query|
      puts "Executing => #{query}\n"
      data = db.fetch(query)

      File.open(data_file_name(config, tag), 'w') do |file|
        file.write JSON.dump(data.all)
      end
    end
  end
end
with(config) click to toggle source
# File lib/data_verifier/baseline_builder.rb, line 10
def with(config)
  @configs << config
  self
end

Private Instance Methods

create_db_connection(config) click to toggle source
# File lib/data_verifier/baseline_builder.rb, line 36
def create_db_connection(config)
  Sequel.connect(adapter: config.db_adapter,
                 user: config.db_user,
                 password: config.db_password,
                 host: config.db_host,
                 port: config.db_port,
                 database: config.db_name,
                 max_connections: config.db_max_connections)
end
data_file_name(config, tag) click to toggle source
# File lib/data_verifier/baseline_builder.rb, line 31
def data_file_name(config, tag)
  identifier = config.data_identifier.nil? ? '' : "#{config.data_identifier}_"
  "#{identifier}#{tag}.json"
end