Skip to content
Snippets Groups Projects
Commit d0085211 authored by Luke Duncalfe's avatar Luke Duncalfe
Browse files

Fix Graphql/Descriptions EE types offenses

https://gitlab.com/gitlab-org/gitlab/-/merge_requests/46721 introduced a
new rubocop that enforced periods at the end of GraphQL description
strings. Existing offenses were added to `.rubocop_manual_todo.yml`.

This change fixes roughly half of the offenses in `ee/app/graphql/types`
and `ee/app/graphql/ee/types` and removes the exclusion of them from
`.rubocop_manual_todo.yml`.

The changes were generated using the following autocorrect:

    bundle exec rubocop app/graphql \
      --auto-correct \
      --only Graphql/Descriptions

https://gitlab.com/gitlab-org/gitlab/-/issues/292426
parent c997203d
No related branches found
No related tags found
No related merge requests found
Showing
with 513 additions and 543 deletions
Loading
Loading
@@ -716,37 +716,6 @@ RSpec/TimecopTravel:
 
Graphql/Descriptions:
Exclude:
- 'ee/app/graphql/ee/types/board_list_type.rb'
- 'ee/app/graphql/ee/types/board_type.rb'
- 'ee/app/graphql/ee/types/boards/board_issue_input_base_type.rb'
- 'ee/app/graphql/ee/types/boards/board_issue_input_type.rb'
- 'ee/app/graphql/ee/types/ci/pipeline_type.rb'
- 'ee/app/graphql/ee/types/group_type.rb'
- 'ee/app/graphql/ee/types/issue_connection_type.rb'
- 'ee/app/graphql/ee/types/merge_request_type.rb'
- 'ee/app/graphql/ee/types/namespace_type.rb'
- 'ee/app/graphql/ee/types/project_type.rb'
- 'ee/app/graphql/ee/types/query_type.rb'
- 'ee/app/graphql/types/admin/analytics/devops_adoption/segment_type.rb'
- 'ee/app/graphql/types/admin/analytics/devops_adoption/snapshot_type.rb'
- 'ee/app/graphql/types/boards/board_epic_type.rb'
- 'ee/app/graphql/types/boards/epic_board_type.rb'
- 'ee/app/graphql/types/boards/epic_user_preferences_type.rb'
- 'ee/app/graphql/types/burnup_chart_daily_totals_type.rb'
- 'ee/app/graphql/types/ci_configuration/sast/analyzers_entity_input_type.rb'
- 'ee/app/graphql/types/ci_configuration/sast/analyzers_entity_type.rb'
- 'ee/app/graphql/types/ci_configuration/sast/entity_input_type.rb'
- 'ee/app/graphql/types/ci_configuration/sast/input_type.rb'
- 'ee/app/graphql/types/clusters/agent_token_type.rb'
- 'ee/app/graphql/types/clusters/agent_type.rb'
- 'ee/app/graphql/types/compliance_management/compliance_framework_type.rb'
- 'ee/app/graphql/types/dast_scanner_profile_type.rb'
- 'ee/app/graphql/types/dast_site_profile_type.rb'
- 'ee/app/graphql/types/dast_site_validation_type.rb'
- 'ee/app/graphql/types/epic_descendant_count_type.rb'
- 'ee/app/graphql/types/epic_descendant_weight_sum_type.rb'
- 'ee/app/graphql/types/epic_health_status_type.rb'
- 'ee/app/graphql/types/epic_issue_type.rb'
- 'ee/app/graphql/types/epic_tree/epic_tree_node_input_type.rb'
- 'ee/app/graphql/types/external_issue_type.rb'
- 'ee/app/graphql/types/geo/geo_node_type.rb'
Loading
Loading
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Loading
Loading
@@ -7,19 +7,19 @@ module BoardListType
 
prepended do
field :milestone, ::Types::MilestoneType, null: true,
description: 'Milestone of the list'
description: 'Milestone of the list.'
field :iteration, ::Types::IterationType, null: true,
description: 'Iteration of the list'
description: 'Iteration of the list.'
field :max_issue_count, GraphQL::INT_TYPE, null: true,
description: 'Maximum number of issues in the list'
description: 'Maximum number of issues in the list.'
field :max_issue_weight, GraphQL::INT_TYPE, null: true,
description: 'Maximum weight of issues in the list'
description: 'Maximum weight of issues in the list.'
field :assignee, ::Types::UserType, null: true,
description: 'Assignee in the list'
description: 'Assignee in the list.'
field :limit_metric, ::EE::Types::ListLimitMetricEnum, null: true,
description: 'The current limit metric for the list'
description: 'The current limit metric for the list.'
field :total_weight, GraphQL::INT_TYPE, null: true,
description: 'Total weight of all issues in the list'
description: 'Total weight of all issues in the list.'
 
