class PgDice::ValidationFactory

Factory for PgDice::Validations

Public Class Methods

new(configuration, opts = {}) click to toggle source
# File lib/pgdice/validation_factory.rb, line 6
def initialize(configuration, opts = {})
  @configuration = configuration
  @partition_lister_factory = opts[:partition_lister_factory] ||= PgDice::PartitionListerFactory.new(@configuration)
  @period_fetcher_factory = opts[:period_fetcher_factory] ||= PgDice::PeriodFetcherFactory.new(@configuration)
  @current_date_provider = opts[:current_date_provider] ||= proc { Time.now.utc.to_date }
end

Public Instance Methods

call() click to toggle source
# File lib/pgdice/validation_factory.rb, line 13
def call
  PgDice::Validation.new(logger: @configuration.logger,
                         partition_lister: @partition_lister_factory.call,
                         period_fetcher: @period_fetcher_factory.call,
                         approved_tables: @configuration.approved_tables,
                         current_date_provider: @current_date_provider)
end