diff options
author | Robert Speicher <rspeicher@gmail.com> | 2018-12-12 20:27:45 +0300 |
---|---|---|
committer | Robert Speicher <rspeicher@gmail.com> | 2018-12-12 20:27:45 +0300 |
commit | bfe7f7bdc7b0e5ba19304c218345376684bcbd26 (patch) | |
tree | c24ba8e4586fa8a0a9d0f5cdd2c76a9cba23e158 /spec | |
parent | c7ba5c0aeb808f4dc057428a2a98fec7fa1939fb (diff) | |
parent | 26378511fe11a8bb23d22f4ded9f2b4050d02ed1 (diff) |
Merge branch 'refactor-create-or-update-import-data' into 'master'
Refactor Project#create_or_update_import_data
See merge request gitlab-org/gitlab-ce!23701
Diffstat (limited to 'spec')
-rw-r--r-- | spec/models/project_import_data_spec.rb | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/models/project_import_data_spec.rb b/spec/models/project_import_data_spec.rb new file mode 100644 index 00000000000..e9910c0a5d1 --- /dev/null +++ b/spec/models/project_import_data_spec.rb @@ -0,0 +1,42 @@ +# frozen_string_literal: true + +require 'spec_helper' + +describe ProjectImportData do + describe '#merge_data' do + it 'writes the Hash to the attribute if it is nil' do + row = described_class.new + + row.merge_data('number' => 10) + + expect(row.data).to eq({ 'number' => 10 }) + end + + it 'merges the Hash into an existing Hash if one was present' do + row = described_class.new(data: { 'number' => 10 }) + + row.merge_data('foo' => 'bar') + + expect(row.data).to eq({ 'number' => 10, 'foo' => 'bar' }) + end + end + + describe '#merge_credentials' do + it 'writes the Hash to the attribute if it is nil' do + row = described_class.new + + row.merge_credentials('number' => 10) + + expect(row.credentials).to eq({ 'number' => 10 }) + end + + it 'merges the Hash into an existing Hash if one was present' do + row = described_class.new + + row.credentials = { 'number' => 10 } + row.merge_credentials('foo' => 'bar') + + expect(row.credentials).to eq({ 'number' => 10, 'foo' => 'bar' }) + end + end +end |