def milestone
::Gitlab::Graphql::Loaders::BatchModelLoader.new(::Milestone, object.milestone_id).find
Loading
Loading
Loading
Loading
@@ -7,24 +7,24 @@ module BoardType
 
prepended do
field :assignee, type: ::Types::UserType, null: true,
description: 'The board assignee'
description: 'The board assignee.'
 
field :epics, ::Types::Boards::BoardEpicType.connection_type, null: true,
description: 'Epics associated with board issues',
description: 'Epics associated with board issues.',
resolver: ::Resolvers::BoardGroupings::EpicsResolver,
complexity: 5
 
field :labels, ::Types::LabelType.connection_type, null: true,
description: 'Labels of the board'
description: 'Labels of the board.'
 
field :milestone, type: ::Types::MilestoneType, null: true,
description: 'The board milestone'
description: 'The board milestone.'
 
field :iteration, type: ::Types::IterationType, null: true,
description: 'The board iteration.'
 
field :weight, type: GraphQL::INT_TYPE, null: true,
description: 'Weight of the board'
description: 'Weight of the board.'
end
end
end
Loading
Loading
Loading
Loading
@@ -9,15 +9,15 @@ module BoardIssueInputBaseType
prepended do
argument :epic_id, ::Types::GlobalIDType[::Epic],
required: false,
description: 'Filter by epic ID. Incompatible with epicWildcardId'
description: 'Filter by epic ID. Incompatible with epicWildcardId.'
 
argument :iteration_title, GraphQL::STRING_TYPE,
required: false,
description: 'Filter by iteration title'
description: 'Filter by iteration title.'
 
argument :weight, GraphQL::STRING_TYPE,
required: false,
description: 'Filter by weight'
description: 'Filter by weight.'
end
end
end
Loading
Loading
Loading
Loading
@@ -10,11 +10,11 @@ module BoardIssueInputType
# NONE/ANY epic filter can not be negated
argument :epic_wildcard_id, ::Types::Boards::EpicWildcardIdEnum,
required: false,
description: 'Filter by epic ID wildcard. Incompatible with epicId'
description: 'Filter by epic ID wildcard. Incompatible with epicId.'
 
argument :iteration_wildcard_id, ::Types::Boards::IterationWildcardIdEnum,
required: false,
description: 'Filter by iteration ID wildcard'
description: 'Filter by iteration ID wildcard.'
end
end
end
Loading
Loading
Loading
Loading
@@ -11,7 +11,7 @@ module PipelineType
::Types::SecurityReportSummaryType,
null: true,
extras: [:lookahead],
description: 'Vulnerability and scanned resource counts for each security scanner of the pipeline',
description: 'Vulnerability and scanned resource counts for each security scanner of the pipeline.',
resolver: ::Resolvers::SecurityReportSummaryResolver
end
end
Loading
Loading
Loading
Loading
@@ -16,31 +16,31 @@ module GroupType
end
 
field :epic, ::Types::EpicType, null: true,
description: 'Find a single epic',
description: 'Find a single epic.',
resolver: ::Resolvers::EpicsResolver.single
 
field :epics, ::Types::EpicType.connection_type, null: true,
description: 'Find epics',
description: 'Find epics.',
extras: [:lookahead],
max_page_size: 2000,
resolver: ::Resolvers::EpicsResolver
 
field :epic_board,
::Types::Boards::EpicBoardType, null: true,
description: 'Find a single epic board',
description: 'Find a single epic board.',
resolver: ::Resolvers::Boards::EpicBoardsResolver.single
 
field :epic_boards,
::Types::Boards::EpicBoardType.connection_type, null: true,
description: 'Find epic boards',
description: 'Find epic boards.',
resolver: ::Resolvers::Boards::EpicBoardsResolver
 
field :iterations, ::Types::IterationType.connection_type, null: true,
description: 'Find iterations',
description: 'Find iterations.',
resolver: ::Resolvers::IterationsResolver
 
