Sha256: 5b0da2204542f9fef3fe12f50c5f64a96e3b49af79102a60ece51c9b6b6461fb

Contents?: true

Size: 1.19 KB

Versions: 10

Compression:

Stored size: 1.19 KB

Contents

require 'spec_helper'

describe Arpa::Services::Profiles::ProfileManagerRemover, type: :service, fast: true do

  let(:profile_remover) { double }
  let(:profile)         { double }
  let(:success_proc)    { ->(r) {} }
  let(:callback)        { {success: success_proc, fail: ->(e) {raise e} } }

  let(:setup_updaters) do
    allow(Arpa::Services::Profiles::Remove::ProfileRemover).to receive(:new).and_return(profile_remover)
  end

  let(:setup_updaters_methods) do
    allow(profile_remover).to receive(:remove)
  end

  let(:result) { subject.remove params, callback }

  before do
    setup_updaters
    setup_updaters_methods
    allow(success_proc).to receive(:call)
    result
  end

  context 'when is to destroy' do
    let(:params) { {profile: profile} }

    it 'profile_remover should call :remove with profile as parameter' do
      expect(profile_remover).to have_received(:remove).with(profile, nil).once
    end
  end

  context 'when is to disable' do
    let(:params) { {profile: profile, disable: true} }

    it 'profile_remover should call :remove with profile and disable: true as parameter' do
      expect(profile_remover).to have_received(:remove).with(profile, true).once
    end

  end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
arpa-0.2.0 spec/lib/arpa/services/profiles/profile_manager_remover_spec.rb
arpa-0.1.0 spec/lib/arpa/services/profiles/profile_manager_remover_spec.rb
arpa-0.0.9 spec/lib/arpa/services/profiles/profile_manager_remover_spec.rb
arpa-0.0.8 spec/lib/ar/services/profiles/profile_manager_remover_spec.rb
arpa-0.0.7 spec/lib/ar/services/profiles/profile_manager_remover_spec.rb
arpa-0.0.6 spec/lib/ar/services/profiles/profile_manager_remover_spec.rb
arpa-0.0.5 spec/lib/ar/services/profiles/profile_manager_remover_spec.rb
arpa-0.0.4 spec/lib/ar/services/profiles/profile_manager_remover_spec.rb
arpa-0.0.3 spec/lib/ar/services/profiles/profile_manager_remover_spec.rb
arpa-0.0.2 spec/lib/ar/services/profiles/profile_manager_remover_spec.rb