module NameFileFinder
Project:
-
find_filenames_for
, verbose, verboseln
Public Class Methods
find_configfilename_from_directory(folder_path)
click to toggle source
Find project config filename from input folder path @param folder_path (String)
# File lib/teuton/project/name_file_finder.rb, line 52 def self.find_configfilename_from_directory(folder_path) # COMPLEX MODE: We use config.yaml by default app = Application.instance config_path = '' if app.options['cpath'].nil? config_name = 'config' # Config name file is introduced by cname arg option from teuton command config_name = app.options['cname'] unless app.options['cname'].nil? config_path = File.join(folder_path, "#{config_name}.json") unless File.exist? config_path config_path = File.join(folder_path, "#{config_name}.yaml") end else # Config path file is introduced by cpath arg option from teuton command config_path = app.options['cpath'] end app.config_path = config_path end
find_configfilenames_from_rb(script_path)
click to toggle source
# File lib/teuton/project/name_file_finder.rb, line 90 def self.find_configfilenames_from_rb(script_path) # SIMPLE MODE: We use script_path as main RB file # This must be fullpath to DSL script file app = Application.instance config_path = '' if app.options['cpath'].nil? config_name = File.basename(script_path, '.rb') # Config name file is introduced by cname arg option from teuton command config_name = app.options['cname'] unless app.options['cname'].nil? config_path = File.join(app.project_path, config_name + '.json') unless File.exist? config_path config_path = File.join(app.project_path, config_name + '.yaml') end else # Config path file is introduced by cpath arg option from teuton command config_path = app.options['cpath'] end app.config_path = config_path end
find_filenames_for(relprojectpath)
click to toggle source
Find project filenames from input project relative path @param relprojectpath (String)
# File lib/teuton/project/name_file_finder.rb, line 12 def self.find_filenames_for(relprojectpath) projectpath = File.absolute_path(relprojectpath) # Define: # script_path, must contain fullpath to DSL script file # config_path, must contain fullpath to YAML config file if File.directory?(projectpath) # COMPLEX MODE: We use start.rb as main RB file find_filenames_from_directory(projectpath) else # SIMPLE MODE: We use pathtofile as main RB file find_filenames_from_rb(projectpath) end true end
find_filenames_from_directory(folder_path)
click to toggle source
Find project filenames from input folder path @param folder_path (String)
# File lib/teuton/project/name_file_finder.rb, line 31 def self.find_filenames_from_directory(folder_path) # COMPLEX MODE: We use start.rb as main RB file script_path = File.join(folder_path, 'start.rb') unless File.exist? script_path print Rainbow('[ERROR] File ').red print Rainbow(script_path).bright.red puts Rainbow(' not found!').red exit 1 end app = Application.instance app.project_path = folder_path app.script_path = script_path app.test_name = folder_path.split(File::SEPARATOR)[-1] find_configfilename_from_directory(folder_path) end
find_filenames_from_rb(script_path)
click to toggle source
# File lib/teuton/project/name_file_finder.rb, line 72 def self.find_filenames_from_rb(script_path) # SIMPLE MODE: We use script_path as main RB file # This must be fullpath to DSL script file if File.extname(script_path) != '.rb' print Rainbow('[ERROR] Script ').red print Rainbow(script_path).bright.red puts Rainbow(' must have rb extension').red exit 1 end app = Application.instance app.project_path = File.dirname(script_path) app.script_path = script_path app.test_name = File.basename(script_path, '.rb') find_configfilenames_from_rb(script_path) end
puts_input_info_on_screen()
click to toggle source
# File lib/teuton/project/name_file_finder.rb, line 112 def self.puts_input_info_on_screen app = Application.instance verbose Rainbow('[INFO] ScriptPath => ').blue verboseln Rainbow(trim(app.script_path)).blue.bright verbose Rainbow('[INFO] ConfigPath => ').blue verboseln Rainbow(trim(app.config_path)).blue.bright verbose Rainbow('[INFO] Pwd => ').blue verboseln Rainbow(app.running_basedir).blue.bright verbose Rainbow('[INFO] TestName => ').blue verboseln Rainbow(trim(app.test_name)).blue.bright end
trim(input)
click to toggle source
Trim string text when is too long @param input (String) @return String
# File lib/teuton/project/name_file_finder.rb, line 129 def self.trim(input) return input unless input.to_s.start_with? Dir.pwd.to_s output = input.to_s offset = (Dir.pwd).length + 1 output = "#{input[offset, input.size]}" output.to_s end
verbose(text)
click to toggle source
# File lib/teuton/project/name_file_finder.rb, line 142 def self.verbose(text) return unless Application.instance.verbose return if Application.instance.options['quiet'] print text end
verboseln(text)
click to toggle source
# File lib/teuton/project/name_file_finder.rb, line 138 def self.verboseln(text) verbose(text + "\n") end