diff options
author | Lin Jen-Shin <godfat@godfat.org> | 2017-02-03 17:16:21 +0800 |
---|---|---|
committer | Lin Jen-Shin <godfat@godfat.org> | 2017-02-03 17:16:21 +0800 |
commit | 078689447313a2bd119b9376460272492b055796 (patch) | |
tree | e3cd48b7eae8786a5e217025e652a366d86dbdf5 /spec/lib/gitlab/incoming_email_spec.rb | |
parent | 15f8642994bc74bea1a39d079c70b1f4e4730bf1 (diff) | |
parent | fd46fb1cd9cc1fdf826d31261aa594baa38d4898 (diff) | |
download | gitlab-ce-078689447313a2bd119b9376460272492b055796.tar.gz |
Merge remote-tracking branch 'upstream/master' into fix-references-header-parsing
* upstream/master: (574 commits)
remove dateFormat global exception
fix relative paths to xterm.js within fit.js
use setFixtures instead of fixture.set
prevent u2f tests from triggering a form submission while testing
simplify test for focus state
preload projects.json fixture
preload projects.json fixture
rework tests which rely on teaspoon-specific behavior
Only render hr when user can't archive project.
use setFixtures instead of fixture.set
ensure helper classes and constants are exposed globally
preload projects.json fixture
fix fixture references in environments_spec
allow console.xxx in tests, reorder eslint rules alphabetically
remove redundant "data-toggle" attribute so Vue doesn't complain
fix broken reference to formatDate in a CommonJS environment
fix errors within gl_dropdown_spec.js when running in Karma
fix intermittant errors in merge_commit_message_toggle_spec.rb
Update installation docs to include Docker, others
ignore node_modules in rubocop
...
Diffstat (limited to 'spec/lib/gitlab/incoming_email_spec.rb')
-rw-r--r-- | spec/lib/gitlab/incoming_email_spec.rb | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/lib/gitlab/incoming_email_spec.rb b/spec/lib/gitlab/incoming_email_spec.rb index 01d0cb6cbd6..698bd72d0f8 100644 --- a/spec/lib/gitlab/incoming_email_spec.rb +++ b/spec/lib/gitlab/incoming_email_spec.rb @@ -23,6 +23,48 @@ describe Gitlab::IncomingEmail, lib: true do end end + describe 'self.supports_wildcard?' do + context 'address contains the wildard placeholder' do + before do + stub_incoming_email_setting(address: 'replies+%{key}@example.com') + end + + it 'confirms that wildcard is supported' do + expect(described_class.supports_wildcard?).to be_truthy + end + end + + context "address doesn't contain the wildcard placeholder" do + before do + stub_incoming_email_setting(address: 'replies@example.com') + end + + it 'returns that wildcard is not supported' do + expect(described_class.supports_wildcard?).to be_falsey + end + end + + context 'address is not set' do + before do + stub_incoming_email_setting(address: nil) + end + + it 'returns that wildard is not supported' do + expect(described_class.supports_wildcard?).to be_falsey + end + end + end + + context 'self.unsubscribe_address' do + before do + stub_incoming_email_setting(address: 'replies+%{key}@example.com') + end + + it 'returns the address with interpolated reply key and unsubscribe suffix' do + expect(described_class.unsubscribe_address('key')).to eq('replies+key+unsubscribe@example.com') + end + end + context "self.reply_address" do before do stub_incoming_email_setting(address: "replies+%{key}@example.com") |