Finish _participants view spec

This commit is contained in:
Luke "Jared" Bennett 2017-09-20 17:18:23 +01:00
parent 38c7229156
commit 5629d46878
No known key found for this signature in database
GPG Key ID: 402ED51FB5D306C2
1 changed files with 7 additions and 22 deletions

View File

@ -1,41 +1,26 @@
require 'spec_helper'
require 'nokogiri'
def expect_lazy_load_image(author)
avatar = author.find('img')
expect(avatar[:src]).to eql?('data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==')
expect(avatar[:"data-src"]).to exist
end
describe 'shared/issuable/_participants.html.haml' do
let(:project) { create(:project) }
let(:participants) { create_list(:user, 10) }
let(:participants) { create_list(:user, 100) }
before do
allow(view).to receive_messages(project: project,
participants: participants)
end
it 'displays' do
it 'renders lazy loaded avatars' do
render 'shared/issuable/participants'
html = Nokogiri::HTML(rendered)
authors = html.css('.participants-author')
p authors
p authors.size
visible_authors = authors[0..6]
hidden_authors = authors[7..-1]
avatars = html.css('.participants-author img')
visible_authors.each do |author|
expect(author).not_to have_selector('js-participants-hidden')
expect_lazy_load_image(author)
end
hidden_authors.each do |author|
expect(author).to have_selector('js-participants-hidden')
expect_lazy_load_image(author)
avatars.each do |avatar|
expect(avatar[:class]).to include('lazy')
expect(avatar[:src]).to eql('data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==')
expect(avatar[:"data-src"]).to match('http://www.gravatar.com/avatar/')
end
end
end