summaryrefslogtreecommitdiff
path: root/spec/lib/gitlab/incoming_email_spec.rb
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2015-09-21 09:46:47 +0200
committerDouwe Maan <douwe@gitlab.com>2015-09-21 10:35:37 +0200
commitee028d9d60522f8993a0b2429ac8a0631d59229a (patch)
tree5e028593ff4394df287de8f61824c8d004a81688 /spec/lib/gitlab/incoming_email_spec.rb
parent11bbc06b4bbcb678f3ee6b8f1d143ed86d25a76c (diff)
downloadgitlab-ce-ee028d9d60522f8993a0b2429ac8a0631d59229a.tar.gz
Rename reply_by_email to incoming_email to prepare for the future.
Diffstat (limited to 'spec/lib/gitlab/incoming_email_spec.rb')
-rw-r--r--spec/lib/gitlab/incoming_email_spec.rb61
1 files changed, 61 insertions, 0 deletions
diff --git a/spec/lib/gitlab/incoming_email_spec.rb b/spec/lib/gitlab/incoming_email_spec.rb
new file mode 100644
index 00000000000..5fdb9c723b1
--- /dev/null
+++ b/spec/lib/gitlab/incoming_email_spec.rb
@@ -0,0 +1,61 @@
+require "spec_helper"
+
+describe Gitlab::IncomingEmail do
+ describe "self.enabled?" do
+ context "when reply by email is enabled" do
+ before do
+ stub_incoming_email_setting(enabled: true)
+ end
+
+ context "when the address is valid" do
+ before do
+ stub_incoming_email_setting(address: "replies+%{key}@example.com")
+ end
+
+ it "returns true" do
+ expect(described_class.enabled?).to be_truthy
+ end
+ end
+
+ context "when the address is invalid" do
+ before do
+ stub_incoming_email_setting(address: "replies@example.com")
+ end
+
+ it "returns false" do
+ expect(described_class.enabled?).to be_falsey
+ end
+ end
+ end
+
+ context "when reply by email is disabled" do
+ before do
+ stub_incoming_email_setting(enabled: false)
+ end
+
+ it "returns false" do
+ expect(described_class.enabled?).to be_falsey
+ end
+ end
+ end
+
+ context "self.reply_address" do
+ before do
+ stub_incoming_email_setting(address: "replies+%{key}@example.com")
+ end
+
+ it "returns the address with an interpolated reply key" do
+ expect(described_class.reply_address("key")).to eq("replies+key@example.com")
+ end
+ end
+
+ context "self.key_from_address" do
+ before do
+ stub_incoming_email_setting(address: "replies+%{key}@example.com")
+ end
+
+ it "returns reply key" do
+ expect(described_class.key_from_address("replies+key@example.com")).to eq("key")
+ end
+ end
+end