File: allow_file_size.rb

package info (click to toggle)
ruby-file-validators 3.0.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid
  • size: 388 kB
  • sloc: ruby: 1,601; makefile: 10
file content (15 lines) | stat: -rw-r--r-- 443 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# frozen_string_literal: true

RSpec::Matchers.define :allow_file_size do |size, validator, message|
  match do |model|
    value = double('file', size: size)
    allow_any_instance_of(model).to receive(:read_attribute_for_validation).and_return(value)
    dummy = model.new
    validator.validate(dummy)
    if message.present?
      dummy.errors.full_messages.exclude?(message[:message])
    else
      dummy.errors.empty?
    end
  end
end