Do not allow to permanently remove a price

#522
This commit is contained in:
Artur Beljajev 2017-05-23 17:31:32 +03:00
parent 18be71b519
commit 7d94273a5e
6 changed files with 3 additions and 64 deletions

View file

@ -41,12 +41,6 @@ module Admin
end
end
def destroy
@price.destroy!
flash[:notice] = t('.destroyed')
redirect_to_index
end
private
def load_price

View file

@ -3,18 +3,9 @@
</ol>
<div class="page-header">
<div class="row">
<div class="col-sm-10">
<h1><%= t '.title' %></h1>
</div>
<div class="col-sm-2 text-right">
<%= link_to(t('.delete_btn'), admin_price_path(@price),
method: :delete,
data: { confirm: t('.delete_btn_confirm') },
class: 'btn btn-danger') %>
</div>
</div>
</div>
<% if @price.persisted? && @price.errors.none? %>

View file

@ -15,15 +15,10 @@ en:
edit:
title: Edit price
delete_btn: Delete
delete_btn_confirm: Are you sure you want to delete price?
update:
updated: Price has been updated
destroy:
destroyed: Price has been deleted
form:
create_btn: Create price
update_btn: Update price

View file

@ -166,7 +166,7 @@ Rails.application.routes.draw do
resources :zones, controller: 'dns/zones', except: %i[show destroy]
resources :legal_documents
resources :keyrelays
resources :prices, controller: 'billing/prices', except: %i[show]
resources :prices, controller: 'billing/prices', except: %i[show destroy]
resources :mail_templates
resources :account_activities

View file

@ -1,23 +0,0 @@
require 'rails_helper'
RSpec.feature 'Deleting price in admin area', settings: false do
given!(:price) { create(:price) }
background do
sign_in_to_admin_area
end
scenario 'deletes price' do
visit admin_prices_url
open_form
click_link_or_button t('admin.billing.prices.edit.delete_btn')
expect(page).to have_text(t('admin.billing.prices.destroy.destroyed'))
end
private
def open_form
click_link_or_button 'admin-edit-price-btn'
end
end

View file

@ -1,18 +0,0 @@
require 'rails_helper'
RSpec.describe 'admin price destroy', settings: false do
let!(:price) { create(:price) }
before :example do
sign_in_to_admin_area
end
it 'deletes price' do
expect { delete admin_price_path(price) }.to change { Billing::Price.count }.from(1).to(0)
end
it 'redirects to :index' do
delete admin_price_path(price)
expect(response).to redirect_to admin_prices_url
end
end