class Hiptest::Nodes::TestPlan

Public Class Methods

new(folders = []) click to toggle source
Calls superclass method
# File lib/hiptest-publisher/nodes.rb, line 519
def initialize(folders = [])
  super()
  @uids_mapping = {}
  @children = {
    root_folder: nil,
    folders: folders
  }
end

Public Instance Methods

find_folder_by_uid(uid) click to toggle source
# File lib/hiptest-publisher/nodes.rb, line 545
def find_folder_by_uid(uid)
  return @uids_mapping[uid]
end
organize_folders() click to toggle source
# File lib/hiptest-publisher/nodes.rb, line 528
def organize_folders
  @children[:root_folder] = @children[:folders].find(&:root?)
  @children[:root_folder].parent = self if @children[:root_folder]

  @children[:folders].each do |folder|
    @uids_mapping[folder.uid] = folder
  end

  @children[:folders].each do |folder|
    next if folder.root?

    parent = find_folder_by_uid(folder.parent_uid) || @children[:root_folder]
    folder.parent = parent
    parent.children[:subfolders] << folder unless parent.children[:subfolders].include?(folder)
  end
end