Class: GemVersionCheck::Dependency

Inherits:
Object
  • Object
show all
Defined in:
lib/gem_version_check/dependency.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, expected_version = nil) ⇒ Dependency

Returns a new instance of Dependency.



8
9
10
11
# File 'lib/gem_version_check/dependency.rb', line 8

def initialize(name, expected_version = nil)
  @name = name
  @expected_version = expected_version || latest_version
end

Instance Attribute Details

#expected_versionObject (readonly)

Returns the value of attribute expected_version.



6
7
8
# File 'lib/gem_version_check/dependency.rb', line 6

def expected_version
  @expected_version
end

#nameObject (readonly)

Returns the value of attribute name.



6
7
8
# File 'lib/gem_version_check/dependency.rb', line 6

def name
  @name
end

#versionObject (readonly)

Returns the value of attribute version.



6
7
8
# File 'lib/gem_version_check/dependency.rb', line 6

def version
  @version
end

Instance Method Details

#check(lock_file) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/gem_version_check/dependency.rb', line 13

def check(lock_file)
  @version = lock_file.version_for(@name)
  @used = !!@version
  return unless used?
  
  @result = @expected_version == @version
end

#latest_versionObject



29
30
31
32
33
34
# File 'lib/gem_version_check/dependency.rb', line 29

def latest_version
  @latest_version ||= begin
    spec = retrieve_spec
    spec ? spec.version.to_s : nil
  end
end

#used?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/gem_version_check/dependency.rb', line 25

def used?
  @used
end

#valid?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/gem_version_check/dependency.rb', line 21

def valid?
  !!@result
end