field :timelogs, ::Types::TimelogType.connection_type, null: false,
description: 'Time logged in issues by group members',
description: 'Time logged in issues by group members.',
extras: [:lookahead],
complexity: 5,
resolver: ::Resolvers::TimelogResolver
Loading
Loading
@@ -48,48 +48,48 @@ module GroupType
field :vulnerabilities,
::Types::VulnerabilityType.connection_type,
null: true,
description: 'Vulnerabilities reported on the projects in the group and its subgroups',
description: 'Vulnerabilities reported on the projects in the group and its subgroups.',
resolver: ::Resolvers::VulnerabilitiesResolver
 
field :vulnerability_scanners,
::Types::VulnerabilityScannerType.connection_type,
null: true,
description: 'Vulnerability scanners reported on the project vulnerabilities of the group and its subgroups',
description: 'Vulnerability scanners reported on the project vulnerabilities of the group and its subgroups.',
resolver: ::Resolvers::Vulnerabilities::ScannersResolver
 
field :vulnerability_severities_count, ::Types::VulnerabilitySeveritiesCountType, null: true,
description: 'Counts for each vulnerability severity in the group and its subgroups',
description: 'Counts for each vulnerability severity in the group and its subgroups.',
resolver: ::Resolvers::VulnerabilitySeveritiesCountResolver
 
field :vulnerabilities_count_by_day,
::Types::VulnerabilitiesCountByDayType.connection_type,
null: true,
description: 'Number of vulnerabilities per day for the projects in the group and its subgroups',
description: 'Number of vulnerabilities per day for the projects in the group and its subgroups.',
resolver: ::Resolvers::VulnerabilitiesCountPerDayResolver
 
field :vulnerabilities_count_by_day_and_severity,
::Types::VulnerabilitiesCountByDayAndSeverityType.connection_type,
null: true,
description: 'Number of vulnerabilities per severity level, per day, for the projects in the group and its subgroups',
description: 'Number of vulnerabilities per severity level, per day, for the projects in the group and its subgroups.',
resolver: ::Resolvers::VulnerabilitiesHistoryResolver,
deprecated: { reason: 'Use `vulnerabilitiesCountByDay`', milestone: '13.3' }
 
field :vulnerability_grades,
[::Types::VulnerableProjectsByGradeType],
null: false,
description: 'Represents vulnerable project counts for each grade',
description: 'Represents vulnerable project counts for each grade.',
resolver: ::Resolvers::VulnerabilitiesGradeResolver
 
field :code_coverage_activities,
::Types::Ci::CodeCoverageActivityType.connection_type,
null: true,
description: 'Represents the code coverage activity for this group',
description: 'Represents the code coverage activity for this group.',
resolver: ::Resolvers::Ci::CodeCoverageActivitiesResolver
 
field :stats,
::Types::GroupStatsType,
null: true,
description: 'Group statistics',
description: 'Group statistics.',
method: :itself
end
end
Loading
Loading
Loading
Loading
@@ -6,7 +6,7 @@ module IssueConnectionType
extend ActiveSupport::Concern
 
prepended do
field :weight, GraphQL::INT_TYPE, null: false, description: 'Total weight of issues collection'
field :weight, GraphQL::INT_TYPE, null: false, description: 'Total weight of issues collection.'
end
 
def weight
Loading
Loading
Loading
Loading
@@ -9,11 +9,11 @@ module MergeRequestType
field :approved, GraphQL::BOOLEAN_TYPE, method: :approved?, null: false, calls_gitaly: true,
description: 'Indicates if the merge request has all the required approvals. Returns true if no required approvals are configured.'
field :approvals_left, GraphQL::INT_TYPE, null: true, calls_gitaly: true,
description: 'Number of approvals left'
description: 'Number of approvals left.'
field :approvals_required, GraphQL::INT_TYPE, null: true,
description: 'Number of approvals required'
description: 'Number of approvals required.'
field :merge_trains_count, GraphQL::INT_TYPE, null: true,
description: ''
description: 'Number of merge requests in the merge train.'
end
 
def merge_trains_count
Loading
Loading
Loading
Loading
@@ -9,50 +9,50 @@ module NamespaceType
field :additional_purchased_storage_size,
GraphQL::FLOAT_TYPE,
null: true,
description: 'Additional storage purchased for the root namespace in bytes'
description: 'Additional storage purchased for the root namespace in bytes.'
 
field :total_repository_size_excess,
GraphQL::FLOAT_TYPE,
null: true,
description: 'Total excess repository size of all projects in the root namespace in bytes'
description: 'Total excess repository size of all projects in the root namespace in bytes.'
 
