From 80f4553d56e88c002a0085afdc8a33b9d0bf0202 Mon Sep 17 00:00:00 2001
From: Petri Lehtinen <petri@digip.org>
Date: Sat, 1 Sep 2012 14:25:48 +0300
Subject: [PATCH] #15802: Fix test logic in TestMaildir.test_create_tmp

---
 Lib/test/test_mailbox.py | 10 +++++-----
 Misc/NEWS                |  3 +++
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/Lib/test/test_mailbox.py b/Lib/test/test_mailbox.py
index 5069aac77d..b4a0fdfce5 100644
--- a/Lib/test/test_mailbox.py
+++ b/Lib/test/test_mailbox.py
@@ -660,13 +660,13 @@ class TestMaildir(TestMailbox, unittest.TestCase):
             self.assertTrue(match is not None, "Invalid file name: '%s'" % tail)
             groups = match.groups()
             if previous_groups is not None:
-                self.assertTrue(int(groups[0] >= previous_groups[0]),
+                self.assertGreaterEqual(int(groups[0]), int(previous_groups[0]),
                              "Non-monotonic seconds: '%s' before '%s'" %
                              (previous_groups[0], groups[0]))
-                self.assertTrue(int(groups[1] >= previous_groups[1]) or
-                             groups[0] != groups[1],
-                             "Non-monotonic milliseconds: '%s' before '%s'" %
-                             (previous_groups[1], groups[1]))
+                if int(groups[0]) == int(previous_groups[0]):
+                    self.assertGreaterEqual(int(groups[1]), int(previous_groups[1]),
+                                "Non-monotonic milliseconds: '%s' before '%s'" %
+                                (previous_groups[1], groups[1]))
                 self.assertTrue(int(groups[2]) == pid,
                              "Process ID mismatch: '%s' should be '%s'" %
                              (groups[2], pid))
diff --git a/Misc/NEWS b/Misc/NEWS
index 13e8b00129..0a35f0e527 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -352,6 +352,9 @@ Library
 Tests
 -----
 
+- Issue #15802: Fix test logic in TestMaildir.test_create_tmp. Patch
+  by Serhiy Storchaka.
+
 - Issue #15765: Extend a previous fix to Solaris and OpenBSD for quirky
   getcwd() behaviour (issue #9185) to NetBSD as well.
 
-- 
2.40.0