From 180f1e7e19fa255d475992d3b5ed6c54df0350c4 Mon Sep 17 00:00:00 2001
From: Smriti Garg <sgarg@gitlab.com>
Date: Mon, 11 Jul 2022 08:54:50 +0000
Subject: [PATCH] Added specs for email_changed scenario

rubocop changes
---
 spec/mailers/devise_mailer_spec.rb | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/spec/mailers/devise_mailer_spec.rb b/spec/mailers/devise_mailer_spec.rb
index 2634d7c722bb9..360eb82792789 100644
--- a/spec/mailers/devise_mailer_spec.rb
+++ b/spec/mailers/devise_mailer_spec.rb
@@ -126,4 +126,34 @@
       is_expected.to have_link("Reset password", href: "#{Gitlab.config.gitlab.url}/users/password/edit?reset_password_token=faketoken")
     end
   end
+
+  describe '#email_changed' do
+    subject { described_class.email_changed(user, {}) }
+
+    let_it_be(:user) { create(:user) }
+
+    it_behaves_like 'an email sent from GitLab'
+
+    it 'is sent to the user' do
+      is_expected.to deliver_to user.email
+    end
+
+    it 'has the correct subject' do
+      is_expected.to have_subject 'Email Changed'
+    end
+
+    it 'greets the user' do
+      is_expected.to have_body_text /Hello, #{user.name}!/
+    end
+
+    context "email contains updated id" do
+      before do
+        user.update!(email: "new_email@test.com")
+      end
+
+      it 'includes changed email id' do
+        is_expected.to have_body_text /email is being changed to new_email@test.com./
+      end
+    end
+  end
 end
-- 
GitLab