Sha256: 0a2117a663d3126481c405342eafd4c94ad7ff57a0405621d1cd0b4bd1cee867

Contents?: true

Size: 823 Bytes

Versions: 8

Compression:

Stored size: 823 Bytes

Contents

Sequel.migration do
  up do
    # Fix scenario run_count
    scenarios = self[:scenarios]
    ds = scenarios.join(:results, :scenario_id => :id)
    run_counts = ds.group_and_count(:scenario_id).all
    run_counts.each do |row|
      run_count = row[:count] > 1 ? 1 : 0
      scenarios.filter(:id => row[:scenario_id]).update(:run_count => run_count)
    end

    # Delete all but the last result, since the other ones were overwritten
    last_scenario_id = nil
    results = self[:results]
    results.order(:scenario_id, :id.desc).each do |result|
      if result[:scenario_id] != last_scenario_id
        last_scenario_id = result[:scenario_id]
        results.filter(:id => result[:id]).update(:run_number => 1)
      else
        results.filter(:id => result[:id]).delete
      end
    end
  end

  down do
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
coupler-0.0.9-java db/migrate/016_fix_scenario_run_count.rb
coupler-0.0.8-java db/migrate/016_fix_scenario_run_count.rb
coupler-0.0.7-java db/migrate/016_fix_scenario_run_count.rb
coupler-0.0.6-java db/migrate/016_fix_scenario_run_count.rb
coupler-0.0.4-java db/migrate/016_fix_scenario_run_count.rb
coupler-0.0.3-java db/migrate/016_fix_scenario_run_count.rb
coupler-0.0.2-java db/migrate/016_fix_scenario_run_count.rb
coupler-0.0.1-java db/migrate/016_fix_scenario_run_count.rb