summaryrefslogtreecommitdiff
path: root/spec/models/concerns
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2018-11-16 15:10:02 +0100
committerGrzegorz Bizon <grzesiek.bizon@gmail.com>2018-11-16 15:10:02 +0100
commit0df989ba06606b675b19e32a74edf03f47a28fbb (patch)
tree682e3da4b2542bed8ee5a616c1ef3701ea82266f /spec/models/concerns
parent621071ca5b7ecb21b9baf6d9a2b32758371b7128 (diff)
downloadgitlab-ce-0df989ba06606b675b19e32a74edf03f47a28fbb.tar.gz
Add specs for token authenticable strategy factory method
Diffstat (limited to 'spec/models/concerns')
-rw-r--r--spec/models/concerns/token_authenticatable_strategies/base_spec.rb32
1 files changed, 32 insertions, 0 deletions
diff --git a/spec/models/concerns/token_authenticatable_strategies/base_spec.rb b/spec/models/concerns/token_authenticatable_strategies/base_spec.rb
new file mode 100644
index 00000000000..80df9c198fd
--- /dev/null
+++ b/spec/models/concerns/token_authenticatable_strategies/base_spec.rb
@@ -0,0 +1,32 @@
+require 'spec_helper'
+
+describe TokenAuthenticatableStrategies::Base do
+ let(:instance) { double(:instance) }
+ let(:field) { double(:field) }
+
+ describe '.fabricate' do
+ context 'when digest stragegy is specified' do
+ it 'fabricates digest strategy object' do
+ strategy = described_class.fabricate(instance, field, digest: true)
+
+ expect(strategy).to be_a TokenAuthenticatableStrategies::Digest
+ end
+ end
+
+ context 'when encrypted strategy is specified' do
+ it 'fabricates encrypted strategy object' do
+ strategy = described_class.fabricate(instance, field, encrypted: true)
+
+ expect(strategy).to be_a TokenAuthenticatableStrategies::Encrypted
+ end
+ end
+
+ context 'when no strategy is specified' do
+ it 'fabricates insecure strategy object' do
+ strategy = described_class.fabricate(instance, field, something: true)
+
+ expect(strategy).to be_a TokenAuthenticatableStrategies::Insecure
+ end
+ end
+ end
+end