spec/support/ar_classes.rb in rspec-activemodel-mocks-1.0.2 vs spec/support/ar_classes.rb in rspec-activemodel-mocks-1.0.3
- old
+ new
@@ -14,17 +14,39 @@
)
eosql
end
end
+module ConnectionsView
+ def self.extended(host)
+ host.connection.execute <<-eosql
+ CREATE TABLE some_table (
+ associated_model_id integer,
+ mockable_model_id integer,
+ nonexistent_model_id integer
+ )
+ eosql
+
+ host.connection.execute <<-eosql
+ CREATE VIEW #{host.table_name} AS
+ select * from some_table;
+ eosql
+ end
+end
+
class NonActiveRecordModel
extend ActiveModel::Naming
include ActiveModel::Conversion
end
class MockableModel < ActiveRecord::Base
extend Connections
has_one :associated_model
+end
+
+# (e.g. model backed database views)
+class MockableModelNoPrimaryKey < ActiveRecord::Base
+ extend ConnectionsView
end
class SubMockableModel < MockableModel
end