field :total_repository_size,
GraphQL::FLOAT_TYPE,
null: true,
description: 'Total repository size of all projects in the root namespace in bytes'
description: 'Total repository size of all projects in the root namespace in bytes.'
 
field :contains_locked_projects,
GraphQL::BOOLEAN_TYPE,
null: false,
description: 'Includes at least one project where the repository size exceeds the limit',
description: 'Includes at least one project where the repository size exceeds the limit.',
method: :contains_locked_projects?
 
field :repository_size_excess_project_count,
GraphQL::INT_TYPE,
null: false,
description: 'Number of projects in the root namespace where the repository size exceeds the limit'
description: 'Number of projects in the root namespace where the repository size exceeds the limit.'
 
field :actual_repository_size_limit,
GraphQL::FLOAT_TYPE,
null: true,
description: 'Size limit for repositories in the namespace in bytes',
description: 'Size limit for repositories in the namespace in bytes.',
method: :actual_size_limit
 
field :storage_size_limit,
GraphQL::FLOAT_TYPE,
null: true,
description: 'Total storage limit of the root namespace in bytes'
description: 'Total storage limit of the root namespace in bytes.'
 
field :is_temporary_storage_increase_enabled,
GraphQL::BOOLEAN_TYPE,
null: false,
description: 'Status of the temporary storage increase',
description: 'Status of the temporary storage increase.',
method: :temporary_storage_increase_enabled?
 
field :temporary_storage_increase_ends_on,
::Types::TimeType,
null: true,
description: 'Date until the temporary storage increase is active'
description: 'Date until the temporary storage increase is active.'
 
field :compliance_frameworks,
::Types::ComplianceManagement::ComplianceFrameworkType.connection_type,
Loading
Loading
Loading
Loading
@@ -7,53 +7,53 @@ module ProjectType
 
prepended do
field :security_scanners, ::Types::SecurityScanners, null: true,
description: 'Information about security analyzers used in the project',
description: 'Information about security analyzers used in the project.',
method: :itself
 
field :vulnerabilities,
::Types::VulnerabilityType.connection_type,
null: true,
description: 'Vulnerabilities reported on the project',
description: 'Vulnerabilities reported on the project.',
resolver: ::Resolvers::VulnerabilitiesResolver
 
field :vulnerability_scanners,
::Types::VulnerabilityScannerType.connection_type,
null: true,
description: 'Vulnerability scanners reported on the project vulnerabilities',
description: 'Vulnerability scanners reported on the project vulnerabilities.',
resolver: ::Resolvers::Vulnerabilities::ScannersResolver
 
field :vulnerabilities_count_by_day,
::Types::VulnerabilitiesCountByDayType.connection_type,
null: true,
description: 'Number of vulnerabilities per day for the project',
description: 'Number of vulnerabilities per day for the project.',
resolver: ::Resolvers::VulnerabilitiesCountPerDayResolver
 
field :vulnerability_severities_count, ::Types::VulnerabilitySeveritiesCountType, null: true,
description: 'Counts for each vulnerability severity in the project',
description: 'Counts for each vulnerability severity in the project.',
resolver: ::Resolvers::VulnerabilitySeveritiesCountResolver
 
field :requirement, ::Types::RequirementsManagement::RequirementType, null: true,
description: 'Find a single requirement',
description: 'Find a single requirement.',
resolver: ::Resolvers::RequirementsManagement::RequirementsResolver.single
 
field :requirements, ::Types::RequirementsManagement::RequirementType.connection_type, null: true,
description: 'Find requirements',
description: 'Find requirements.',
extras: [:lookahead],
resolver: ::Resolvers::RequirementsManagement::RequirementsResolver
 
field :requirement_states_count, ::Types::RequirementsManagement::RequirementStatesCountType, null: true,
description: 'Number of requirements for the project by their state'
description: 'Number of requirements for the project by their state.'
 
field :compliance_frameworks, ::Types::ComplianceManagement::ComplianceFrameworkType.connection_type,
description: 'Compliance frameworks associated with the project',
description: 'Compliance frameworks associated with the project.',
null: true
 
field :security_dashboard_path, GraphQL::STRING_TYPE,
description: "Path to project's security dashboard",
description: "Path to project's security dashboard.",
null: true
 
field :iterations, ::Types::IterationType.connection_type, null: true,
description: 'Find iterations',
description: 'Find iterations.',
resolver: ::Resolvers::IterationsResolver
 
