diff options
Diffstat (limited to 'test/models/asset_test.rb')
| -rw-r--r-- | test/models/asset_test.rb | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/test/models/asset_test.rb b/test/models/asset_test.rb index a1041e4..ab1cc5d 100644 --- a/test/models/asset_test.rb +++ b/test/models/asset_test.rb | |||
| @@ -19,5 +19,38 @@ class AssetTest < ActiveSupport::TestCase | |||
| 19 | assert_equal 0, draft.assets.length | 19 | assert_equal 0, draft.assets.length |
| 20 | assert_equal 0, RelatedAsset.count | 20 | assert_equal 0, RelatedAsset.count |
| 21 | end | 21 | end |
| 22 | 22 | ||
| 23 | test "image? is true for supported image content types" do | ||
| 24 | assert Asset.new(:upload_content_type => "image/png").image? | ||
| 25 | assert Asset.new(:upload_content_type => "image/jpeg").image? | ||
| 26 | end | ||
| 27 | |||
| 28 | test "image? is false for non-image content types" do | ||
| 29 | assert_not Asset.new(:upload_content_type => "application/pdf").image? | ||
| 30 | assert_not Asset.new(:upload_content_type => nil).image? | ||
| 31 | end | ||
| 32 | |||
| 33 | test "license_key must be a known dictionary key" do | ||
| 34 | asset = Asset.new(:license_key => "not_a_real_license") | ||
| 35 | I18n.with_locale(:en) do | ||
| 36 | assert_not asset.valid? | ||
| 37 | assert_includes asset.errors[:license_key], "is not included in the list" | ||
| 38 | end | ||
| 39 | end | ||
| 40 | |||
| 41 | test "license_key may be blank" do | ||
| 42 | assert Asset.new(:license_key => nil).valid? | ||
| 43 | end | ||
| 44 | |||
| 45 | test "pdf? is true only for application/pdf" do | ||
| 46 | assert Asset.new(:upload_content_type => "application/pdf").pdf? | ||
| 47 | assert_not Asset.new(:upload_content_type => "image/png").pdf? | ||
| 48 | end | ||
| 49 | |||
| 50 | test "show_credit? is false for a PDF even with every credit field present" do | ||
| 51 | asset = Asset.new(:name => "demo", :upload_content_type => "application/pdf", | ||
| 52 | :creator => "Jane Doe", :source_url => "https://example.org", :license_key => "cc_by_4") | ||
| 53 | assert asset.has_credit? | ||
| 54 | assert_not asset.show_credit? | ||
| 55 | end | ||
| 23 | end | 56 | end |
