From 3b8908c11470f63d846c631f26cf45f9a4b28663 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Sat, 15 Apr 2017 07:33:25 -0400 Subject: About page contact email (#1839) * Correct site_contact_email typo * Separate about more page into partials, add specs --- spec/views/about/_contact.html.haml_spec.rb | 38 +++++++++++++++++++++++++++++ spec/views/about/_links.html.haml_spec.rb | 21 ++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 spec/views/about/_contact.html.haml_spec.rb create mode 100644 spec/views/about/_links.html.haml_spec.rb (limited to 'spec/views') diff --git a/spec/views/about/_contact.html.haml_spec.rb b/spec/views/about/_contact.html.haml_spec.rb new file mode 100644 index 000000000..2a6decbce --- /dev/null +++ b/spec/views/about/_contact.html.haml_spec.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe 'about/_contact.html.haml' do + describe 'the contact account' do + it 'shows info when account is present' do + account = Account.new(username: 'admin') + contact = double(contact_account: account, site_contact_email: '') + render 'about/contact', contact: contact + + expect(rendered).to have_content('@admin') + end + + it 'does not show info when account is missing' do + contact = double(contact_account: nil, site_contact_email: '') + render 'about/contact', contact: contact + + expect(rendered).not_to have_content('@') + end + end + + describe 'the contact email' do + it 'show info when email is present' do + contact = double(site_contact_email: 'admin@example.com', contact_account: nil) + render 'about/contact', contact: contact + + expect(rendered).to have_content('admin@example.com') + end + + it 'does not show info when email is missing' do + contact = double(site_contact_email: nil, contact_account: nil) + render 'about/contact', contact: contact + + expect(rendered).not_to have_content(I18n.t('about.business_email')) + end + end +end diff --git a/spec/views/about/_links.html.haml_spec.rb b/spec/views/about/_links.html.haml_spec.rb new file mode 100644 index 000000000..5d3950dce --- /dev/null +++ b/spec/views/about/_links.html.haml_spec.rb @@ -0,0 +1,21 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe 'about/_links.html.haml' do + it 'does not show sign in link when signed in' do + allow(view).to receive(:user_signed_in?).and_return(true) + render + + expect(rendered).to have_content(I18n.t('about.get_started')) + expect(rendered).not_to have_content(I18n.t('auth.login')) + end + + it 'shows sign in link when signed out' do + allow(view).to receive(:user_signed_in?).and_return(false) + render + + expect(rendered).to have_content(I18n.t('about.get_started')) + expect(rendered).to have_content(I18n.t('auth.login')) + end +end -- cgit