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



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

def advisory
  @advisory
end

#expiresObject

Returns the value of attribute expires

Returns:

  • (Object)

    the current value of expires



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

def expires
  @expires
end

#gemObject

Returns the value of attribute gem

Returns:

  • (Object)

    the current value of gem



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

def gem
  @gem
end

#reasonObject

Returns the value of attribute reason

Returns:

  • (Object)

    the current value of reason



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

def reason
  @reason
end

#signalObject

Returns the value of attribute signal

Returns:

  • (Object)

    the current value of signal



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

def signal
  @signal
end

Instance Method Details

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

Returns:

  • (Boolean)


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

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)


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

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

#whole_gem?Boolean

Returns:

  • (Boolean)


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

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