diff options
Diffstat (limited to 'spec/graphql/types/commit_signatures')
3 files changed, 52 insertions, 0 deletions
diff --git a/spec/graphql/types/commit_signatures/gpg_signature_type_spec.rb b/spec/graphql/types/commit_signatures/gpg_signature_type_spec.rb new file mode 100644 index 00000000000..0b69ee169f2 --- /dev/null +++ b/spec/graphql/types/commit_signatures/gpg_signature_type_spec.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe GitlabSchema.types['GpgSignature'] do + specify { expect(described_class.graphql_name).to eq('GpgSignature') } + + specify { expect(described_class).to require_graphql_authorizations(:download_code) } + + specify { expect(described_class).to include(Types::CommitSignatureInterface) } + + it 'contains attributes related to GPG signatures' do + expect(described_class).to have_graphql_fields( + :user, :verification_status, :commit_sha, :project, + :gpg_key_user_name, :gpg_key_user_email, :gpg_key_primary_keyid + ) + end +end diff --git a/spec/graphql/types/commit_signatures/verification_status_enum_spec.rb b/spec/graphql/types/commit_signatures/verification_status_enum_spec.rb new file mode 100644 index 00000000000..cb7ce19c9fc --- /dev/null +++ b/spec/graphql/types/commit_signatures/verification_status_enum_spec.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe GitlabSchema.types['VerificationStatus'] do + specify { expect(described_class.graphql_name).to eq('VerificationStatus') } + + it 'exposes all signature verification states' do + expect(described_class.values.keys) + .to match_array(%w[ + UNVERIFIED UNVERIFIED_KEY VERIFIED + SAME_USER_DIFFERENT_EMAIL OTHER_USER UNKNOWN_KEY + MULTIPLE_SIGNATURES + ]) + end +end diff --git a/spec/graphql/types/commit_signatures/x509_signature_type_spec.rb b/spec/graphql/types/commit_signatures/x509_signature_type_spec.rb new file mode 100644 index 00000000000..e268bd5b3b4 --- /dev/null +++ b/spec/graphql/types/commit_signatures/x509_signature_type_spec.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe GitlabSchema.types['X509Signature'] do + specify { expect(described_class.graphql_name).to eq('X509Signature') } + + specify { expect(described_class).to require_graphql_authorizations(:download_code) } + + specify { expect(described_class).to include(Types::CommitSignatureInterface) } + + it 'contains attributes related to X.509 signatures' do + expect(described_class).to have_graphql_fields( + :user, :verification_status, :commit_sha, :project, + :x509_certificate + ) + end +end |