Sha256: c170a90769c0534db4d5da8c74507a8bdbcbd55c7ee5e79146333e71f33467c1

Contents?: true

Size: 1.62 KB

Versions: 34

Compression:

Stored size: 1.62 KB

Contents

require 'test_helper'

module Workarea
  class ProcessImportTest < TestCase
    include TestCase::Mail

    def test_perform
      user = create_user(email: 'test@workarea.com')
      import = create_import(
        model_type: Workarea::Catalog::Product,
        file: create_tempfile([create_product].to_json, extension: 'json'),
        created_by_id: user.id
      )

      ProcessImport.new.perform(import.id)
      import.reload

      assert_equal(1, Catalog::Product.count)
      assert(import.started_at.present?)
      assert(import.completed_at.present?)
      refute(import.file_errors.present?)

      email = ActionMailer::Base.deliveries.last
      assert_includes(email.to, user.email)
      assert_includes(email.subject, import.name.downcase)
    end

    def test_perform_when_import_fails
      user = create_user(email: 'test@workarea.com')
      sample = create_product
      sample.name = ''
      file = create_tempfile([sample].to_json, extension: 'json')

      import = create_import(
        model_type: Workarea::Catalog::Product,
        file: file,
        created_by_id: user.id
      )

      ProcessImport.new.perform(import.id)
      import.reload

      assert_equal(1, Catalog::Product.count)
      assert(import.started_at.present?)
      assert(import.completed_at.present?)
      assert(import.file_errors.present?)

      email = ActionMailer::Base.deliveries.last
      assert_includes(email.to, user.email)
      assert_includes(email.subject, import.name.downcase)
      assert_includes(
        email.parts.second.body,
        t('workarea.admin.data_file_mailer.import_failure.errors')
      )
    end
  end
end

Version data entries

34 entries across 34 versions & 1 rubygems

Version Path
workarea-core-3.5.11 test/workers/workarea/process_import_test.rb
workarea-core-3.5.10 test/workers/workarea/process_import_test.rb
workarea-core-3.4.32 test/workers/workarea/process_import_test.rb
workarea-core-3.5.9 test/workers/workarea/process_import_test.rb
workarea-core-3.4.31 test/workers/workarea/process_import_test.rb
workarea-core-3.5.8 test/workers/workarea/process_import_test.rb
workarea-core-3.4.30 test/workers/workarea/process_import_test.rb
workarea-core-3.5.7 test/workers/workarea/process_import_test.rb
workarea-core-3.4.29 test/workers/workarea/process_import_test.rb
workarea-core-3.5.6 test/workers/workarea/process_import_test.rb
workarea-core-3.4.28 test/workers/workarea/process_import_test.rb
workarea-core-3.5.5 test/workers/workarea/process_import_test.rb
workarea-core-3.4.27 test/workers/workarea/process_import_test.rb
workarea-core-3.5.4 test/workers/workarea/process_import_test.rb
workarea-core-3.4.26 test/workers/workarea/process_import_test.rb
workarea-core-3.5.3 test/workers/workarea/process_import_test.rb
workarea-core-3.4.25 test/workers/workarea/process_import_test.rb
workarea-core-3.5.2 test/workers/workarea/process_import_test.rb
workarea-core-3.4.24 test/workers/workarea/process_import_test.rb
workarea-core-3.5.1 test/workers/workarea/process_import_test.rb