field :dast_profiles,
Loading
Loading
@@ -89,43 +89,43 @@ module ProjectType
field :cluster_agent,
::Types::Clusters::AgentType,
null: true,
description: 'Find a single cluster agent by name',
description: 'Find a single cluster agent by name.',
resolver: ::Resolvers::Clusters::AgentsResolver.single
 
field :cluster_agents,
::Types::Clusters::AgentType.connection_type,
extras: [:lookahead],
null: true,
description: 'Cluster agents associated with the project',
description: 'Cluster agents associated with the project.',
resolver: ::Resolvers::Clusters::AgentsResolver
 
field :repository_size_excess,
GraphQL::FLOAT_TYPE,
null: true,
description: 'Size of repository that exceeds the limit in bytes'
description: 'Size of repository that exceeds the limit in bytes.'
 
field :actual_repository_size_limit,
GraphQL::FLOAT_TYPE,
null: true,
description: 'Size limit for the repository in bytes',
description: 'Size limit for the repository in bytes.',
method: :actual_size_limit
 
field :code_coverage_summary,
::Types::Ci::CodeCoverageSummaryType,
null: true,
description: 'Code coverage summary associated with the project',
description: 'Code coverage summary associated with the project.',
resolver: ::Resolvers::Ci::CodeCoverageSummaryResolver
 
field :alert_management_payload_fields,
[::Types::AlertManagement::PayloadAlertFieldType],
null: true,
description: 'Extract alert fields from payload for custom mapping',
description: 'Extract alert fields from payload for custom mapping.',
resolver: ::Resolvers::AlertManagement::PayloadAlertFieldResolver
 
field :incident_management_oncall_schedules,
::Types::IncidentManagement::OncallScheduleType.connection_type,
null: true,
description: 'Incident Management On-call schedules of the project',
description: 'Incident Management On-call schedules of the project.',
resolver: ::Resolvers::IncidentManagement::OncallScheduleResolver
end
 
Loading
Loading
Loading
Loading
@@ -8,53 +8,53 @@ module QueryType
prepended do
field :iteration, ::Types::IterationType,
null: true,
description: 'Find an iteration' do
description: 'Find an iteration.' do
argument :id, ::Types::GlobalIDType[::Iteration],
required: true,
description: 'Find an iteration by its ID'
description: 'Find an iteration by its ID.'
end
 
field :vulnerabilities,
::Types::VulnerabilityType.connection_type,
null: true,
description: "Vulnerabilities reported on projects on the current user's instance security dashboard",
description: "Vulnerabilities reported on projects on the current user's instance security dashboard.",
resolver: ::Resolvers::VulnerabilitiesResolver
 
field :vulnerability,
::Types::VulnerabilityType,
null: true,
description: "Find a vulnerability" do
description: "Find a vulnerability." do
argument :id, ::Types::GlobalIDType[::Vulnerability],
required: true,
description: 'The Global ID of the Vulnerability'
description: 'The Global ID of the Vulnerability.'
end
 
field :vulnerabilities_count_by_day,
::Types::VulnerabilitiesCountByDayType.connection_type,
null: true,
description: "Number of vulnerabilities per day for the projects on the current user's instance security dashboard",
description: "Number of vulnerabilities per day for the projects on the current user's instance security dashboard.",
resolver: ::Resolvers::VulnerabilitiesCountPerDayResolver
 
field :vulnerabilities_count_by_day_and_severity,
::Types::VulnerabilitiesCountByDayAndSeverityType.connection_type,
null: true,
description: "Number of vulnerabilities per severity level, per day, for the projects on the current user's instance security dashboard",
description: "Number of vulnerabilities per severity level, per day, for the projects on the current user's instance security dashboard.",
resolver: ::Resolvers::VulnerabilitiesHistoryResolver,
deprecated: { reason: 'Use `vulnerabilitiesCountByDay`', milestone: '13.3' }
 
field :geo_node, ::Types::Geo::GeoNodeType,
null: true,
resolver: ::Resolvers::Geo::GeoNodeResolver,
description: 'Find a Geo node'
description: 'Find a Geo node.'
 
field :instance_security_dashboard, ::Types::InstanceSecurityDashboardType,
null: true,
resolver: ::Resolvers::InstanceSecurityDashboardResolver,
description: 'Fields related to Instance Security Dashboard'
description: 'Fields related to Instance Security Dashboard.'
 
field :devops_adoption_segments, ::Types::Admin::Analytics::DevopsAdoption::SegmentType.connection_type,
null: true,
description: 'Get configured DevOps adoption segments on the instance',
description: 'Get configured DevOps adoption segments on the instance.',
resolver: ::Resolvers::Admin::Analytics::DevopsAdoption::SegmentsResolver
end
 
