require 'spec_helper' feature 'Message creation' do let!(:sender) { create :user } let!(:recipient) { create :user } background do sign_in_as sender end scenario 'User creates a message' do visit root_path within '.links' do click_link 'Messages' end expect(page).to have_content('Sent (0)') visit user_path(recipient) expect(page).to have_content(recipient.username) click_link 'Send PM' expect(page).to have_content('New Message') title = "This is my title" message = "This is my message" fill_in 'Title', with: title fill_in 'Text', with: message click_button 'Send Message' expect(page).to have_content('Message was successfully sent.') expect(page).to have_content(title) expect(page).to have_content(message) within '.links' do click_link 'Messages' end expect(page).to have_content('Sent (1)') within '#sent' do expect(page).to have_content(title) expect(page).to have_content(message) expect(page).to have_content(sender.username) expect(page).to have_content(recipient.username) end end end feature 'Message receiving' do let!(:message) { create :message } background do sign_in_as message.recipient end scenario 'User receives a message' do visit root_path within '.links' do expect(page).to have_content('(1)') click_link 'Messages' end expect(page).to have_content(message.title) expect(page).to have_content(message.text) expect(page).to have_content(message.sender.username) end end