aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJay Satiro <raysatiro@yahoo.com>2020-04-07 00:50:11 -0400
committerJay Satiro <raysatiro@yahoo.com>2020-04-11 02:51:50 -0400
commit17c18fbc3015b5dc0580d16a4ff5bcf2fd88b449 (patch)
tree1364d44a00b67d12099577a7d21a8fc873933ac6 /tests
parent8c92f7e82fcdd2fb17c90ecdfea6134d7a8a8185 (diff)
test1148: tolerate progress updates better (again)
- Ignore intermediate progress updates. - Support locales that use a character other than period as decimal separator (eg 100,0%). test1148 checks that the progress finishes at 100% and has the right bar width. Prior to this change the test assumed that the only progress reported for such a quick transfer was 100%, however in rare instances (like in the CI where transfer time can slow considerably) there may be intermediate updates. For example, below is stderrlog1148 from a failed CI run with explicit \r and \n added (it is one line; broken up so that it's easier to understand). \r \r################################## 48.3% \r######################################################################## 100.0% \n Closes https://github.com/curl/curl/pull/5194
Diffstat (limited to 'tests')
-rw-r--r--tests/data/test114814
1 files changed, 7 insertions, 7 deletions
diff --git a/tests/data/test1148 b/tests/data/test1148
index ba498698a..c4232f083 100644
--- a/tests/data/test1148
+++ b/tests/data/test1148
@@ -37,9 +37,6 @@ progress-bar
<command>
http://%HOSTIP:%HTTPPORT/1148 -# --stderr log/stderrlog1148
</command>
-<precheck>
-perl -e '$ENV{"LC_NUMERIC"} = "en_US.UTF-8"; print "Test requires point as decimal separator" if system("./libtest/chkdecimalpoint");'
-</precheck>
<setenv>
LC_ALL=
LC_NUMERIC=en_US.UTF-8
@@ -57,13 +54,16 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
-# This allows the last 4 letters of the bar to get updated without it
-# matters. We're mostly checking the width of it anyway.
+
+# Check that the progress finished at 100% and has the right bar width.
+# Note the dot in 100.0% is regex to match any character since different
+# locales use different separators.
<file name="log/stderrlog1148" mode="text">
- bar 100.0%
+correct
</file>
<stripfile>
-s/####################################################################..../bar/
+s/.*\r#{72} 100.0%/correct/
</stripfile>
+
</verify>
</testcase>