Sha256: 96403684bca7f265c8d3c57f28a323b50257f39986f850087365cd8762ab38c5

Contents?: true

Size: 790 Bytes

Versions: 3

Compression:

Stored size: 790 Bytes

Contents

# encoding: utf-8

module FFaker
  module Time
    extend ModuleUtils
    extend self

    MONTHS = %w(January February March April May June July August September October November December)

    def month
      MONTHS.sample
    end

    def date(params={})
      years_back = params[:year_range] || 5
      latest_year  = params [:year_latest] || 0
      year = (rand * (years_back)).ceil + (::Time.now.year - latest_year - years_back)
      month = (rand * 12).ceil
      day = (rand * 31).ceil
      series = [date = ::Time.local(year, month, day)]
      if params[:series]
        params[:series].each do |some_time_after|
          series << series.last + (rand * some_time_after).ceil
        end
        return series
      end
      date.strftime "%Y-%m-%d %T %z"
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
ffaker-2.2.0 lib/ffaker/time.rb
ffaker-2.1.0 lib/ffaker/time.rb
ffaker-2.0.0 lib/ffaker/time.rb