Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/lib/gitlab/git/base_error_spec.rb')
-rw-r--r--spec/lib/gitlab/git/base_error_spec.rb29
1 files changed, 28 insertions, 1 deletions
diff --git a/spec/lib/gitlab/git/base_error_spec.rb b/spec/lib/gitlab/git/base_error_spec.rb
index d4db7cf2430..6efebd778b7 100644
--- a/spec/lib/gitlab/git/base_error_spec.rb
+++ b/spec/lib/gitlab/git/base_error_spec.rb
@@ -21,7 +21,7 @@ RSpec.describe Gitlab::Git::BaseError do
it { is_expected.to eq(result) }
end
- describe "When initialized with GRPC errors" do
+ describe "when initialized with GRPC errors without metadata" do
let(:grpc_error) { GRPC::DeadlineExceeded.new }
let(:git_error) { described_class.new grpc_error }
@@ -29,6 +29,33 @@ RSpec.describe Gitlab::Git::BaseError do
expect(git_error.service).to eq('git')
expect(git_error.status).to eq(4)
expect(git_error.code).to eq('deadline_exceeded')
+ expect(git_error.metadata).to eq({})
+ end
+ end
+
+ describe "when initialized with GRPC errors with metadata" do
+ let(:grpc_error) do
+ GRPC::DeadlineExceeded.new(
+ "deadline exceeded",
+ gitaly_error_metadata: {
+ storage: "default",
+ address: "unix://gitaly.socket",
+ service: :ref_service, rpc: :find_local_branches
+ }
+ )
+ end
+
+ let(:git_error) { described_class.new grpc_error }
+
+ it "has status, code, and metadata fields" do
+ expect(git_error.service).to eq('git')
+ expect(git_error.status).to eq(4)
+ expect(git_error.code).to eq('deadline_exceeded')
+ expect(git_error.metadata).to eq(
+ storage: "default",
+ address: "unix://gitaly.socket",
+ service: :ref_service, rpc: :find_local_branches
+ )
end
end
end