class Simpli::ScriptFinder

Public Class Methods

new(relative_script_path) click to toggle source
# File lib/simpli/script_finder.rb, line 3
def initialize(relative_script_path)
  @relative_script_path = relative_script_path
end

Public Instance Methods

upsearch(dir_path) click to toggle source
# File lib/simpli/script_finder.rb, line 7
def upsearch(dir_path)
  return if dir_path == '/'
  path_to_simply_script(dir_path) || search_in_parent_directory(dir_path)
end

Private Instance Methods

path_to_simply_script(dir_path) click to toggle source
# File lib/simpli/script_finder.rb, line 14
def path_to_simply_script(dir_path)
  path = Dir.glob("#{dir_path}/#{@relative_script_path}").first
  path unless path && File.directory?(path)
end
search_in_parent_directory(dir_path) click to toggle source
# File lib/simpli/script_finder.rb, line 19
def search_in_parent_directory(dir_path)
  parent_directory = File.expand_path('..', dir_path)
  upsearch(parent_directory)
end