diff options
author | abcang <abcang1015@gmail.com> | 2017-09-03 03:45:42 +0900 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2017-09-02 20:45:42 +0200 |
commit | 6ec1aa372dca28c476749666d02e1807eb05c42e (patch) | |
tree | 35744e09f30a249df55dc74b6d82eafb7531516a | |
parent | 2c3544eedd52ffc29dd425042791995cd270cd7e (diff) |
Validate data of Imports (#4782)
-rw-r--r-- | app/models/import.rb | 1 | ||||
-rw-r--r-- | spec/models/import_spec.rb | 19 |
2 files changed, 20 insertions, 0 deletions
diff --git a/app/models/import.rb b/app/models/import.rb index 815e02589..4656c3af6 100644 --- a/app/models/import.rb +++ b/app/models/import.rb @@ -28,4 +28,5 @@ class Import < ApplicationRecord has_attached_file :data, url: '/system/:hash.:extension', hash_secret: ENV['PAPERCLIP_SECRET'] validates_attachment_content_type :data, content_type: FILE_TYPES + validates_attachment_presence :data end diff --git a/spec/models/import_spec.rb b/spec/models/import_spec.rb index fa52077cd..321761166 100644 --- a/spec/models/import_spec.rb +++ b/spec/models/import_spec.rb @@ -1,5 +1,24 @@ require 'rails_helper' RSpec.describe Import, type: :model do + let (:account) { Fabricate(:account) } + let (:type) { 'following' } + let (:data) { attachment_fixture('imports.txt') } + describe 'validations' do + it 'has a valid parameters' do + import = Import.create(account: account, type: type, data: data) + expect(import).to be_valid + end + + it 'is invalid without an type' do + import = Import.create(account: account, data: data) + expect(import).to model_have_error_on_field(:type) + end + + it 'is invalid without a data' do + import = Import.create(account: account, type: type) + expect(import).to model_have_error_on_field(:data) + end + end end |