From acfe25edc0083b5e51cf8021b862dc1419a4006e Mon Sep 17 00:00:00 2001 From: Tomasz Maczukin Date: Wed, 17 Feb 2016 22:20:09 +0100 Subject: [PATCH] Refactorize `ci_runner` factory and `let` definitions in runners API spec --- spec/factories/ci/runners.rb | 10 ++++------ spec/requests/api/runners_spec.rb | 30 ++++++++++++++---------------- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/spec/factories/ci/runners.rb b/spec/factories/ci/runners.rb index db759eca9ac..265663e8453 100644 --- a/spec/factories/ci/runners.rb +++ b/spec/factories/ci/runners.rb @@ -25,14 +25,12 @@ FactoryGirl.define do "My runner#{n}" end - platform "darwin" + platform "darwin" + is_shared false + active true - factory :ci_shared_runner do + trait :shared do is_shared true end - - factory :ci_specific_runner do - is_shared false - end end end diff --git a/spec/requests/api/runners_spec.rb b/spec/requests/api/runners_spec.rb index 1a4ec44a51b..78484747d6a 100644 --- a/spec/requests/api/runners_spec.rb +++ b/spec/requests/api/runners_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe API::API, api: true do +describe API::Runners, api: true do include ApiHelpers let(:admin) { create(:user, :admin) } @@ -10,20 +10,20 @@ describe API::API, api: true do let(:project) { create(:project, creator_id: user.id) } let(:project2) { create(:project, creator_id: user.id) } - let!(:shared_runner) { create(:ci_shared_runner, tag_list: ['mysql', 'ruby'], active: true) } - let!(:unused_specific_runner) { create(:ci_specific_runner) } + let!(:shared_runner) { create(:ci_runner, :shared) } + let!(:unused_specific_runner) { create(:ci_runner) } let!(:specific_runner) do - runner = create(:ci_specific_runner, tag_list: ['mysql', 'ruby']) - create(:ci_runner_project, runner: runner, project: project) - runner + create(:ci_runner).tap do |runner| + create(:ci_runner_project, runner: runner, project: project) + end end let!(:two_projects_runner) do - runner = create(:ci_specific_runner) - create(:ci_runner_project, runner: runner, project: project) - create(:ci_runner_project, runner: runner, project: project2) - runner + create(:ci_runner).tap do |runner| + create(:ci_runner_project, runner: runner, project: project) + create(:ci_runner_project, runner: runner, project: project2) + end end before do @@ -352,14 +352,12 @@ describe API::API, api: true do end describe 'POST /projects/:id/runners' do - let(:specific_runner2) do - runner = create(:ci_specific_runner) - create(:ci_runner_project, runner: runner, project: project2) - runner - end - context 'authorized user' do it 'should enable specific runner' do + specific_runner2 = create(:ci_runner).tap do |runner| + create(:ci_runner_project, runner: runner, project: project2) + end + expect do post api("/projects/#{project.id}/runners", user), runner_id: specific_runner2.id end.to change{ project.runners.count }.by(+1) -- GitLab