Sha256: 60267352916e0591d61621eab4cb4cb6207d2668e34e4826cc2e91430cf13857
Contents?: true
Size: 1.04 KB
Versions: 5
Compression:
Stored size: 1.04 KB
Contents
# frozen_string_literal: true module ContactFakeColumns def self.extended(base) base.class_eval do establish_connection(adapter: "fake") connection.data_sources = [table_name] connection.primary_keys = { table_name => "id" } column :id, "integer" column :name, "string" column :age, "integer" column :avatar, "binary" column :created_at, "datetime" column :awesome, "boolean" column :preferences, "string" column :alternative_id, "integer" serialize :preferences belongs_to :alternative, class_name: "Contact" end end # mock out self.columns so no pesky db is needed for these tests def column(name, sql_type = nil, options = {}) connection.merge_column(table_name, name, sql_type, options) end end class Contact < ActiveRecord::Base extend ContactFakeColumns end class ContactSti < ActiveRecord::Base extend ContactFakeColumns column :type, "string" def type; "ContactSti" end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
ibm_db-5.5.0 | test/models/contact.rb |
ibm_db-5.4.1 | test/models/contact.rb |
ibm_db-5.4.0 | test/models/contact.rb |
ibm_db-5.3.2 | test/models/contact.rb |
ibm_db-5.3.1 | test/models/contact.rb |