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:
authorKamil Trzciński <ayufan@ayufan.eu>2018-07-13 20:45:07 +0300
committerKamil Trzciński <ayufan@ayufan.eu>2018-08-01 14:03:16 +0300
commit34ec29b9566900308989e15865e6df1059bd9b46 (patch)
treef743f6d9f1b637ab6bad9463e1fe08abb7c7676f /spec/requests/jwt_controller_spec.rb
parent3d2dad449da2915b2c431bf32548e03b08fcbe40 (diff)
Support multiple scopes when using authing container registry scopes
Diffstat (limited to 'spec/requests/jwt_controller_spec.rb')
-rw-r--r--spec/requests/jwt_controller_spec.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/spec/requests/jwt_controller_spec.rb b/spec/requests/jwt_controller_spec.rb
index 6f40a02aaa9..e042d772718 100644
--- a/spec/requests/jwt_controller_spec.rb
+++ b/spec/requests/jwt_controller_spec.rb
@@ -70,6 +70,25 @@ describe JwtController do
it { expect(service_class).to have_received(:new).with(nil, user, parameters) }
+ context 'when passing a flat array of scopes' do
+ # We use this trick to make rails to generate a query_string:
+ # scope=scope1&scope=scope2
+ # It works because :scope and 'scope' are the same as string, but different objects
+ let(:parameters) do
+ {
+ :service => service_name,
+ :scope => 'scope1',
+ 'scope' => 'scope2'
+ }
+ end
+
+ let(:service_parameters) do
+ { service: service_name, scopes: %w(scope1 scope2) }
+ end
+
+ it { expect(service_class).to have_received(:new).with(nil, user, service_parameters) }
+ end
+
context 'when user has 2FA enabled' do
let(:user) { create(:user, :two_factor) }