On Sat, Apr 16, 2016 at 11:07:02PM -0400, Eric Sunshine wrote: > > test_stdout accepts an expection and a command to execute. It will execute > > the command and then compare the stdout from that command to an expectation. > > If the expectation is not met, a mock diff output is written to stderr. > > I wonder if this deserves more flexibility by accepting a comparison > operator, such as = and !=, similar to test_line_count()? Although, I > suppose such functionality could be added later if deemed useful. IMHO the funny syntax would outweigh the readability benefits. Unlike test_line_count(), which is abstracting a portability solution, this is mostly just about trying to save a few lines. Though I do actually find that: test_stdout false git rev-parse --whatever isn't great, because there's no syntactic separator between the expected output and the actual command to run. So I dunno, maybe it would be better as: test_stdout false = git rev-parse --whatever and then you get "!=" for free later on if you want it. We could also do: test_stdout git rev-parse --whatever <<-\EOF false EOF which is more robust for multi-line output, but I think part of the point is to keep these as simple one-liners. You're not buying all that much over: cat >expect <<-\EOF && false EOF git rev-parse --whatever >actual && test_cmp expect actual Though I do admit I've considered such a helper for some tests where that pattern is repeated ad nauseam. > > Based-on-a-patch-by: Jeff King <peff@xxxxxxxx> > > Since Peff wrote the actual code[1], it might be worthwhile to give > him authorship by prepending the commit message with a "From: Jeff > King <peff@xxxxxxxx>" header. Michael contacted me offline asking how to credit, and I actually suggested the "Based-on" route. I'm OK with it either way. And for the record, my contribution is: Signed-off-by: Jeff King <peff@xxxxxxxx> in case there are any DCO questions. -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html