diff options
author | Imre Farkas <ifarkas@gitlab.com> | 2019-07-05 09:12:29 +0300 |
---|---|---|
committer | Imre Farkas <ifarkas@gitlab.com> | 2019-07-05 09:12:29 +0300 |
commit | b9b3ec83540a82fc96ddd64715a51d7adeb7312c (patch) | |
tree | ff2b48ab189d74ee5519db61914915de4455f14f /spec | |
parent | f845a081e336621e991587f88ee7d8ce6d012e21 (diff) |
CE port of "Require session with smartcard login for Git access"
Diffstat (limited to 'spec')
-rw-r--r-- | spec/lib/gitlab/namespaced_session_store_spec.rb | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/spec/lib/gitlab/namespaced_session_store_spec.rb b/spec/lib/gitlab/namespaced_session_store_spec.rb index c0af2ede32a..e177c44ad67 100644 --- a/spec/lib/gitlab/namespaced_session_store_spec.rb +++ b/spec/lib/gitlab/namespaced_session_store_spec.rb @@ -4,19 +4,33 @@ require 'spec_helper' describe Gitlab::NamespacedSessionStore do let(:key) { :some_key } - subject { described_class.new(key) } - it 'stores data under the specified key' do - Gitlab::Session.with_session({}) do - subject[:new_data] = 123 + context 'current session' do + subject { described_class.new(key) } - expect(Thread.current[:session_storage][key]).to eq(new_data: 123) + it 'stores data under the specified key' do + Gitlab::Session.with_session({}) do + subject[:new_data] = 123 + + expect(Thread.current[:session_storage][key]).to eq(new_data: 123) + end + end + + it 'retrieves data from the given key' do + Thread.current[:session_storage] = { key => { existing_data: 123 } } + + expect(subject[:existing_data]).to eq 123 end end - it 'retrieves data from the given key' do - Thread.current[:session_storage] = { key => { existing_data: 123 } } + context 'passed in session' do + let(:data) { { 'data' => 42 } } + let(:session) { { 'some_key' => data } } + + subject { described_class.new(key, session.with_indifferent_access) } - expect(subject[:existing_data]).to eq 123 + it 'retrieves data from the given key' do + expect(subject['data']).to eq 42 + end end end |