Module: Vvm::Validator
- Included in:
- Cli
- Defined in:
- lib/vvm/validator.rb
Constant Summary collapse
- METHOD_MAP =
{ install: %w[version? hg? new_version?], update: %w[hg?], reinstall: %w[hg? installed_version?], rebuild: %w[version? hg? installed_version?], use: %w[version? installed_version?], list: %w[hg?], uninstall: %w[version? installed_version?] }.freeze
Class Method Summary collapse
- .hg? ⇒ Boolean
- .installed_version?(ver = version) ⇒ Boolean
- .new_version?(ver = nil) ⇒ Boolean
- .validate_before_invoke(command) ⇒ Object
- .version? ⇒ Boolean
Class Method Details
.hg? ⇒ Boolean
22 23 24 25 |
# File 'lib/vvm/validator.rb', line 22 def hg? abort 'mercurial is required to install.' unless find_executable('hg') true end |
.installed_version?(ver = version) ⇒ Boolean
39 40 41 42 |
# File 'lib/vvm/validator.rb', line 39 def installed_version?(ver = version) abort "#{ver} is not installed." unless version_include?(ver) true end |
.new_version?(ver = nil) ⇒ Boolean
32 33 34 35 36 37 |
# File 'lib/vvm/validator.rb', line 32 def new_version?(ver = nil) Installer.pull ver = version if ver.nil? abort "#{ver} is already installed." if version_include?(ver) true end |
.validate_before_invoke(command) ⇒ Object
17 18 19 20 |
# File 'lib/vvm/validator.rb', line 17 def validate_before_invoke(command) return unless validations = METHOD_MAP[command.to_sym] validations.each { |m| send(m) } end |
.version? ⇒ Boolean
27 28 29 30 |
# File 'lib/vvm/validator.rb', line 27 def version? abort 'undefined vim version. please run [ vvm list ].' if find_version.nil? true end |