diff --git a/spec/jekyll_seo_tag_spec.rb b/spec/jekyll_seo_tag_spec.rb
index 86e5ed9..8af81aa 100644
--- a/spec/jekyll_seo_tag_spec.rb
+++ b/spec/jekyll_seo_tag_spec.rb
@@ -173,7 +173,8 @@ describe Jekyll::SeoTag do
context 'twitter' do
context 'with site.twitter.username' do
- let(:site) { make_site('twitter' => { 'username' => 'jekyllrb' }) }
+ let(:site_twitter) { { 'username' => 'jekyllrb' } }
+ let(:site) { make_site('twitter' => site_twitter) }
context 'with page.author as a string' do
let(:page) { make_page('author' => 'benbalter') }
@@ -185,12 +186,52 @@ describe Jekyll::SeoTag do
expected = %r{}
expect(output).to match(expected)
end
+
+ context 'with an @' do
+ let(:page) { make_page('author' => '@benbalter') }
+
+ it 'outputs the twitter card' do
+ expected = %r{}
+ expect(output).to match(expected)
+ end
+ end
+
+ context 'with site.data.authors' do
+ let(:author_data) { {} }
+ let(:data) { { 'authors' => author_data } }
+ let(:site) { make_site('data' => data, 'twitter' => site_twitter) }
+
+ context 'with the author in site.data.authors' do
+ let(:author_data) { { 'benbalter' => { 'twitter' => 'test' } } }
+ it 'outputs the twitter card' do
+ expected = %r{}
+ expect(output).to match(expected)
+ end
+ end
+
+ context 'without the author in site.data.authors' do
+ it 'outputs the twitter card' do
+ expected = %r{}
+ expect(output).to match(expected)
+ end
+ end
+ end
end
- context 'with page.author as an object' do
+ context 'with page.author as a hash' do
let(:page) { make_page('author' => { 'twitter' => '@test' }) }
- it 'supports author data as an object' do
+ it 'supports author data as a hash' do
+ expected = %r{}
+ expect(output).to match(expected)
+ end
+ end
+
+ context 'with site.author as a hash' do
+ let(:author) { { 'twitter' => '@test' } }
+ let(:site) { make_site('author' => author, 'twitter' => site_twitter) }
+
+ it 'supports author data as an hash' do
expected = %r{}
expect(output).to match(expected)
end