def valid?(string, word_list: [])
      string = prepare_string(string.to_s.dup)
      slug   = slugify(strip_common_words(string, word_list))

      meets_requirements?(slug)
    end
def valid?(string, word_list: [])
      string = prepare_string(string.to_s.dup)
      slug   = slugify(strip_common_words(string, word_list))

      meets_requirements?(slug)
    end
Is the given `string` deemed a good password?
 An additional `word_list` can be provided; its entries add only
 minimally when considering the strength of `string`.

   NdrSupport::Password.valid?('google password')    #=> false
   NdrSupport::Password.valid?(SecureRandom.hex(12)) #=> true