From 47a0276e53de4635df43124607ac1a101d6f1b70 Mon Sep 17 00:00:00 2001 From: "Z.J. van de Weg" Date: Tue, 23 May 2017 17:10:07 +0200 Subject: Initial implementation for real time job view Added the needed keys and paths to a new entity, BuildDetailsEntity. Not renaming BuildEntity to BuildBasicEntity on explicit request. Most code now has test coverage, but not all. This will be added on later commits on this branch. Resolves gitlab-org/gitlab-ce#31397 --- spec/serializers/runner_entity_spec.rb | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 spec/serializers/runner_entity_spec.rb (limited to 'spec/serializers/runner_entity_spec.rb') diff --git a/spec/serializers/runner_entity_spec.rb b/spec/serializers/runner_entity_spec.rb new file mode 100644 index 00000000000..eb662a10b7e --- /dev/null +++ b/spec/serializers/runner_entity_spec.rb @@ -0,0 +1,14 @@ +require 'spec_helper' + +describe RunnerEntity do + let(:runner) { build(:ci_runner) } + let(:entity) { described_class.represent(runner) } + + describe '#as_json' do + subject { entity.as_json } + + it 'contains required fields' do + expect(subject).to include(:id, :name, :description) + end + end +end -- cgit v1.2.1 From 68569584b728ac2dd5100593e9db302f362994f5 Mon Sep 17 00:00:00 2001 From: "Z.J. van de Weg" Date: Fri, 26 May 2017 10:31:42 +0200 Subject: Create PipelineDetailsEntity Now we have a PipelineEntity which is a bit smaller, mostly in bytes needing to send to the frontend. PipelineDetailsEntity is the default for the PipelineSerializer, limiting the changes needed. This commit also incorporates the review. --- spec/serializers/runner_entity_spec.rb | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'spec/serializers/runner_entity_spec.rb') diff --git a/spec/serializers/runner_entity_spec.rb b/spec/serializers/runner_entity_spec.rb index eb662a10b7e..036701eccaa 100644 --- a/spec/serializers/runner_entity_spec.rb +++ b/spec/serializers/runner_entity_spec.rb @@ -1,14 +1,23 @@ require 'spec_helper' describe RunnerEntity do - let(:runner) { build(:ci_runner) } - let(:entity) { described_class.represent(runner) } + let(:runner) { create(:ci_runner) } + let(:entity) { described_class.new(runner, request: request, current_user: user) } + let(:request) { double('request') } + let(:project) { create(:empty_project) } + let(:user) { create(:admin) } + + before do + allow(request).to receive(:current_user).and_return(user) + allow(request).to receive(:project).and_return(project) + end describe '#as_json' do subject { entity.as_json } it 'contains required fields' do - expect(subject).to include(:id, :name, :description) + expect(subject).to include(:id, :description) + expect(subject).to include(:edit_runner_path) end end end -- cgit v1.2.1 From 8a9a62e3294d92f4e70be6f427c17241a2b7a232 Mon Sep 17 00:00:00 2001 From: "Z.J. van de Weg" Date: Mon, 29 May 2017 09:58:20 +0200 Subject: Incorporate review --- spec/serializers/runner_entity_spec.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'spec/serializers/runner_entity_spec.rb') diff --git a/spec/serializers/runner_entity_spec.rb b/spec/serializers/runner_entity_spec.rb index 036701eccaa..4f25a8dcfa0 100644 --- a/spec/serializers/runner_entity_spec.rb +++ b/spec/serializers/runner_entity_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' describe RunnerEntity do - let(:runner) { create(:ci_runner) } + let(:runner) { create(:ci_runner, :specific) } let(:entity) { described_class.new(runner, request: request, current_user: user) } let(:request) { double('request') } let(:project) { create(:empty_project) } @@ -17,7 +17,7 @@ describe RunnerEntity do it 'contains required fields' do expect(subject).to include(:id, :description) - expect(subject).to include(:edit_runner_path) + expect(subject).to include(:edit_path) end end end -- cgit v1.2.1