diff options
author | Kamil Trzcinski <ayufan@ayufan.eu> | 2015-07-03 15:47:41 +0200 |
---|---|---|
committer | Kamil Trzcinski <ayufan@ayufan.eu> | 2015-07-03 15:47:41 +0200 |
commit | aad4f676fea567d10349240207d548360607fa1d (patch) | |
tree | af9e3eea215c156ad536ba187284ad52dc15b6e6 | |
parent | cebaa37daa18962498f8f09b809cc9cc2828ffee (diff) | |
download | gitlab-ci-aad4f676fea567d10349240207d548360607fa1d.tar.gz |
Added specs
-rw-r--r-- | spec/models/variable_spec.rb | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/spec/models/variable_spec.rb b/spec/models/variable_spec.rb new file mode 100644 index 0000000..fd1ce1e --- /dev/null +++ b/spec/models/variable_spec.rb @@ -0,0 +1,44 @@ +# == Schema Information +# +# Table name: variables +# +# id :integer not null, primary key +# project_id :integer not null +# key :string(255) +# value :text +# encrypted_value :string(255) +# encrypted_value_salt :string(255) +# encrypted_value_iv :string(255) +# + +require 'spec_helper' + +describe Variable do + subject { Variable.new } + + let(:secret_value) { 'secret' } + + before :each do + subject.value = secret_value + end + + describe :value do + it 'stores the encrypted value' do + subject.encrypted_value.should_not be_nil + end + + it 'stores an iv for value' do + subject.encrypted_value_iv.should_not be_nil + end + + it 'stores a salt for value' do + subject.encrypted_value_salt.should_not be_nil + end + + it 'fails to decrypt if iv is incorrect' do + subject.encrypted_value_iv = nil + subject.instance_variable_set(:@value, nil) + expect { subject.value }.to raise_error + end + end +end |