aboutsummaryrefslogtreecommitdiffstats
path: root/activestorage/test/models/presence_validation_test.rb
blob: 13ba3c900d018dc103b8dca0d741e78dda8866b6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# frozen_string_literal: true

require "test_helper"
require "database/setup"

class ActiveStorage::PresenceValidationTest < ActiveSupport::TestCase
  class Admin < User; end

  teardown do
    Admin.clear_validators!
  end

  test "validates_presence_of has_one_attached" do
    Admin.validates_presence_of :avatar
    a = Admin.new(name: "DHH")
    assert_predicate a, :invalid?

    a.avatar.attach create_blob(filename: "funky.jpg")
    assert_predicate a, :valid?
  end

  test "validates_presence_of has_many_attached" do
    Admin.validates_presence_of :highlights
    a = Admin.new(name: "DHH")
    assert_predicate a, :invalid?

    a.highlights.attach create_blob(filename: "funky.jpg")
    assert_predicate a, :valid?
  end
end