summaryrefslogtreecommitdiff
path: root/spec/serializers/deploy_key_entity_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/serializers/deploy_key_entity_spec.rb')
-rw-r--r--spec/serializers/deploy_key_entity_spec.rb31
1 files changed, 19 insertions, 12 deletions
diff --git a/spec/serializers/deploy_key_entity_spec.rb b/spec/serializers/deploy_key_entity_spec.rb
index d3aefa2c9eb..c5d8e3f8a2f 100644
--- a/spec/serializers/deploy_key_entity_spec.rb
+++ b/spec/serializers/deploy_key_entity_spec.rb
@@ -12,10 +12,10 @@ describe DeployKeyEntity do
let!(:deploy_key_private) { create(:deploy_keys_project, project: project_private, deploy_key: deploy_key) }
let!(:deploy_key_pending_delete) { create(:deploy_keys_project, project: project_pending_delete, deploy_key: deploy_key) }
- let(:entity) { described_class.new(deploy_key, user: user) }
+ let(:entity) { described_class.new(deploy_key, user: user, request: double) }
describe 'returns deploy keys with projects a user can read' do
- let(:expected_result) do
+ let(:expected_deploy_key_info) do
{
id: deploy_key.id,
user_id: deploy_key.user_id,
@@ -26,19 +26,26 @@ describe DeployKeyEntity do
almost_orphaned: false,
created_at: deploy_key.created_at,
updated_at: deploy_key.updated_at,
- can_edit: false,
- projects: [
- {
- id: project.id,
- name: project.name,
- full_path: project_path(project),
- full_name: project.full_name
- }
- ]
+ can_edit: false
}
end
- it { expect(entity.as_json).to eq(expected_result) }
+ let(:expected_project_info) do
+ {
+ id: project.id,
+ name: project.name,
+ project_path: project_path(project),
+ full_name: project.full_name
+ }
+ end
+
+ it 'includes deploy key info' do
+ expect(entity.as_json).to match(a_hash_including(expected_deploy_key_info))
+ end
+
+ it 'returnd deploy key info' do
+ expect(entity.as_json[:projects].first).to match(a_hash_including(expected_project_info))
+ end
end
describe 'returns can_edit true if user is a master of project' do