From: Junio C Hamano <gitster@pobox.com>
To: Tuomas Ahola <taahol@utu.fi>
Cc: <git@vger.kernel.org>, Jeff King <peff@peff.net>
Subject: Re: [PATCH v2 1/3] t0006: add support for approxidate test date adjustment
Date: Wed, 13 May 2026 01:34:50 +0900 [thread overview]
Message-ID: <xmqqfr3wlh79.fsf@gitster.g> (raw)
In-Reply-To: <20260512145430.13212-2-taahol@utu.fi> (Tuomas Ahola's message of "Tue, 12 May 2026 17:54:28 +0300")
Tuomas Ahola <taahol@utu.fi> writes:
> check_approxidate() {
> + old_date=$GIT_TEST_DATE_NOW
> + GIT_TEST_DATE_NOW=$(($old_date${4:-+0}*60*60)); export GIT_TEST_DATE_NOW
> + caption=$1
> + if [ ! -z $4 ]; then
> + caption="$caption; offset $4h"
> + fi
As you are not doing the test-date-now adjustment when $4 is not
given, wouldn't it be a lot easier to read if you did something like
old_date=$GIT_TEST_DATE_NOW
if test -n "$4"
then
# the convention for $4 is a bit weird in that it
# comes with its own +/- operator in front.
GIT_TEST_DATE_NOW=$(( $old_date $4 * 60 * 60 ))
caption="$1; offset $4h"
else
caption=$1
fi
instead? Other two minor points are
- Documentation/SubmittingPatches prefers an explicit "test" over
"[ ... ]", and have "then", "else", etc. on their own lines.
- As you never "unset" GIT_TEST_DATE_NOW, you do not have to keep
exporting it. It is not like there are two variables (one for
shell, the other for environment) and every time you set the
shell one you need to export to reflect the value to the
environment one. Rather, a single "export" marks a shell
variable and every time it changes value, it is updated in the
environment as well.
> echo "$1 -> $2 +0000" >expect
> - test_expect_${3:-success} "parse approxidate ($1)" "
> + test_expect_${3:-success} "parse approxidate ($caption)" "
> test-tool date approxidate '$1' >actual &&
> test_cmp expect actual
> "
> + GIT_TEST_DATE_NOW=$old_date; export GIT_TEST_DATE_NOW
> }
>
> check_approxidate now '2009-08-30 19:20:00'
> @@ -182,6 +189,8 @@ check_approxidate 'noon today' '2009-08-30 12:00:00'
> check_approxidate 'noon yesterday' '2009-08-29 12:00:00'
> check_approxidate 'January 5th noon pm' '2009-01-05 12:00:00'
> check_approxidate '10am noon' '2009-08-29 12:00:00'
> +check_approxidate 'January 5th yesterday' '2009-01-29 19:20:00'
> +check_approxidate 'January 5th yesterday' '2008-12-31 19:20:00' success +48
>
> check_approxidate 'last tuesday' '2009-08-25 19:20:00'
> check_approxidate 'July 5th' '2009-07-05 19:20:00'
next prev parent reply other threads:[~2026-05-12 16:34 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-18 18:01 [PATCH 0/2] approxidate: tweak special date formats Tuomas Ahola
2025-03-18 18:02 ` [PATCH 1/2] approxidate: make "specials" respect fixed day-of-month Tuomas Ahola
2025-04-04 8:19 ` Jeff King
2025-03-18 18:02 ` [PATCH 2/2] approxidate: overwrite tm_mday for `now` and `yesterday` Tuomas Ahola
2025-04-04 8:40 ` Jeff King
2026-05-12 14:54 ` [PATCH v2 0/3] approxidate: tweak special date formats Tuomas Ahola
2026-05-12 14:54 ` [PATCH v2 1/3] t0006: add support for approxidate test date adjustment Tuomas Ahola
2026-05-12 16:34 ` Junio C Hamano [this message]
2026-05-12 18:35 ` Jeff King
2026-05-12 14:54 ` [PATCH v2 2/3] approxidate: make "specials" respect fixed day-of-month Tuomas Ahola
2026-05-12 16:52 ` Junio C Hamano
2026-05-12 14:54 ` [PATCH v2 3/3] approxidate: use deferred mday adjustments for "specials" Tuomas Ahola
2026-05-14 11:55 ` [PATCH v3 0/4] approxidate: tweak special date formats Tuomas Ahola
2026-05-14 11:55 ` [PATCH v3 1/4] t0006: add support for approxidate test date adjustment Tuomas Ahola
2026-05-14 11:55 ` [PATCH v3 2/4] approxidate: alias "today" to "now" Tuomas Ahola
2026-05-14 15:36 ` Junio C Hamano
2026-05-14 21:07 ` Tuomas Ahola
2026-05-15 1:27 ` Junio C Hamano
2026-05-15 1:38 ` Junio C Hamano
2026-05-15 5:02 ` Tuomas Ahola
2026-05-14 11:55 ` [PATCH v3 3/4] approxidate: make "specials" respect fixed day-of-month Tuomas Ahola
2026-05-14 16:06 ` Junio C Hamano
2026-05-14 11:55 ` [PATCH v3 4/4] approxidate: use deferred mday adjustments for "specials" Tuomas Ahola
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqfr3wlh79.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=peff@peff.net \
--cc=taahol@utu.fi \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.