diff options
Diffstat (limited to 'spec/graphql/types/packages')
-rw-r--r-- | spec/graphql/types/packages/package_base_type_spec.rb | 21 | ||||
-rw-r--r-- | spec/graphql/types/packages/package_details_type_spec.rb | 13 | ||||
-rw-r--r-- | spec/graphql/types/packages/package_type_spec.rb | 8 |
3 files changed, 31 insertions, 11 deletions
diff --git a/spec/graphql/types/packages/package_base_type_spec.rb b/spec/graphql/types/packages/package_base_type_spec.rb new file mode 100644 index 00000000000..7156f22c513 --- /dev/null +++ b/spec/graphql/types/packages/package_base_type_spec.rb @@ -0,0 +1,21 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe GitlabSchema.types['PackageBase'] do + specify { expect(described_class.description).to eq('Represents a package in the Package Registry') } + + specify { expect(described_class).to require_graphql_authorizations(:read_package) } + + it 'includes all expected fields' do + expected_fields = %w[ + id name version package_type + created_at updated_at + project + tags metadata + status can_destroy + ] + + expect(described_class).to include_graphql_fields(*expected_fields) + end +end diff --git a/spec/graphql/types/packages/package_details_type_spec.rb b/spec/graphql/types/packages/package_details_type_spec.rb index ceeb000ff85..d5688fc64c5 100644 --- a/spec/graphql/types/packages/package_details_type_spec.rb +++ b/spec/graphql/types/packages/package_details_type_spec.rb @@ -3,6 +3,10 @@ require 'spec_helper' RSpec.describe GitlabSchema.types['PackageDetailsType'] do + specify { expect(described_class.description).to eq('Represents a package details in the Package Registry') } + + specify { expect(described_class).to require_graphql_authorizations(:read_package) } + it 'includes all the package fields' do expected_fields = %w[ id name version created_at updated_at package_type tags project @@ -13,13 +17,4 @@ RSpec.describe GitlabSchema.types['PackageDetailsType'] do expect(described_class).to include_graphql_fields(*expected_fields) end - - it 'overrides the pipelines field' do - field = described_class.fields['pipelines'] - - expect(field).to have_graphql_type(Types::Ci::PipelineType.connection_type) - expect(field).to have_graphql_extension(Gitlab::Graphql::Extensions::ExternallyPaginatedArrayExtension) - expect(field).to have_graphql_resolver(Resolvers::PackagePipelinesResolver) - expect(field).not_to be_connection - end end diff --git a/spec/graphql/types/packages/package_type_spec.rb b/spec/graphql/types/packages/package_type_spec.rb index 3267c765dc7..df8135ed87e 100644 --- a/spec/graphql/types/packages/package_type_spec.rb +++ b/spec/graphql/types/packages/package_type_spec.rb @@ -3,12 +3,16 @@ require 'spec_helper' RSpec.describe GitlabSchema.types['Package'] do - it 'includes all the package fields' do + specify { expect(described_class.description).to eq('Represents a package with pipelines in the Package Registry') } + + specify { expect(described_class).to require_graphql_authorizations(:read_package) } + + it 'includes all the package fields and pipelines' do expected_fields = %w[ id name version package_type created_at updated_at project - tags pipelines metadata versions + tags pipelines metadata status can_destroy ] |