Sha256: 9eeaf073a36bc9ddea47a8c0f99555ea71c74cea8be509b8d3bda34dc2b92b0d

Contents?: true

Size: 427 Bytes

Versions: 25

Compression:

Stored size: 427 Bytes

Contents

class Relevance::Tarantula::Attack
  HASHABLE_ATTRS = [:name, :input, :output, :description]
  attr_accessor *HASHABLE_ATTRS
  def initialize(hash)
    hash.each do |k,v|
      raise ArgumentError, k unless HASHABLE_ATTRS.member?(k)
      self.instance_variable_set("@#{k}", v)
    end
  end
  def ==(other)
    Relevance::Tarantula::Attack === other && HASHABLE_ATTRS.all? { |attr| send(attr) == other.send(attr)}
  end
end


Version data entries

25 entries across 25 versions & 3 rubygems

Version Path
relevance-tarantula-0.0.5 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.0.6 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.0.7.1 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.0.7 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.0.8.0 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.0.8.1 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.0 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.1 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.2 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.3 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.4 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.5 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.6 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.7 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.1.8 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.2.0 lib/relevance/tarantula/attack.rb
relevance-tarantula-0.2.1 lib/relevance/tarantula/attack.rb
romanbsd-tarantula-0.1.8 lib/relevance/tarantula/attack.rb
romanbsd-tarantula-0.2.0 lib/relevance/tarantula/attack.rb
tarantula-0.0.8.1 lib/relevance/tarantula/attack.rb