Sha256: 443637a0b655947acee3a17c837ef0166bf72d4be9f848c32bcc305b331e2b9a

Contents?: true

Size: 1.65 KB

Versions: 17

Compression:

Stored size: 1.65 KB

Contents

require 'test/helper'

class ValidateAttachmentSizeMatcherTest < Test::Unit::TestCase
  context "validate_attachment_size" do
    setup do
      reset_table("dummies") do |d|
        d.string :avatar_file_name
        d.integer :avatar_file_size
      end
      @dummy_class = reset_class "Dummy"
      @dummy_class.has_attached_file :avatar
    end

    context "of limited size" do
      setup{ @matcher = self.class.validate_attachment_size(:avatar).in(256..1024) }

      should "reject a class with no validation" do
        assert_rejects @matcher, @dummy_class
      end

      should "reject a class with a validation that's too high" do
        @dummy_class.validates_attachment_size :avatar, :in => 256..2048
        assert_rejects @matcher, @dummy_class
      end

      should "reject a class with a validation that's too low" do
        @dummy_class.validates_attachment_size :avatar, :in => 0..1024
        assert_rejects @matcher, @dummy_class
      end

      should "accept a class with a validation that matches" do
        @dummy_class.validates_attachment_size :avatar, :in => 256..1024
        assert_accepts @matcher, @dummy_class
      end
    end

    context "validates_attachment_size with infinite range" do
      setup{ @matcher = self.class.validate_attachment_size(:avatar) }

      should "accept a class with an upper limit" do
        @dummy_class.validates_attachment_size :avatar, :less_than => 1
        assert_accepts @matcher, @dummy_class
      end

      should "accept a class with no upper limit" do
        @dummy_class.validates_attachment_size :avatar, :greater_than => 1
        assert_accepts @matcher, @dummy_class
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 7 rubygems

Version Path
paperclip-cloudfiles-2.3.1.1.6 test/matchers/validate_attachment_size_matcher_test.rb
paperclip-cloudfiles-2.3.1.1.5 test/matchers/validate_attachment_size_matcher_test.rb
mwd-paperclip-2.3.1.1b test/matchers/validate_attachment_size_matcher_test.rb
mwd-paperclip-2.3.1.1.mwd.b test/matchers/validate_attachment_size_matcher_test.rb
mwd-paperclip-2.3.1.1 test/matchers/validate_attachment_size_matcher_test.rb
alg-paperclip-2.3.1.2 test/matchers/validate_attachment_size_matcher_test.rb
bteitelb-paperclip-2.3.1.13 test/matchers/validate_attachment_size_matcher_test.rb
bteitelb-paperclip-2.3.1.12 test/matchers/validate_attachment_size_matcher_test.rb
alg-paperclip-2.3.1.1 test/matchers/validate_attachment_size_matcher_test.rb
paperclip-cloudfiles-2.3.1.1.4 test/matchers/validate_attachment_size_matcher_test.rb
paperclip-cloudfiles-2.3.1.1.3 test/matchers/validate_attachment_size_matcher_test.rb
paperclip-cloudfiles-2.3.1.1.2 test/matchers/validate_attachment_size_matcher_test.rb
paperclip-cloudfiles-2.3.1.1.1 test/matchers/validate_attachment_size_matcher_test.rb
tristandunn-paperclip-2.3.1.1 test/matchers/validate_attachment_size_matcher_test.rb
monde-paperclip-2.3.1.1 test/matchers/validate_attachment_size_matcher_test.rb
novelys-paperclip-2.3.1.1 test/matchers/validate_attachment_size_matcher_test.rb
paperclip-cloudfiles-2.3.1.1.0 test/matchers/validate_attachment_size_matcher_test.rb