23
23
return util.create_slug(*args)
25
def test_create_slug_ascii(self, mock_config):
25
def test_ascii(self, mock_config):
26
26
"""create_slug returns expected result for ASCII title
28
28
mock_config.site = MagicMock(slugify=None, slug_unicode=None)
30
30
slug = self._call_fut('Foo Bar!')
31
31
self.assertEqual(slug, 'foo-bar')
33
def test_create_slug_unidecode(self, mock_config):
33
def test_unidecode(self, mock_config):
34
34
"""create_slug returns expected ASCII result for Unicode title
36
36
mock_config.site = MagicMock(slugify=None, slug_unicode=None)
38
38
slug = self._call_fut(six.u('\u5317\u4EB0'))
39
39
self.assertEqual(slug, 'bei-jing')
41
def test_create_slug_unicode(self, mock_config):
41
def test_unicode(self, mock_config):
42
42
"""create_slug returns expected Unicode result for Unicode title
44
44
mock_config.site = MagicMock(slugify=None, slug_unicode=True)
46
46
slug = self._call_fut(six.u('\u5317\u4EB0'))
47
47
self.assertEqual(slug, six.u('\u5317\u4EB0'))
49
def test_create_slug_user_site_slugify(self, mock_config):
49
def test_user_site_slugify(self, mock_config):
50
50
"""create_slug uses user-defined config.site.slugify function
52
52
mock_config.site = MagicMock(slugify=lambda s: 'bar-foo')
54
54
slug = self._call_fut('Foo Bar!')
55
55
self.assertEqual(slug, 'bar-foo')
57
def test_create_slug_user_blog_slugify(self, mock_config):
57
def test_user_blog_slugify(self, mock_config):
58
58
"""create_slug uses user-defined config.blog.slugify function
60
60
mock_config.site = MagicMock(slugify=None)
72
72
return util.site_path_helper(*args, **kwargs)
74
def test_site_path_helper_root_path(self, mock_config):
74
def test_root_path(self, mock_config):
75
75
"""site_path_helper returns expected path in site root
77
77
mock_config.site.url = 'http://www.blogofile.com'
78
78
path = self._call_fut('blog')
79
79
self.assertEqual(path, '/blog')
81
def test_site_path_helper_subdir_path(self, mock_config):
81
def test_subdir_path(self, mock_config):
82
82
"""site_path_helper returns expected path in site subdir
84
84
mock_config.site.url = 'http://www.blogofile.com/~ryan/site1'
85
85
path = self._call_fut('blog')
86
86
self.assertEqual(path, '/~ryan/site1/blog')
88
def test_site_path_helper_leading_slash(self, mock_config):
88
def test_leading_slash(self, mock_config):
89
89
"""site_path_helper returns expected path when arg has leading slash
91
91
mock_config.site.url = 'http://www.blogofile.com/~ryan/site1'
92
92
path = self._call_fut('/blog')
93
93
self.assertEqual(path, '/~ryan/site1/blog')
95
def test_site_path_helper_multiple_args(self, mock_config):
95
def test_multiple_args(self, mock_config):
96
96
"""site_path_helper returns expected path for multiple args
98
98
mock_config.site.url = 'http://www.blogofile.com/~ryan/site1'
99
99
path = self._call_fut('blog', 'category1')
100
100
self.assertEqual(path, '/~ryan/site1/blog/category1')
102
def test_site_path_helper_trailing_slash(self, mock_config):
102
def test_trailing_slash(self, mock_config):
103
103
"""site_path_helper returns path w/ trailing slash when requested
105
105
mock_config.site.url = 'http://www.blogofile.com'