Loading
Loading
Loading
Loading
@@ -10,16 +10,16 @@ class SegmentType < BaseObject
description 'Segment'
 
field :id, GraphQL::ID_TYPE, null: false,
description: "ID of the segment"
description: "ID of the segment."
 
field :name, GraphQL::STRING_TYPE, null: false,
description: 'Name of the segment'
description: 'Name of the segment.'
 
field :groups, [Types::GroupType], null: true,
description: 'Assigned groups'
description: 'Assigned groups.'
 
field :latest_snapshot, SnapshotType, null: true,
description: 'The latest adoption metrics for the segment'
description: 'The latest adoption metrics for the segment.'
 
def latest_snapshot
BatchLoader::GraphQL.for(object.id).batch(key: :devops_adoption_latest_snapshots) do |ids, loader, args|
Loading
Loading
Loading
Loading
@@ -10,25 +10,25 @@ class SnapshotType < BaseObject
description 'Snapshot'
 
field :issue_opened, GraphQL::BOOLEAN_TYPE, null: false,
description: 'At least one issue was opened'
description: 'At least one issue was opened.'
field :merge_request_opened, GraphQL::BOOLEAN_TYPE, null: false,
description: 'At least one merge request was opened'
description: 'At least one merge request was opened.'
field :merge_request_approved, GraphQL::BOOLEAN_TYPE, null: false,
description: 'At least one merge request was approved'
description: 'At least one merge request was approved.'
field :runner_configured, GraphQL::BOOLEAN_TYPE, null: false,
description: 'At least one runner was used'
description: 'At least one runner was used.'
field :pipeline_succeeded, GraphQL::BOOLEAN_TYPE, null: false,
description: 'At least one pipeline succeeded'
description: 'At least one pipeline succeeded.'
field :deploy_succeeded, GraphQL::BOOLEAN_TYPE, null: false,
description: 'At least one deployment succeeded'
description: 'At least one deployment succeeded.'
field :security_scan_succeeded, GraphQL::BOOLEAN_TYPE, null: false,
description: 'At least one security scan succeeded'
description: 'At least one security scan succeeded.'
field :recorded_at, Types::TimeType, null: false,
description: 'The time the snapshot was recorded'
description: 'The time the snapshot was recorded.'
field :start_time, Types::TimeType, null: false,
description: 'The start time for the snapshot where the data points were collected'
description: 'The start time for the snapshot where the data points were collected.'
field :end_time, Types::TimeType, null: false,
description: 'The end time for the snapshot where the data points were collected'
description: 'The end time for the snapshot where the data points were collected.'
end
end
end
Loading
Loading
Loading
Loading
@@ -8,7 +8,7 @@ class BoardEpicType < EpicType
description 'Represents an epic on an issue board'
 
field :user_preferences, Types::Boards::EpicUserPreferencesType, null: true,
description: 'User preferences for the epic on the issue board'
description: 'User preferences for the epic on the issue board.'
 
def user_preferences
return unless current_user
Loading
Loading
Loading
Loading
@@ -8,7 +8,7 @@ class EpicUserPreferencesType < BaseObject
description 'Represents user preferences for a board epic'
 
field :collapsed, GraphQL::BOOLEAN_TYPE, null: false,
description: 'Indicates epic should be displayed as collapsed'
description: 'Indicates epic should be displayed as collapsed.'
end
# rubocop: enable Graphql/AuthorizeTypes
end
Loading
Loading
Loading
Loading
@@ -7,18 +7,18 @@ class BurnupChartDailyTotalsType < BaseObject
description 'Represents the total number of issues and their weights for a particular day'
 
field :date, GraphQL::Types::ISO8601Date, null: false,
description: 'Date for burnup totals'
description: 'Date for burnup totals.'
 
field :scope_count, GraphQL::INT_TYPE, null: false,
description: 'Number of issues as of this day'
description: 'Number of issues as of this day.'
 
field :scope_weight, GraphQL::INT_TYPE, null: false,
description: 'Total weight of issues as of this day'
description: 'Total weight of issues as of this day.'
 
field :completed_count, GraphQL::INT_TYPE, null: false,
description: 'Number of closed issues as of this day'
description: 'Number of closed issues as of this day.'
 
field :completed_weight, GraphQL::INT_TYPE, null: false,
description: 'Total weight of closed issues as of this day'
description: 'Total weight of closed issues as of this day.'
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