test-revset-age: migrate to Python and stablize it
Summary:
The test was flaky:
--- test-revset-age.t
+++ test-revset-age.t.err
@@ -13,7 +13,6 @@
Check age ranges
$ hg log -T '{rev} {desc}\n' -r 'age("<30")'
- 5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<7m30s")'
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
@@ -22,7 +21,6 @@
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
@@ -53,10 +51,10 @@
$ hg log -T '{rev} {desc}\n' -r 'age(">1d")'
0 Changeset 31536000 seconds ago
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age(">365d")'
0 Changeset 31536000 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<64m")'
- 3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<60m500s")'
@@ -87,16 +85,16 @@
hg: parse error: invalid age in age range: 5h-10d
[255]
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., "<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(.^, "<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., "1d-20d")'
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., ">1d")'
0 Changeset 31536000 seconds ago
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
Translate it to Python and patch `time.time` to stablize it.
Reviewed By: xavierd
Differential Revision: D16396479
fbshipit-source-id: 553bfe36094b2a2cbe939319606a627323cfc9eb
2019-07-20 05:31:51 +03:00
|
|
|
# Copyright (c) Facebook, Inc. and its affiliates.
|
|
|
|
#
|
|
|
|
# This software may be used and distributed according to the terms of the
|
|
|
|
# GNU General Public License version 2 or any later version.
|
|
|
|
# isort:skip_file
|
|
|
|
|
|
|
|
from __future__ import absolute_import
|
|
|
|
|
2020-11-11 08:23:10 +03:00
|
|
|
import time
|
2020-01-31 05:40:49 +03:00
|
|
|
|
test-revset-age: migrate to Python and stablize it
Summary:
The test was flaky:
--- test-revset-age.t
+++ test-revset-age.t.err
@@ -13,7 +13,6 @@
Check age ranges
$ hg log -T '{rev} {desc}\n' -r 'age("<30")'
- 5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<7m30s")'
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
@@ -22,7 +21,6 @@
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
@@ -53,10 +51,10 @@
$ hg log -T '{rev} {desc}\n' -r 'age(">1d")'
0 Changeset 31536000 seconds ago
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age(">365d")'
0 Changeset 31536000 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<64m")'
- 3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<60m500s")'
@@ -87,16 +85,16 @@
hg: parse error: invalid age in age range: 5h-10d
[255]
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., "<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(.^, "<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., "1d-20d")'
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., ">1d")'
0 Changeset 31536000 seconds ago
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
Translate it to Python and patch `time.time` to stablize it.
Reviewed By: xavierd
Differential Revision: D16396479
fbshipit-source-id: 553bfe36094b2a2cbe939319606a627323cfc9eb
2019-07-20 05:31:51 +03:00
|
|
|
from edenscm.mercurial.extensions import wrappedfunction
|
2020-11-11 08:23:10 +03:00
|
|
|
from testutil.dott import feature, sh, testtmp # noqa: F401
|
test-revset-age: migrate to Python and stablize it
Summary:
The test was flaky:
--- test-revset-age.t
+++ test-revset-age.t.err
@@ -13,7 +13,6 @@
Check age ranges
$ hg log -T '{rev} {desc}\n' -r 'age("<30")'
- 5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<7m30s")'
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
@@ -22,7 +21,6 @@
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
@@ -53,10 +51,10 @@
$ hg log -T '{rev} {desc}\n' -r 'age(">1d")'
0 Changeset 31536000 seconds ago
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age(">365d")'
0 Changeset 31536000 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<64m")'
- 3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'age("<60m500s")'
@@ -87,16 +85,16 @@
hg: parse error: invalid age in age range: 5h-10d
[255]
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., "<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
5 Changeset 5 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(.^, "<1d")'
- 2 Changeset 86369 seconds ago
3 Changeset 3800 seconds ago
4 Changeset 420 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., "1d-20d")'
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
$ hg log -T '{rev} {desc}\n' -r 'ancestorsaged(., ">1d")'
0 Changeset 31536000 seconds ago
1 Changeset 86401 seconds ago
+ 2 Changeset 86369 seconds ago
Translate it to Python and patch `time.time` to stablize it.
Reviewed By: xavierd
Differential Revision: D16396479
fbshipit-source-id: 553bfe36094b2a2cbe939319606a627323cfc9eb
2019-07-20 05:31:51 +03:00
|
|
|
|
|
|
|
|
|
|
|
# Setup repo
|
|
|
|
sh.newrepo()
|
|
|
|
|
|
|
|
now = int(time.time())
|
|
|
|
|
|
|
|
sh % "touch file1"
|
|
|
|
sh % "hg add file1"
|
|
|
|
|
|
|
|
for delta in [31536000, 86401, 86369, 3800, 420, 5]:
|
|
|
|
committime = now - delta
|
|
|
|
open("file1", "w").write("%s\n" % delta)
|
|
|
|
sh.hg("commit", "-d", "%s 0" % committime, "-m", "Changeset %s seconds ago" % delta)
|
|
|
|
|
|
|
|
with wrappedfunction(time, "time", lambda orig: now + 1):
|
|
|
|
# Check age ranges
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<30\")'" == "5 Changeset 5 seconds ago"
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<7m30s\")'" == r"""
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<1h4m\")'" == r"""
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<1d\")'" == r"""
|
|
|
|
2 Changeset 86369 seconds ago
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<364d23h59m\")'" == r"""
|
|
|
|
1 Changeset 86401 seconds ago
|
|
|
|
2 Changeset 86369 seconds ago
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\">1s\")'" == r"""
|
|
|
|
0 Changeset 31536000 seconds ago
|
|
|
|
1 Changeset 86401 seconds ago
|
|
|
|
2 Changeset 86369 seconds ago
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\">1m\")'" == r"""
|
|
|
|
0 Changeset 31536000 seconds ago
|
|
|
|
1 Changeset 86401 seconds ago
|
|
|
|
2 Changeset 86369 seconds ago
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\">1h\")'" == r"""
|
|
|
|
0 Changeset 31536000 seconds ago
|
|
|
|
1 Changeset 86401 seconds ago
|
|
|
|
2 Changeset 86369 seconds ago
|
|
|
|
3 Changeset 3800 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\">1d\")'" == r"""
|
|
|
|
0 Changeset 31536000 seconds ago
|
|
|
|
1 Changeset 86401 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\">365d\")'" == "0 Changeset 31536000 seconds ago"
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<64m\")'" == r"""
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<60m500s\")'" == r"""
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<1h500s\")'" == r"""
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"1h-20d\")'" == r"""
|
|
|
|
1 Changeset 86401 seconds ago
|
|
|
|
2 Changeset 86369 seconds ago
|
|
|
|
3 Changeset 3800 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"invalid\")'" == r"""
|
|
|
|
hg: parse error: invalid age range
|
|
|
|
[255]"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"1h\")'" == r"""
|
|
|
|
hg: parse error: invalid age range
|
|
|
|
[255]"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"<3m2h\")'" == r"""
|
|
|
|
hg: parse error: invalid age in age range: 3m2h
|
|
|
|
[255]"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\">3h2h\")'" == r"""
|
|
|
|
hg: parse error: invalid age in age range: 3h2h
|
|
|
|
[255]"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'age(\"1h-5h-10d\")'" == r"""
|
|
|
|
hg: parse error: invalid age in age range: 5h-10d
|
|
|
|
[255]"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'ancestorsaged(., \"<1d\")'" == r"""
|
|
|
|
2 Changeset 86369 seconds ago
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago
|
|
|
|
5 Changeset 5 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'ancestorsaged(.^, \"<1d\")'" == r"""
|
|
|
|
2 Changeset 86369 seconds ago
|
|
|
|
3 Changeset 3800 seconds ago
|
|
|
|
4 Changeset 420 seconds ago"""
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'ancestorsaged(., \"1d-20d\")'" == "1 Changeset 86401 seconds ago"
|
|
|
|
sh % "hg log -T '{rev} {desc}\\n' -r 'ancestorsaged(., \">1d\")'" == r"""
|
|
|
|
0 Changeset 31536000 seconds ago
|
|
|
|
1 Changeset 86401 seconds ago"""
|