Class: ParallelSpecs::Grouper
- Inherits:
-
Object
- Object
- ParallelSpecs::Grouper
- Defined in:
- lib/parallel_specs/grouper.rb
Class Method Summary collapse
Class Method Details
.in_even_groups_by_size(items, num_groups, _options = {}) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/parallel_specs/grouper.rb', line 6 def in_even_groups_by_size(items, num_groups, = {}) groups = Array.new(num_groups) { { items: [], size: 0 } } items_to_group(items).each do |item, size| group = groups.min_by { |entry| entry[:size] } group[:items] << item group[:size] += (size || 1) end groups.map { |group| group[:items].sort } end |