Sha256: 244a6c3ae9bd40f061ba0da93977c7c7f2d5c7d7900a9d3348e4ecf24b9be17a
Contents?: true
Size: 1.47 KB
Versions: 1
Compression:
Stored size: 1.47 KB
Contents
# frozen_string_literal: true module Fixturizer module Adapters module Mongoid def inject_data list = (@orders.is_a? Array)? @order : @generated.keys list.each do |name| records = @generated[name] records.each do |record| belong = record.dig(:belong,:to) by = record.dig(:belong,:by) pattern = record.dig(:belong,:search_by) if link.is_a? Symbol then model = Object.const_get(@models[belong][:class]).find_by(**pattern).send by model.create!(record[:data]) unless model.where(@models[belong][:unicity] => record[:data][@models[belong][:unicity]]).exists? else model = Object.const_get(@models[name][:class]) model.create!(record[:data]) unless model.where(@models[name][:unicity] => record[:data][@models[name][:unicity]]).exists? end end end end def drop_database ::Mongoid.purge! true rescue StandardError false end def check res = {} begin node = ::Mongoid.default_client.cluster.addresses.first.to_s dbname = ::Mongoid.default_client.database.name client = ::Mongo::Client.new("mongodb://#{node}/#{dbname}") client.database_names return true rescue ::Mongo::Auth::Unauthorized, Mongo::Error return false end res end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fixturizer-0.4.3 | lib/fixturizer/adapters/mongoid.rb |