Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Skip some non-Windows tests on Windows #2609

Merged
merged 2 commits into from Oct 9, 2019
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 4 additions & 0 deletions RELEASE.md
@@ -0,0 +1,4 @@
Release type: patch

Skip some tests (on Windows) that are un-able to pass on Windows due to the
difference in Windows vs Linux filesystems.
9 changes: 5 additions & 4 deletions pelican/tests/test_contents.py
Expand Up @@ -14,9 +14,10 @@
from pelican.contents import Article, Author, Category, Page, Static
from pelican.settings import DEFAULT_CONFIG
from pelican.signals import content_object_init
from pelican.tests.support import LoggedTestCase, get_context, get_settings,\
unittest
from pelican.utils import SafeDatetime, path_to_url, truncate_html_words
from pelican.tests.support import (LoggedTestCase, get_context, get_settings,
unittest)
from pelican.utils import (SafeDatetime, path_to_url, posixize_path,
truncate_html_words)


# generate one paragraph, enclosed with <p>
Expand Down Expand Up @@ -943,7 +944,7 @@ def test_not_save_as_draft(self):
source_path=os.path.join('dir', 'foo.jpg'),
context=self.settings.copy())

expected_save_as = os.path.join('dir', 'foo.jpg')
expected_save_as = posixize_path(os.path.join('dir', 'foo.jpg'))
self.assertEqual(static.status, 'draft')
self.assertEqual(static.save_as, expected_save_as)
self.assertEqual(static.url, path_to_url(expected_save_as))
19 changes: 16 additions & 3 deletions pelican/tests/test_generators.py
Expand Up @@ -1089,15 +1089,24 @@ def test_can_symlink_when_hardlink_not_possible(self):
os.mkdir(os.path.join(self.temp_output, "static"))
self.generator.fallback_to_symlinks = True
self.generator.generate_context()
self.generator.generate_output(None)
try:
self.generator.generate_output(None)
except OSError as e:
# On Windows, possibly others, due to not holding symbolic link
# privilege
self.skipTest(e)
self.assertTrue(os.path.islink(self.endfile))

def test_existing_symlink_is_considered_up_to_date(self):
self.settings['STATIC_CREATE_LINKS'] = True
with open(self.startfile, "w") as f:
f.write("staticcontent")
os.mkdir(os.path.join(self.temp_output, "static"))
os.symlink(self.startfile, self.endfile)
try:
os.symlink(self.startfile, self.endfile)
except OSError as e:
# On Windows, possibly others
self.skipTest(e)
staticfile = MagicMock()
staticfile.source_path = self.startfile
staticfile.save_as = self.endfile
Expand All @@ -1109,7 +1118,11 @@ def test_invalid_symlink_is_overwritten(self):
with open(self.startfile, "w") as f:
f.write("staticcontent")
os.mkdir(os.path.join(self.temp_output, "static"))
os.symlink("invalid", self.endfile)
try:
os.symlink("invalid", self.endfile)
except OSError as e:
# On Windows, possibly others
self.skipTest(e)
staticfile = MagicMock()
staticfile.source_path = self.startfile
staticfile.save_as = self.endfile
Expand Down
6 changes: 6 additions & 0 deletions pelican/tests/test_utils.py
Expand Up @@ -717,6 +717,8 @@ def test_turkish_locale(self):


class TestSanitisedJoin(unittest.TestCase):
@unittest.skipIf(platform == 'win32',
"Different filesystem root on Windows")
def test_detect_parent_breakout(self):
with six.assertRaisesRegex(
self,
Expand All @@ -727,6 +729,8 @@ def test_detect_parent_breakout(self):
"../test"
)

@unittest.skipIf(platform == 'win32',
"Different filesystem root on Windows")
def test_detect_root_breakout(self):
with six.assertRaisesRegex(
self,
Expand All @@ -737,6 +741,8 @@ def test_detect_root_breakout(self):
"/test"
)

@unittest.skipIf(platform == 'win32',
"Different filesystem root on Windows")
def test_pass_deep_subpaths(self):
self.assertEqual(
utils.sanitised_join(
Expand Down