path: root/test-date.c
AgeCommit message (Collapse)Author
2014-08-27date: use strbufs in date-formatting functionsJeff King
Many of the date functions write into fixed-size buffers. This is a minor pain, as we have to take special precautions, and frequently end up copying the result into a strbuf or heap-allocated buffer anyway (for which we sometimes use strcpy!). Let's instead teach parse_date, datestamp, etc to write to a strbuf. The obvious downside is that we might need to perform a heap allocation where we otherwise would not need to. However, it turns out that the only two new allocations required are: 1. In test-date.c, where we don't care about efficiency. 2. In determine_author_info, which is not performance critical (and where the use of a strbuf will help later refactoring). Signed-off-by: Jeff King <> Signed-off-by: Junio C Hamano <>
2012-04-24i18n: mark relative dates for translationJonathan Nieder
Signed-off-by: Jonathan Nieder <> Signed-off-by: Nguyễn Thái Ngọc Duy <> Signed-off-by: Junio C Hamano <>
2010-07-06test-date: fix sscanf type conversionJeff King
Reading into a time_t isn't portable, since we don't know the exact type. Instead, use an unsigned long, which is what show_date wants, anyway. Signed-off-by: Jeff King <> Signed-off-by: Junio C Hamano <>
2010-07-05t0006: test timezone parsingJeff King
Previously, test-date simply ignored the parsed timezone and told show_date() to use UTC. Instead, let's print out what we actually parsed. While we're at it, let's make it easy for tests to work in a specific timezone. Signed-off-by: Jeff King <> Signed-off-by: Junio C Hamano <>
2009-08-31refactor test-date interfaceJeff King
The test-date program goes back to the early days of git, where it was presumably used to do manual sanity checks on changes to the date code. However, it is not actually used by the test suite to do any sort of automatic of systematic tests. This patch refactors the interface to the program to try to make it more suitable for use by the test suite. There should be no fallouts to changing the interface since it is not actually installed and is not internally called by any other programs. The changes are: - add a "mode" parameter so the caller can specify which operation to test - add a mode to test relative date output from show_date - allow faking a fixed time via the TEST_DATE_NOW environment variable, which allows consistent automated testing - drop the use of ctime for showing dates in favor of our internal iso8601 printing routines. The ctime output is somewhat redundant (because of the day-of-week) which makes writing test cases more annoying. Signed-off-by: Jeff King <> Signed-off-by: Junio C Hamano <>
2006-12-20simplify inclusion of system header files.Junio C Hamano
This is a mechanical clean-up of the way *.c files include system header files. (1) sources under compat/, platform sha-1 implementations, and xdelta code are exempt from the following rules; (2) the first #include must be "git-compat-util.h" or one of our own header file that includes it first (e.g. config.h, builtin.h, pkt-line.h); (3) system headers that are included in "git-compat-util.h" need not be included in individual C source files. (4) "git-compat-util.h" does not have to include subsystem specific header files (e.g. expat.h). Signed-off-by: Junio C Hamano <>
2005-11-17Add approxidate test calls.Junio C Hamano
Signed-off-by: Junio C Hamano <>
2005-05-01date handling: handle "AM"/"PM" on timeLinus Torvalds
And be a bitmore careful about matching: if we don't recognize a word or a number, we skip the whole thing, rather than trying the next character in that word/number. Finally: since ctime() adds the final '\n', don't add another one in test-date.
2005-04-30Make the date parsing accept pretty much any random crap.Linus Torvalds
This date parser turns line-noise into a date. Cool.