Class: Unwrappr::GemChange

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/unwrappr/gem_change.rb

Overview

Represents a gem change in a Gemfile.lock diff.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, head_version:, base_version:, line_number:, lock_file_diff:) ⇒ GemChange

Returns a new instance of GemChange.



10
11
12
13
14
15
16
17
18
# File 'lib/unwrappr/gem_change.rb', line 10

def initialize(
  name:, head_version:, base_version:, line_number:, lock_file_diff:
)
  @name = name
  @head_version = head_version
  @base_version = base_version
  @line_number = line_number
  @lock_file_diff = lock_file_diff
end

Instance Attribute Details

#base_versionObject (readonly)

Returns the value of attribute base_version.



20
21
22
# File 'lib/unwrappr/gem_change.rb', line 20

def base_version
  @base_version
end

#head_versionObject (readonly)

Returns the value of attribute head_version.



20
21
22
# File 'lib/unwrappr/gem_change.rb', line 20

def head_version
  @head_version
end

#line_numberObject (readonly)

Returns the value of attribute line_number.



20
21
22
# File 'lib/unwrappr/gem_change.rb', line 20

def line_number
  @line_number
end

#nameObject (readonly)

Returns the value of attribute name.



20
21
22
# File 'lib/unwrappr/gem_change.rb', line 20

def name
  @name
end

Instance Method Details

#added?Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/unwrappr/gem_change.rb', line 24

def added?
  head_version && base_version.nil?
end

#downgrade?Boolean

Returns:

  • (Boolean)


56
57
58
# File 'lib/unwrappr/gem_change.rb', line 56

def downgrade?
  head_version && base_version && (head_version < base_version)
end

#hotfix?Boolean

Returns:

  • (Boolean)


47
48
49
50
# File 'lib/unwrappr/gem_change.rb', line 47

def hotfix?
  head_version && base_version &&
    head_version.hotfix_difference?(base_version)
end

#major?Boolean

Returns:

  • (Boolean)


32
33
34
35
# File 'lib/unwrappr/gem_change.rb', line 32

def major?
  head_version && base_version &&
    head_version.major_difference?(base_version)
end

#minor?Boolean

Returns:

  • (Boolean)


37
38
39
40
# File 'lib/unwrappr/gem_change.rb', line 37

def minor?
  head_version && base_version &&
    head_version.minor_difference?(base_version)
end

#patch?Boolean

Returns:

  • (Boolean)


42
43
44
45
# File 'lib/unwrappr/gem_change.rb', line 42

def patch?
  head_version && base_version &&
    head_version.patch_difference?(base_version)
end

#removed?Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/unwrappr/gem_change.rb', line 28

def removed?
  base_version && head_version.nil?
end

#upgrade?Boolean

Returns:

  • (Boolean)


52
53
54
# File 'lib/unwrappr/gem_change.rb', line 52

def upgrade?
  head_version && base_version && (head_version > base_version)
end