Class: StillActive::Suppressions::Entry

Inherits:
Struct
  • Object
show all
Defined in:
lib/still_active/suppressions.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#advisoryObject

Returns the value of attribute advisory

Returns:

  • (Object)

    the current value of advisory



21
22
23
# File 'lib/still_active/suppressions.rb', line 21

def advisory
  @advisory
end

#expiresObject

Returns the value of attribute expires

Returns:

  • (Object)

    the current value of expires



21
22
23
# File 'lib/still_active/suppressions.rb', line 21

def expires
  @expires
end

#gemObject

Returns the value of attribute gem

Returns:

  • (Object)

    the current value of gem



21
22
23
# File 'lib/still_active/suppressions.rb', line 21

def gem
  @gem
end

#reasonObject

Returns the value of attribute reason

Returns:

  • (Object)

    the current value of reason



21
22
23
# File 'lib/still_active/suppressions.rb', line 21

def reason
  @reason
end

#signalObject

Returns the value of attribute signal

Returns:

  • (Object)

    the current value of signal



21
22
23
# File 'lib/still_active/suppressions.rb', line 21

def signal
  @signal
end

Instance Method Details

#covers?(signal:, advisory:, aliases:) ⇒ Boolean

Returns:

  • (Boolean)


30
31
32
33
34
35
36
37
38
# File 'lib/still_active/suppressions.rb', line 30

def covers?(signal:, advisory:, aliases:)
  return true if whole_gem?

  if self.signal == :vulnerability
    [advisory, *aliases].compact.include?(self.advisory)
  else
    self.signal == signal
  end
end

#expired?(today) ⇒ Boolean

Returns:

  • (Boolean)


26
27
28
# File 'lib/still_active/suppressions.rb', line 26

def expired?(today)
  !expires.nil? && expires < today
end

#whole_gem?Boolean

Returns:

  • (Boolean)


22
23
24
# File 'lib/still_active/suppressions.rb', line 22

def whole_gem?
  signal.nil? && advisory.nil?
end