Sha256: 0e26a770f360f0eaf6744d40ca7f5328911ccf9a789a551b943c975582d519cf
Contents?: true
Size: 589 Bytes
Versions: 4
Compression:
Stored size: 589 Bytes
Contents
# frozen_string_literal: true class MiniDefender::Rules::Regex < MiniDefender::Rule def initialize(pattern) raise ArgumentError, 'Expected a Regexp instance.' unless pattern.is_a?(Regexp) @pattern = pattern end def self.signature 'regex' end def self.make(args) raise ArgumentError, 'Expected a pattern as input.' unless args.length == 1 new(Regexp.compile(args[0])) end def passes?(attribute, value, validator) value.to_s.match?(@pattern) end def message(attribute, value, validator) "The value must match #{@pattern.to_s}." end end
Version data entries
4 entries across 4 versions & 1 rubygems