Commit f68b51aa authored by lauraMon's avatar lauraMon

Updates docs for consistency

* Changes description
* Removes destroyable field
parent 72a8a9e0
......@@ -49,17 +49,13 @@ module Types
description: 'Pipeline user',
resolve: -> (pipeline, _args, _context) { Gitlab::Graphql::Loaders::BatchModelLoader.new(User, pipeline.user_id).find }
field :retryable, GraphQL::BOOLEAN_TYPE,
description: 'Specifies if a pipeline is retryable',
description: 'Specifies if a pipeline can be retried',
method: :retryable?,
null: false
field :cancelable, GraphQL::BOOLEAN_TYPE,
description: 'Specifies if a pipeline is cancelable',
description: 'Specifies if a pipeline can be canceled',
method: :cancelable?,
null: false
field :destroyable, GraphQL::BOOLEAN_TYPE,
description: 'Specifies if a pipeline can be destroyed',
null: false,
resolve: -> (pipeline, _args, context) { Ability.allowed?(context[:current_user], :destroy_pipeline, pipeline) }
end
end
end
......
......@@ -10698,7 +10698,7 @@ type Pipeline {
beforeSha: String
"""
Specifies if a pipeline is cancelable
Specifies if a pipeline can be canceled
"""
cancelable: Boolean!
......@@ -10724,11 +10724,6 @@ type Pipeline {
"""
createdAt: Time!
"""
Specifies if a pipeline can be destroyed
"""
destroyable: Boolean!
"""
Detailed status of the pipeline
"""
......@@ -10755,7 +10750,7 @@ type Pipeline {
iid: String!
"""
Specifies if a pipeline is retryable
Specifies if a pipeline can be retried
"""
retryable: Boolean!
......
......@@ -32017,7 +32017,7 @@
},
{
"name": "cancelable",
"description": "Specifies if a pipeline is cancelable",
"description": "Specifies if a pipeline can be canceled",
"args": [
],
......@@ -32093,24 +32093,6 @@
"isDeprecated": false,
"deprecationReason": null
},
{
"name": "destroyable",
"description": "Specifies if a pipeline can be destroyed",
"args": [
],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "Boolean",
"ofType": null
}
},
"isDeprecated": false,
"deprecationReason": null
},
{
"name": "detailedStatus",
"description": "Detailed status of the pipeline",
......@@ -32195,7 +32177,7 @@
},
{
"name": "retryable",
"description": "Specifies if a pipeline is retryable",
"description": "Specifies if a pipeline can be retried",
"args": [
],
......@@ -1650,18 +1650,17 @@ Information about pagination in a connection.
| Name | Type | Description |
| --- | ---- | ---------- |
| `beforeSha` | String | Base SHA of the source branch |
| `cancelable` | Boolean! | Specifies if a pipeline is cancelable |
| `cancelable` | Boolean! | Specifies if a pipeline can be canceled |
| `committedAt` | Time | Timestamp of the pipeline's commit |
| `configSource` | PipelineConfigSourceEnum | Config source of the pipeline (UNKNOWN_SOURCE, REPOSITORY_SOURCE, AUTO_DEVOPS_SOURCE, WEBIDE_SOURCE, REMOTE_SOURCE, EXTERNAL_PROJECT_SOURCE, BRIDGE_SOURCE, PARAMETER_SOURCE) |
| `coverage` | Float | Coverage percentage |
| `createdAt` | Time! | Timestamp of the pipeline's creation |
| `destroyable` | Boolean! | Specifies if a pipeline can be destroyed |
| `detailedStatus` | DetailedStatus! | Detailed status of the pipeline |
| `duration` | Int | Duration of the pipeline in seconds |
| `finishedAt` | Time | Timestamp of the pipeline's completion |
| `id` | ID! | ID of the pipeline |
| `iid` | String! | Internal ID of the pipeline |
| `retryable` | Boolean! | Specifies if a pipeline is retryable |
| `retryable` | Boolean! | Specifies if a pipeline can be retried |
| `securityReportSummary` | SecurityReportSummary | Vulnerability and scanned resource counts for each security scanner of the pipeline |
| `sha` | String! | SHA of the pipeline's commit |
| `startedAt` | Time | Timestamp when the pipeline was started |
......
# frozen_string_literal: true
require 'spec_helper'
RSpec.describe 'destroyable' do
include GraphqlHelpers
let_it_be(:project) { create(:project) }
let_it_be(:user) { create(:user) }
let_it_be(:project_owner) { project.owner }
let_it_be(:pipeline) { create(:ci_pipeline, project: project) }
let(:query) do
%(
query {
project(fullPath: "#{project.full_path}") {
pipeline(iid: "#{pipeline.iid}") {
destroyable
}
}
}
)
end
let(:pipeline_graphql_data) { graphql_data.dig('project', 'pipeline', 'destroyable') }
context 'when user does not have the permission' do
before do
project.add_developer(user)
post_graphql(query, current_user: user)
end
it 'returns false' do
allow(Ability).to receive(:allowed?).with(user, :destroy_pipline, pipeline).and_return(false)
expect(pipeline_graphql_data).to be(false)
end
end
context 'when user is owner and therefore has the permission' do
before do
post_graphql(query, current_user: project_owner)
end
it 'returns true' do
allow(Ability).to receive(:allowed?).with(project_owner, :destroy_pipline, pipeline).and_return(true)
expect(pipeline_graphql_data).to be(true)
end
end
end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment