Skip to content
Snippets Groups Projects
Verified Commit 0bfcdd66 authored by Matija Čupić's avatar Matija Čupić
Browse files

Use `resource` in Project Variables routing scheme

parent 6b82a9ef
No related branches found
No related tags found
No related merge requests found
class Projects::VariablesController < Projects::ApplicationController
before_action :authorize_admin_build!
 
def save_multiple
def show
respond_to do |format|
format.json do
variables = @project.variables
.map { |variable| variable.present(current_user: current_user) }
render status: :ok, json: { variables: variables }
end
end
end
def update
respond_to do |format|
format.json do
return head :ok if @project.update(variables_params)
Loading
Loading
Loading
Loading
@@ -11,11 +11,11 @@ module Ci
end
 
def edit_path
project_variables_save_multiple_path(project)
project_variables_path(project)
end
 
def delete_path
project_variables_save_multiple_path(project)
project_variables_path(project)
end
end
end
Loading
Loading
@@ -156,9 +156,7 @@ constraints(ProjectUrlConstrainer.new) do
end
end
 
namespace :variables do
post :save_multiple
end
resource :variables, only: [:show, :update]
 
resources :triggers, only: [:index, :create, :edit, :update, :destroy] do
member do
Loading
Loading
Loading
Loading
@@ -9,7 +9,26 @@ describe Projects::VariablesController do
project.add_master(user)
end
 
describe 'POST #save_multiple' do
describe 'GET #show' do
let(:variable) { create(:ci_variable) }
before do
project.variables << variable
end
subject do
get :show, namespace_id: project.namespace.to_param, project_id: project,
format: :json
end
it 'renders the ci_variable as json' do
subject
expect(response.body).to include(variable.to_json)
end
end
describe 'POST #update' do
let(:variable) { create(:ci_variable) }
 
before do
Loading
Loading
@@ -18,7 +37,7 @@ describe Projects::VariablesController do
 
context 'with invalid new variable parameters' do
subject do
post :save_multiple,
post :update,
namespace_id: project.namespace.to_param, project_id: project,
variables_attributes: [{ id: variable.id, key: variable.key,
value: 'other_value',
Loading
Loading
@@ -45,7 +64,7 @@ describe Projects::VariablesController do
 
context 'with valid new variable parameters' do
subject do
post :save_multiple,
post :update,
namespace_id: project.namespace.to_param, project_id: project,
variables_attributes: [{ id: variable.id, key: variable.key,
value: 'other_value',
Loading
Loading
@@ -72,7 +91,7 @@ describe Projects::VariablesController do
 
context 'with a deleted variable' do
subject do
post :save_multiple,
post :update,
namespace_id: project.namespace.to_param, project_id: project,
variables_attributes: [{ id: variable.id, key: variable.key,
value: variable.value,
Loading
Loading
Loading
Loading
@@ -43,12 +43,12 @@ describe Ci::VariablePresenter do
describe '#edit_path' do
subject { described_class.new(variable).edit_path }
 
it { is_expected.to eq(project_variables_save_multiple_path(project)) }
it { is_expected.to eq(project_variables_path(project)) }
end
 
describe '#delete_path' do
subject { described_class.new(variable).delete_path }
 
it { is_expected.to eq(project_variables_save_multiple_path(project)) }
it { is_expected.to eq(project_variables_path(project)) }
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment