diff options
Diffstat (limited to 'spec/graphql/types/project_type_spec.rb')
-rw-r--r-- | spec/graphql/types/project_type_spec.rb | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/spec/graphql/types/project_type_spec.rb b/spec/graphql/types/project_type_spec.rb index be579e92fb3..b3028e034cc 100644 --- a/spec/graphql/types/project_type_spec.rb +++ b/spec/graphql/types/project_type_spec.rb @@ -3,6 +3,8 @@ require 'spec_helper' RSpec.describe GitlabSchema.types['Project'] do + include GraphqlHelpers + specify { expect(described_class).to expose_permissions_using(Types::PermissionTypes::Project) } specify { expect(described_class.graphql_name).to eq('Project') } @@ -28,7 +30,8 @@ RSpec.describe GitlabSchema.types['Project'] do alert_management_alerts alert_management_alert alert_management_alert_status_counts container_expiration_policy service_desk_enabled service_desk_address issue_status_counts terraform_states alert_management_integrations - + container_repositories container_repositories_count + pipeline_analytics total_pipeline_duration squash_read_only ] expect(described_class).to include_graphql_fields(*expected_fields) @@ -76,6 +79,7 @@ RSpec.describe GitlabSchema.types['Project'] do :merged_before, :author_username, :assignee_username, + :reviewer_username, :milestone_title, :sort ) @@ -163,4 +167,32 @@ RSpec.describe GitlabSchema.types['Project'] do end it_behaves_like 'a GraphQL type with labels' + + describe 'jira_imports' do + subject { resolve_field(:jira_imports, project) } + + let_it_be(:project) { create(:project, :public) } + + context 'when project has Jira imports' do + let_it_be(:jira_import1) { create(:jira_import_state, :finished, project: project, jira_project_key: 'AA', created_at: 2.days.ago) } + let_it_be(:jira_import2) { create(:jira_import_state, :finished, project: project, jira_project_key: 'BB', created_at: 5.days.ago) } + + it 'retrieves the imports' do + expect(subject).to contain_exactly(jira_import1, jira_import2) + end + end + + context 'when project does not have Jira imports' do + it 'returns an empty result' do + expect(subject).to be_empty + end + end + end + + describe 'pipeline_analytics field' do + subject { described_class.fields['pipelineAnalytics'] } + + it { is_expected.to have_graphql_type(Types::Ci::AnalyticsType) } + it { is_expected.to have_graphql_resolver(Resolvers::ProjectPipelineStatisticsResolver) } + end end |