* Ref #24 linkedin and github social link in author page and article page -test case for that - BaseTest added * Ref #24 icon to link since linkedin and github is not present * article color fix
471 lines
No EOL
19 KiB
Python
471 lines
No EOL
19 KiB
Python
# -*- coding: utf-8 -*-
|
|
from __future__ import unicode_literals
|
|
|
|
import locale
|
|
from shutil import copy, rmtree
|
|
|
|
from support import (get_my_settings, unittest, BaseTest, CUR_DIR, CONTENT_DIR, OUTPUT_DIR)
|
|
|
|
def setUpModule():
|
|
print("setup module")
|
|
|
|
def tearDownModule():
|
|
print("teardown module")
|
|
try:
|
|
rmtree(OUTPUT_DIR)
|
|
except OSError, e:
|
|
print ("Error: %s - %s." % (e.filename,e.strerror))
|
|
|
|
class ArticleCoverImageTest(unittest.TestCase, BaseTest):
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
print("setUpClass")
|
|
|
|
@classmethod
|
|
def tearDownClass(cls):
|
|
print("tearDownClass")
|
|
|
|
def setUp(self):
|
|
self.initSettings()
|
|
|
|
def tearDown(self):
|
|
locale.setlocale(locale.LC_ALL, self.old_locale)
|
|
|
|
def test_article_cover(self):
|
|
self.settings['SITEURL']="http://www.example.com"
|
|
rstPath="content/article_with_cover_image.rst"
|
|
result, soup = self.gen_article_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+result.cover in selected["style"])
|
|
|
|
def test_article_header_cover(self):
|
|
self.settings['HEADER_COVER']='/assets/images/header_cover.jpg'
|
|
rstPath="content/article_without_cover.rst"
|
|
result, soup = self.gen_article_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings['HEADER_COVER'] in selected["style"])
|
|
|
|
def test_article_header_http_cover(self):
|
|
self.settings['HEADER_COVER']='http://example.com/cover.jpg'
|
|
rstPath="content/article_without_cover.rst"
|
|
result, soup = self.gen_article_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['HEADER_COVER'] in selected["style"])
|
|
|
|
def test_article_theme_cover(self):
|
|
rstPath="content/article_without_cover.rst"
|
|
result, soup = self.gen_article_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue("/theme/images/post-bg.jpg" in selected["style"])
|
|
|
|
def test_article_header_color(self):
|
|
self.settings['HEADER_COLOR']='blue'
|
|
rstPath="content/article_without_cover.rst"
|
|
result, soup = self.gen_article_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['HEADER_COLOR'] in selected["style"])
|
|
|
|
def test_article_http_cover(self):
|
|
rstPath="content/article_with_http_cover_image.rst"
|
|
result, soup = self.gen_article_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(result.cover in selected["style"])
|
|
|
|
def test_article_og_cover(self):
|
|
rstPath="content/article_with_og_image.rst"
|
|
result, soup = self.gen_article_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(result.og_image in selected["style"])
|
|
|
|
class PageCoverImageTest(unittest.TestCase, BaseTest):
|
|
|
|
def setUp(self):
|
|
self.initSettings()
|
|
|
|
def tearDown(self):
|
|
locale.setlocale(locale.LC_ALL, self.old_locale)
|
|
|
|
def test_page_cover(self):
|
|
self.settings['SITEURL']="http://www.example.com"
|
|
rstPath="content/pages/page_with_cover_image.rst"
|
|
result, soup = self.gen_page_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+result.cover in selected["style"])
|
|
|
|
def test_page_header_cover(self):
|
|
self.settings['HEADER_COVER']='/assets/images/header_cover.jpg'
|
|
rstPath="content/pages/page_without_cover_image.rst"
|
|
result, soup = self.gen_page_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings['HEADER_COVER'] in selected["style"])
|
|
|
|
def test_page_header_http_cover(self):
|
|
self.settings['HEADER_COVER']='http://example.com/cover.jpg'
|
|
rstPath="content/pages/page_without_cover_image.rst"
|
|
result, soup = self.gen_page_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['HEADER_COVER'] in selected["style"])
|
|
|
|
def test_page_theme_cover(self):
|
|
rstPath="content/pages/page_without_cover_image.rst"
|
|
result, soup = self.gen_page_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue("/theme/images/post-bg.jpg" in selected["style"])
|
|
|
|
def test_page_header_color(self):
|
|
self.settings['HEADER_COLOR']='blue'
|
|
rstPath="content/pages/page_without_cover_image.rst"
|
|
result, soup = self.gen_page_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['HEADER_COLOR'] in selected["style"])
|
|
|
|
def test_page_http_cover(self):
|
|
rstPath="content/pages/page_with_http_cover_image.rst"
|
|
result, soup = self.gen_page_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(result.cover in selected["style"])
|
|
|
|
def test_page_og_cover(self):
|
|
rstPath="content/pages/page_with_og_image.rst"
|
|
result, soup = self.gen_page_and_html_from_rst(rstPath)
|
|
selected = soup.find(name="div", attrs={"class": "post-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(result.og_image in selected["style"])
|
|
|
|
class TagCoverImageTest(unittest.TestCase, BaseTest):
|
|
|
|
def setUp(self):
|
|
self.initSettings()
|
|
|
|
def tearDown(self):
|
|
locale.setlocale(locale.LC_ALL, self.old_locale)
|
|
|
|
def test_footag_theme_cover(self):
|
|
result, soup = self.gen_tag_and_html_from_name("footag")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue("/theme/images/post-bg.jpg" in selected["style"])
|
|
|
|
def test_footag_cover(self):
|
|
tagName = "footag"
|
|
self.settings['HEADER_COVERS_BY_TAG'] = {
|
|
tagName: "/assets/images/foo_tag_cover.jpg"
|
|
}
|
|
result, soup = self.gen_tag_and_html_from_name(tagName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings['HEADER_COVERS_BY_TAG'][tagName] in selected["style"])
|
|
|
|
def test_footag_http_cover(self):
|
|
tagName = "footag"
|
|
self.settings['HEADER_COVERS_BY_TAG'] = {
|
|
tagName: "http://examble.com/cover.jpg"
|
|
}
|
|
result, soup = self.gen_tag_and_html_from_name(tagName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['HEADER_COVERS_BY_TAG'][tagName] in selected["style"])
|
|
|
|
def test_footag_header_cover(self):
|
|
self.settings['SITEURL'] = "http://example.com"
|
|
self.settings["HEADER_COVER"] = "/assets/images/header_cover.jpg"
|
|
result, soup = self.gen_tag_and_html_from_name("footag")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_footag_header_http_cover(self):
|
|
self.settings["HEADER_COVER"] = "http://example.com/cover.jpg"
|
|
result, soup = self.gen_tag_and_html_from_name("footag")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_footag_header_color(self):
|
|
self.settings["HEADER_COLOR"] = "red"
|
|
result, soup = self.gen_tag_and_html_from_name("footag")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COLOR"] in selected["style"])
|
|
|
|
def test_bartag_theme_cover(self):
|
|
result, soup = self.gen_tag_and_html_from_name("bartag")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue("/theme/images/post-bg.jpg" in selected["style"])
|
|
|
|
def test_bartag_cover(self):
|
|
tagName = "bartag"
|
|
self.settings['HEADER_COVERS_BY_TAG'] = {
|
|
tagName: "/assets/images/bar_tag_cover.jpg"
|
|
}
|
|
result, soup = self.gen_tag_and_html_from_name(tagName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings['HEADER_COVERS_BY_TAG'][tagName] in selected["style"])
|
|
|
|
def test_bartag_http_cover(self):
|
|
tagName = "bartag"
|
|
self.settings['HEADER_COVERS_BY_TAG'] = {
|
|
tagName: "http://examble.com/cover.jpg"
|
|
}
|
|
result, soup = self.gen_tag_and_html_from_name(tagName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['HEADER_COVERS_BY_TAG'][tagName] in selected["style"])
|
|
|
|
def test_bartag_header_cover(self):
|
|
self.settings['SITEURL'] = "http://example.com"
|
|
self.settings["HEADER_COVER"] = "/assets/images/header_cover.jpg"
|
|
result, soup = self.gen_tag_and_html_from_name("bartag")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_bartag_header_http_cover(self):
|
|
self.settings["HEADER_COVER"] = "http://example.com/cover.jpg"
|
|
result, soup = self.gen_tag_and_html_from_name("bartag")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_bartag_header_color(self):
|
|
self.settings["HEADER_COLOR"] = "red"
|
|
result, soup = self.gen_tag_and_html_from_name("bartag")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COLOR"] in selected["style"])
|
|
|
|
|
|
class CategoryCoverImageTest(unittest.TestCase, BaseTest):
|
|
|
|
def setUp(self):
|
|
self.initSettings()
|
|
|
|
def tearDown(self):
|
|
locale.setlocale(locale.LC_ALL, self.old_locale)
|
|
|
|
def test_foo_theme_cover(self):
|
|
result, soup = self.gen_category_and_html_from_name("foo")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue("/theme/images/post-bg.jpg" in selected["style"])
|
|
|
|
def test_foo_cover(self):
|
|
categoryName = "foo"
|
|
self.settings['HEADER_COVERS_BY_CATEGORY'] = {
|
|
categoryName: "/assets/images/foo_category_cover.jpg"
|
|
}
|
|
result, soup = self.gen_category_and_html_from_name(categoryName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings['HEADER_COVERS_BY_CATEGORY'][categoryName] in selected["style"])
|
|
|
|
def test_foo_http_cover(self):
|
|
categoryName = "foo"
|
|
self.settings['HEADER_COVERS_BY_CATEGORY'] = {
|
|
categoryName: "http://examble.com/cover.jpg"
|
|
}
|
|
result, soup = self.gen_category_and_html_from_name(categoryName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['HEADER_COVERS_BY_CATEGORY'][categoryName] in selected["style"])
|
|
|
|
def test_foo_header_cover(self):
|
|
self.settings['SITEURL'] = "http://example.com"
|
|
self.settings["HEADER_COVER"] = "/assets/images/header_cover.jpg"
|
|
result, soup = self.gen_category_and_html_from_name("foo")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_foo_header_http_cover(self):
|
|
self.settings["HEADER_COVER"] = "http://example.com/cover.jpg"
|
|
result, soup = self.gen_category_and_html_from_name("foo")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_foo_header_color(self):
|
|
self.settings["HEADER_COLOR"] = "red"
|
|
result, soup = self.gen_category_and_html_from_name("foo")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COLOR"] in selected["style"])
|
|
|
|
def test_bar_theme_cover(self):
|
|
result, soup = self.gen_category_and_html_from_name("bar")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue("/theme/images/post-bg.jpg" in selected["style"])
|
|
|
|
def test_bar_cover(self):
|
|
categoryName = "bar"
|
|
self.settings['HEADER_COVERS_BY_CATEGORY'] = {
|
|
categoryName: "/assets/images/bar_category_cover.jpg"
|
|
}
|
|
result, soup = self.gen_category_and_html_from_name(categoryName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings['HEADER_COVERS_BY_CATEGORY'][categoryName] in selected["style"])
|
|
|
|
def test_bar_http_cover(self):
|
|
categoryName = "bar"
|
|
self.settings['HEADER_COVERS_BY_CATEGORY'] = {
|
|
categoryName: "http://examble.com/cover.jpg"
|
|
}
|
|
result, soup = self.gen_category_and_html_from_name(categoryName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['HEADER_COVERS_BY_CATEGORY'][categoryName] in selected["style"])
|
|
|
|
def test_bar_header_cover(self):
|
|
self.settings['SITEURL'] = "http://example.com"
|
|
self.settings["HEADER_COVER"] = "/assets/images/header_cover.jpg"
|
|
result, soup = self.gen_category_and_html_from_name("bar")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_bar_header_http_cover(self):
|
|
self.settings["HEADER_COVER"] = "http://example.com/cover.jpg"
|
|
result, soup = self.gen_category_and_html_from_name("bar")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_bar_header_color(self):
|
|
self.settings["HEADER_COLOR"] = "red"
|
|
result, soup = self.gen_category_and_html_from_name("bar")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COLOR"] in selected["style"])
|
|
|
|
class AuthorCoverImageTest(unittest.TestCase, BaseTest):
|
|
|
|
def setUp(self):
|
|
self.initSettings()
|
|
|
|
def tearDown(self):
|
|
locale.setlocale(locale.LC_ALL, self.old_locale)
|
|
|
|
def test_arul_theme_cover(self):
|
|
result, soup = self.gen_author_and_html_from_name("arul")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue("/theme/images/post-bg.jpg" in selected["style"])
|
|
|
|
def test_arul_cover(self):
|
|
authorName = "arul"
|
|
self.settings['AUTHORS_BIO'] = {
|
|
authorName: {
|
|
'cover': "/assets/images/arul_author_cover.jpg"
|
|
}
|
|
}
|
|
result, soup = self.gen_author_and_html_from_name(authorName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings['AUTHORS_BIO'][authorName]['cover'] in selected["style"])
|
|
|
|
def test_arul_http_cover(self):
|
|
authorName = "arul"
|
|
self.settings['AUTHORS_BIO'] = {
|
|
authorName: {
|
|
'cover': "http://examble.com/cover.jpg"
|
|
}
|
|
}
|
|
result, soup = self.gen_author_and_html_from_name(authorName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['AUTHORS_BIO'][authorName]['cover'] in selected["style"])
|
|
|
|
def test_arul_header_cover(self):
|
|
self.settings['SITEURL'] = "http://example.com"
|
|
self.settings["HEADER_COVER"] = "/assets/images/header_cover.jpg"
|
|
result, soup = self.gen_author_and_html_from_name("arul")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_arul_header_http_cover(self):
|
|
self.settings["HEADER_COVER"] = "http://example.com/cover.jpg"
|
|
result, soup = self.gen_author_and_html_from_name("arul")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_arul_header_color(self):
|
|
self.settings["HEADER_COLOR"] = "red"
|
|
result, soup = self.gen_author_and_html_from_name("arul")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COLOR"] in selected["style"])
|
|
|
|
def test_raj_theme_cover(self):
|
|
result, soup = self.gen_author_and_html_from_name("raj")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue("/theme/images/post-bg.jpg" in selected["style"])
|
|
|
|
def test_raj_cover(self):
|
|
authorName = "raj"
|
|
self.settings['AUTHORS_BIO'] = {
|
|
authorName: {
|
|
'cover': "/assets/images/raj_author_cover.jpg"
|
|
}
|
|
}
|
|
result, soup = self.gen_author_and_html_from_name(authorName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings['AUTHORS_BIO'][authorName]['cover'] in selected["style"])
|
|
|
|
def test_raj_http_cover(self):
|
|
authorName = "raj"
|
|
self.settings['AUTHORS_BIO'] = {
|
|
authorName: {
|
|
'cover': "http://examble.com/cover.jpg"
|
|
}
|
|
}
|
|
result, soup = self.gen_author_and_html_from_name(authorName)
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['AUTHORS_BIO'][authorName]['cover'] in selected["style"])
|
|
|
|
def test_raj_header_cover(self):
|
|
self.settings['SITEURL'] = "http://example.com"
|
|
self.settings["HEADER_COVER"] = "/assets/images/header_cover.jpg"
|
|
result, soup = self.gen_author_and_html_from_name("raj")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings['SITEURL']+'/'+self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_raj_header_http_cover(self):
|
|
self.settings["HEADER_COVER"] = "http://example.com/cover.jpg"
|
|
result, soup = self.gen_author_and_html_from_name("raj")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COVER"] in selected["style"])
|
|
|
|
def test_raj_header_color(self):
|
|
self.settings["HEADER_COLOR"] = "red"
|
|
result, soup = self.gen_author_and_html_from_name("raj")
|
|
selected = soup.find(name="div", attrs={"class": "blog-cover cover"})
|
|
# Assertion
|
|
self.assertTrue(self.settings["HEADER_COLOR"] in selected["style"])
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main() |