Sha256: 9a72d8afba6d355cd7406b732dcdb7ee0ad2888566f41ffa9c7fec43eb752558

Contents?: true

Size: 757 Bytes

Versions: 3

Compression:

Stored size: 757 Bytes

Contents

module Slappy
  module Listener
    module Validatable
      include Slappy::Debuggable

      attr_accessor :pattern

      def valid?(event)
        unless time_valid?(event)
          Debug.log 'Event happend in before start time'
          return false
        end

        target = event.send(target_element)
        unless target
          Debug.log 'Target is nil'
          return false
        end

        event.matches = target.match pattern
        unless event.matches
          Debug.log "Target is not match pattern(#{pattern})"
          return false
        end

        true
      end

      private

      def time_valid?(event)
        return true if event.ts.nil?
        event.ts > Slappy.client.start_time
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
slappy-0.6.3 lib/slappy/listeners/concerns/validatable.rb
slappy-0.6.2 lib/slappy/listeners/concerns/validatable.rb
slappy-0.6.1 lib/slappy/listeners/concerns/validatable.rb