Issue 3051: make pure python code pass the same tests as the C version.
diff --git a/Lib/heapq.py b/Lib/heapq.py
index 464663a..3fe6b46 100644
--- a/Lib/heapq.py
+++ b/Lib/heapq.py
@@ -212,11 +212,10 @@
         pop = result.pop
         los = result[-1]    # los --> Largest of the nsmallest
         for elem in it:
-            if los <= elem:
-                continue
-            insort(result, elem)
-            pop()
-            los = result[-1]
+            if elem < los:
+                insort(result, elem)
+                pop()
+                los = result[-1]
         return result
     # An alternative approach manifests the whole iterable in memory but
     # saves comparisons by heapifying all at once.  Also, saves time