class Hiptest::NodeModifiers::ItemsOrderer

Public Class Methods

add(project, order) click to toggle source
# File lib/hiptest-publisher/node_modifiers/items_orderer.rb, line 6
def self.add(project, order)
  self.new(project).order_items(order)
end
new(project) click to toggle source
# File lib/hiptest-publisher/node_modifiers/items_orderer.rb, line 10
def initialize(project)
  @project = project
end

Public Instance Methods

order_items(order) click to toggle source
# File lib/hiptest-publisher/node_modifiers/items_orderer.rb, line 14
def order_items(order)
  if (order == 'order')
    @project.each_sub_nodes(Hiptest::Nodes::Folder) do |folder|
      folder.children[:scenarios].sort_by! {|sc| sc.order_in_parent}
      folder.children[:subfolders].sort_by! {|f| f.order_in_parent}
    end
  end

  if (order == 'alpha')
    @project.each_sub_nodes(Hiptest::Nodes::Folder) do |folder|
      folder.children[:scenarios].sort_by! {|sc| sc.children[:name] }
      folder.children[:subfolders].sort_by! {|f| f.children[:name] }
    end

    @project.children[:scenarios].children[:scenarios].sort_by! {|sc| sc.children[:name] }
  end
end