Module: Remi::DataSource::DataStub

Included in:
CsvFile, DataFrame, Postgres, Salesforce
Defined in:
lib/remi/cucumber/data_source.rb

Instance Method Summary collapse

Instance Method Details

#empty_stub_dfObject



10
11
12
# File 'lib/remi/cucumber/data_source.rb', line 10

def empty_stub_df
  self.df = Daru::DataFrame.new([], order: @fields.keys)
end

#stub_dfObject



14
15
16
17
# File 'lib/remi/cucumber/data_source.rb', line 14

def stub_df
  empty_stub_df
  self.df.add_row(stub_row_array)
end

#stub_row_arrayObject



4
5
6
7
8
# File 'lib/remi/cucumber/data_source.rb', line 4

def stub_row_array
  @fields.values.map do |attrib|
    stub_values[attrib[:type]].call
  end
end

#stub_valuesObject



19
20
21
22
23
24
25
26
27
28
29
# File 'lib/remi/cucumber/data_source.rb', line 19

def stub_values
  @stub_values ||= Hash.new(->() { Faker::Hipster.word }).merge({
    string:   ->() { Faker::Hipster.word },
    number:   ->() { Faker::Number.decimal(4,4) },
    float:    ->() { Faker::Number.decimal(2,2) },
    integer:  ->() { Faker::Number.number(4) },
    date:     ->() { Faker::Date.backward(3650) },
    datetime: ->() { Faker::Time.backward(3650).to_datetime },
    boolean:  ->() { ['T','F'].shuffle.first }
  })
end