# require 'rackamole' # # class Fixtures # # def self.test_time_id() @test_time ||= 20100101; end # # def self.load_data # puts "Loading fixture data..." # Wackamole::Control.init_config( File.join(File.dirname(__FILE__), %w[.. config test.yml]), 'test' ) # load_test_dbs # load_bogus_dbs # end # # def self.load_test_dbs # con = Wackamole::Control.connection( 'test' ) # %w[development test production].each{ |env| create_valid_mole_db( con, "fred", env) } # end # # def self.load_bogus_dbs # con = Wackamole::Control.connection( 'test' ) # %w[mole_blee_mdb zorg_blee_dev_mdb].each do |db_name| # create_db( con, db_name ) # end # # create mole db with wrong cltns # # BOZO !! An empty db does not show up? # db = create_db( con, "mole_zorg_wrong_mdb" ) # %w[features1 logs1 users1].each { |cltn| db.drop_collection( cltn );db.create_collection( cltn ) } # # missing cltn # db = create_db( con, "mole_zorg_missing_mdb" ) # %w[features logs].each { |cltn| db.drop_collection( cltn );db.create_collection( cltn ) } # end # # def self.create_db( con, db_name ) # # if con.database_names.include?( db_name ) # # con.drop_database( db_name ) # # end # con.db( db_name, :strict => true ) # end # # def self.create_valid_mole_db( con, app_name, env ) # db_name = "mole_#{app_name}_#{env}_mdb" # db = create_db( con, db_name ) # %w[users features logs].each do |cltn_name| # db.drop_collection( cltn_name ) # cltn = db.create_collection( cltn_name ) # :capped => false, :size => 1_000_000, :limit => 100 ) # case cltn_name # when 'users' : populate_users( cltn, app_name, env ) # when 'features' : populate_features( cltn, app_name, env ) # when 'logs' : populate_logs( cltn, app_name, env ) # end # end # end # # def self.populate_users( cltn, app_name, env ) # 10.times do |i| # cltn.insert( { :una => "blee_#{i}@#{app_name}.#{env}", :did => test_time_id.to_s } ) # end # end # # def self.populate_features( cltn, app_name, env ) # 10.times do |i| # cltn.insert( { :env => env, :app => app_name, :did => test_time_id.to_s, :ctx => "feature_#{i}" } ) # end # end # # def self.populate_logs( cltn, app_name, env ) # features = cltn.db['features'].find( {} ).to_a # users = cltn.db['users'].find( {} ).to_a # [Rackamole.feature, Rackamole.perf, Rackamole.fault].each do |type| # 5.times do |i| # cltn.insert({ # :typ => type, # :fid => features[i]['_id'], # :uid => users[i]['_id'], # :did => test_time_id.to_s, # :tid => "070000", # :ip => "127.0.0.#{i}" # }) # end # 2.times do |i| # cltn.insert({ # :typ => type, # :fid => features[5+i]['_id'], # :uid => users[5+i]['_id'], # :did => test_time_id.to_s, # :tid => "080000", # :ip => "127.0.0.#{i}" # }) # end # end # end # end