Fix #3438: update timestamp certainly to ensure test condition

This commit is contained in:
Takeshi KOMIYA 2017-02-24 02:11:46 +09:00
parent b352927b37
commit 13a48d330c
2 changed files with 11 additions and 3 deletions

View File

@ -123,6 +123,12 @@ class path(text_type):
""" """
os.unlink(self) os.unlink(self)
def stat(self):
"""
Returns a stat of the file.
"""
return os.stat(self)
def utime(self, arg): def utime(self, arg):
os.utime(self, arg) os.utime(self, arg)

View File

@ -500,7 +500,8 @@ def test_gettext_dont_rebuild_mo(make_app, app_params, build_mo):
assert get_number_of_update_targets(app0) == 0 assert get_number_of_update_targets(app0) == 0
# When rewriting the timestamp of mo file, the number of documents to be # When rewriting the timestamp of mo file, the number of documents to be
# updated will be changed. # updated will be changed.
(app0.srcdir / 'xx' / 'LC_MESSAGES' / 'bom.mo').utime(None) mtime = (app0.srcdir / 'xx' / 'LC_MESSAGES' / 'bom.mo').stat().st_mtime
(app0.srcdir / 'xx' / 'LC_MESSAGES' / 'bom.mo').utime((mtime + 5, mtime + 5))
assert get_number_of_update_targets(app0) == 1 assert get_number_of_update_targets(app0) == 1
# Because doctree for gettext builder can not be shared with other builders, # Because doctree for gettext builder can not be shared with other builders,
@ -515,7 +516,7 @@ def test_gettext_dont_rebuild_mo(make_app, app_params, build_mo):
assert get_number_of_update_targets(app) == 0 assert get_number_of_update_targets(app) == 0
# Even if the timestamp of the mo file is updated, the number of documents # Even if the timestamp of the mo file is updated, the number of documents
# to be updated is 0. gettext builder does not rebuild because of mo update. # to be updated is 0. gettext builder does not rebuild because of mo update.
(app0.srcdir / 'xx' / 'LC_MESSAGES' / 'bom.mo').utime(None) (app0.srcdir / 'xx' / 'LC_MESSAGES' / 'bom.mo').utime((mtime + 10, mtime + 10))
assert get_number_of_update_targets(app) == 0 assert get_number_of_update_targets(app) == 0
@ -669,7 +670,8 @@ def test_html_rebuild_mo(app):
updated = app.env.update(app.config, app.srcdir, app.doctreedir, app) updated = app.env.update(app.config, app.srcdir, app.doctreedir, app)
assert len(updated) == 0 assert len(updated) == 0
(app.srcdir / 'xx' / 'LC_MESSAGES' / 'bom.mo').utime(None) mtime = (app.srcdir / 'xx' / 'LC_MESSAGES' / 'bom.mo').stat().st_mtime
(app.srcdir / 'xx' / 'LC_MESSAGES' / 'bom.mo').utime((mtime + 5, mtime + 5))
updated = app.env.update(app.config, app.srcdir, app.doctreedir, app) updated = app.env.update(app.config, app.srcdir, app.doctreedir, app)
assert len(updated) == 1 assert len(updated) == 1