Module: Checky::Validators::Version

Defined in:
lib/checky/validators/version.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.version_stringObject



15
16
17
18
19
20
# File 'lib/checky/validators/version.rb', line 15

def version_string
  command_path = storage.binary
  command_output = Checky.run("#{command_path} --version 2>&1").presence ||
                   Checky.run("#{command_path} -v 2>&1").presence
  command_output[/[0-9]+(?:\.[0-9]+)+/]
end

Instance Method Details

#checkObject



9
10
11
12
13
# File 'lib/checky/validators/version.rb', line 9

def check
  version = Gem::Version.new(version_string)
  requirement = Gem::Requirement.new(storage.version)
  requirement.satisfied_by?(version)
end

#message(value) ⇒ Object



22
23
24
# File 'lib/checky/validators/version.rb', line 22

def message(value)
  "Checking #{File.basename(storage.binary)} version against #{value}"
end

#populate(requirement_string) ⇒ Object



5
6
7
# File 'lib/checky/validators/version.rb', line 5

def populate(requirement_string)
  requirement_string
end