Sha256: fc291a94cafd4256d3bd581203d3dc949f5b5a7ac71c2f1e2f255da31e8bdbaf
Contents?: true
Size: 1.45 KB
Versions: 1
Compression:
Stored size: 1.45 KB
Contents
RSpec.describe 'ROM::SQL::Schema::MysqlInferrer', :mysql do include_context 'database setup' before do conn.drop_table?(:test_inferrence) conn.create_table :test_inferrence do tinyint :tiny mediumint :medium datetime :created_at column :date_and_time, 'datetime(0)' column :time_with_ms, 'datetime(3)' timestamp :unix_time_usec column :unix_time_sec, 'timestamp(0) null' end end after do conn.drop_table?(:test_inferrence) end let(:dataset) { :test_inferrence } let(:schema) { container.relations[dataset].schema } before do dataset = self.dataset conf.relation(dataset) do schema(dataset, infer: true) end end it 'can infer attributes for dataset' do source = container.relations[:test_inferrence].name expect(schema.to_h).to eql( tiny: ROM::SQL::Types::Int.optional.meta(name: :tiny, source: source), medium: ROM::SQL::Types::Int.optional.meta(name: :medium, source: source), created_at: ROM::SQL::Types::Time.optional.meta(name: :created_at, source: source), date_and_time: ROM::SQL::Types::Time.optional.meta(name: :date_and_time, source: source), time_with_ms: ROM::SQL::Types::Time.optional.meta(name: :time_with_ms, source: source), unix_time_usec: ROM::SQL::Types::Time.meta(name: :unix_time_usec, source: source), unix_time_sec: ROM::SQL::Types::Time.optional.meta(name: :unix_time_sec, source: source) ) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rom-sql-1.0.1 | spec/integration/schema/inferrer/mysql_spec.rb |