Sha256: cb8be0326bc4e5f685c5670747aba57df0f0b466848f4386dea071dd720a59d7

Contents?: true

Size: 1.77 KB

Versions: 19

Compression:

Stored size: 1.77 KB

Contents

# encoding: UTF-8

require 'gooddata'

describe GoodData::Data::Guesser do
  pending('Guesser needs to be redone. Failing due to rubocop fixes.')
  it "order LDM types as follows: cp, fact, date, attribute" do
    expect = [:connection_point, :fact, :date, :attribute]
    result = GoodData::Data::Guesser::sort_types([:fact, :attribute, :connection_point, :date])
    result.should == expect

    expect = [:fact]
    result = GoodData::Data::Guesser::sort_types([:fact])
    result.should == expect

    expect = []
    result = GoodData::Data::Guesser::sort_types([])
    result.should == expect
  end

  it "guess facts, dates and connection points from a simple CSV" do
    pending('Guesser is disabled for now')

    csv = [
      ['cp', 'a1', 'a2', 'd1', 'd2', 'f'],
      ['1', 'one', 'huh', '2001-01-02', nil, '-1'],
      ['2', 'two', 'blah', nil, '1970-10-23', '2.3'],
      ['3', 'three', 'bleh', '0000-00-00', nil, '-3.14159'],
      ['4', 'one', 'huh', '2010-02-28 08:12:34', '1970-10-23', nil]
    ]

    fields = GoodData::Data::Guesser.new(csv).guess(csv.size + 10)

    expect = GoodData::Data::Guesser::sort_types([:connection_point, :fact, :attribute])
    result = fields['cp']
    result.should == expect

    expect = [:attribute]
    result = fields['a1']
    expect.should == result

    expect = [:attribute]
    result = fields['a2']
    result.should == expect

    expect = GoodData::Data::Guesser::sort_types([:attribute, :connection_point, :date])
    result = fields['d1']
    result.should == expect

    expect = GoodData::Data::Guesser::sort_types([:attribute, :date])
    result = fields['d2']
    result.should == expect

    expect = GoodData::Data::Guesser::sort_types([:attribute, :connection_point, :fact])
    result = fields['f']
    result.should == expect

  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
gooddata-0.6.20 spec/unit/data/guesser_spec.rb
gooddata-0.6.19 spec/unit/data/guesser_spec.rb
gooddata-0.6.18 spec/unit/data/guesser_spec.rb
gooddata-0.6.17 spec/unit/data/guesser_spec.rb
gooddata-0.6.16 spec/unit/data/guesser_spec.rb
gooddata-0.6.15 spec/unit/data/guesser_spec.rb
gooddata-0.6.14 spec/unit/data/guesser_spec.rb
gooddata-0.6.13 spec/unit/data/guesser_spec.rb
gooddata-0.6.12 spec/unit/data/guesser_spec.rb
gooddata-0.6.11 spec/unit/data/guesser_spec.rb
gooddata-0.6.10 spec/unit/data/guesser_spec.rb
gooddata-0.6.9 spec/unit/data/guesser_spec.rb
gooddata-0.6.8 spec/unit/data/guesser_spec.rb
gooddata-0.6.7 spec/unit/data/guesser_spec.rb
gooddata-0.6.6 spec/unit/data/guesser_spec.rb
gooddata-0.6.5 spec/unit/data/guesser_spec.rb
gooddata-0.6.4 spec/unit/data/guesser_spec.rb
gooddata-0.6.3 spec/unit/data/guesser_spec.rb
gooddata-0.6.2 spec/unit/data/guesser_spec.rb