From e2a550b968010e0bb7b5d519ef33409f0cf2f28d Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Tue, 23 Nov 2010 17:41:25 -0800 Subject: [PATCH] test: Add simple tests for "notmuch search --output=<>" This code simply wasn't being exercised by the test suite before, so this will be useful. Meanwhile, there's currently a bug in "notmuch search --output=tags" in that it doesn't print a final newline. But the current test suite isn't able to catch this bug since the $() construct of the shell doesn't preserve the distinction of whether the final newline is present or not. --- test/notmuch-test | 2 +- test/search-output | 144 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 145 insertions(+), 1 deletion(-) create mode 100755 test/search-output diff --git a/test/notmuch-test b/test/notmuch-test index 055467f4..43565e87 100755 --- a/test/notmuch-test +++ b/test/notmuch-test @@ -24,7 +24,7 @@ trap 'die' 0 cd $(dirname "$0") -TESTS="basic new search json thread-naming raw reply dump-restore uuencode thread-order author-order from-guessing long-id encoding emacs maildir-sync" +TESTS="basic new search search-output json thread-naming raw reply dump-restore uuencode thread-order author-order from-guessing long-id encoding emacs maildir-sync" # Clean up any results from a previous run rm -rf test-results >/dev/null 2>/dev/null diff --git a/test/search-output b/test/search-output new file mode 100755 index 00000000..c193b8f7 --- /dev/null +++ b/test/search-output @@ -0,0 +1,144 @@ +#!/bin/bash +test_description='various settings for "notmuch search --output="' +. ./test-lib.sh + +add_email_corpus + +test_begin_subtest "notmuch search --output=threads" +output=$(notmuch search --output=threads '*' | sed -e s/thread:.*/thread:THREADID/) +test_expect_equal "$output" "thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID +thread:THREADID" + +test_begin_subtest "notmuch search --output=messages" +output=$(notmuch search --output=messages '*') +test_expect_equal "$output" "id:1258544095-16616-1-git-send-email-chris@chris-wilson.co.uk +id:877htoqdbo.fsf@yoom.home.cworth.org +id:878we4qdqf.fsf@yoom.home.cworth.org +id:87aaykqe24.fsf@yoom.home.cworth.org +id:87bpj0qeng.fsf@yoom.home.cworth.org +id:87fx8cqf8v.fsf@yoom.home.cworth.org +id:87hbssqfix.fsf@yoom.home.cworth.org +id:87iqd8qgiz.fsf@yoom.home.cworth.org +id:87k4xoqgnl.fsf@yoom.home.cworth.org +id:87ocn0qh6d.fsf@yoom.home.cworth.org +id:87pr7gqidx.fsf@yoom.home.cworth.org +id:867hto2p0t.fsf@fortitudo.i-did-not-set--mail-host-address--so-tickle-me +id:1258532999-9316-1-git-send-email-keithp@keithp.com +id:86aayk2rbj.fsf@fortitudo.i-did-not-set--mail-host-address--so-tickle-me +id:86d43g2w3y.fsf@fortitudo.i-did-not-set--mail-host-address--so-tickle-me +id:ddd65cda0911172214t60d22b63hcfeb5a19ab54a39b@mail.gmail.com +id:86einw2xof.fsf@fortitudo.i-did-not-set--mail-host-address--so-tickle-me +id:736613.51770.qm@web113505.mail.gq1.yahoo.com +id:1258520223-15328-1-git-send-email-jan@ryngle.com +id:ddd65cda0911171950o4eea4389v86de9525e46052d3@mail.gmail.com +id:1258510940-7018-1-git-send-email-stewart@flamingspork.com +id:yunzl6kd1w0.fsf@aiko.keithp.com +id:yun1vjwegii.fsf@aiko.keithp.com +id:yun3a4cegoa.fsf@aiko.keithp.com +id:1258509400-32511-1-git-send-email-stewart@flamingspork.com +id:1258506353-20352-1-git-send-email-stewart@flamingspork.com +id:20091118010116.GC25380@dottiness.seas.harvard.edu +id:20091118005829.GB25380@dottiness.seas.harvard.edu +id:20091118005040.GA25380@dottiness.seas.harvard.edu +id:cf0c4d610911171623q3e27a0adx802e47039b57604b@mail.gmail.com +id:1258500222-32066-1-git-send-email-ingmar@exherbo.org +id:20091117232137.GA7669@griffis1.net +id:20091118002059.067214ed@hikari +id:1258498485-sup-142@elly +id:f35dbb950911171438k5df6eb56k77b6c0944e2e79ae@mail.gmail.com +id:f35dbb950911171435ieecd458o853c873e35f4be95@mail.gmail.com +id:1258496327-12086-1-git-send-email-jan@ryngle.com +id:1258493565-13508-1-git-send-email-keithp@keithp.com +id:yunaayketfm.fsf@aiko.keithp.com +id:yunbpj0etua.fsf@aiko.keithp.com +id:1258491078-29658-1-git-send-email-dottedmag@dottedmag.net +id:87fx8can9z.fsf@vertex.dottedmag +id:20091117203301.GV3165@dottiness.seas.harvard.edu +id:87lji4lx9v.fsf@yoom.home.cworth.org +id:cf0c4d610911171136h1713aa59w9cf9aa31f052ad0a@mail.gmail.com +id:87iqd9rn3l.fsf@vertex.dottedmag +id:20091117190054.GU3165@dottiness.seas.harvard.edu +id:87lji5cbwo.fsf@yoom.home.cworth.org +id:1258471718-6781-2-git-send-email-dottedmag@dottedmag.net +id:1258471718-6781-1-git-send-email-dottedmag@dottedmag.net" + +test_begin_subtest "notmuch search --output=files" +output=$(notmuch search --output=files '*' | sed -e "s,$MAIL_DIR,MAIL_DIR,") +test_expect_equal "$output" "MAIL_DIR/cur/50:2, +MAIL_DIR/cur/49:2, +MAIL_DIR/cur/48:2, +MAIL_DIR/cur/47:2, +MAIL_DIR/cur/46:2, +MAIL_DIR/cur/45:2, +MAIL_DIR/cur/44:2, +MAIL_DIR/cur/43:2, +MAIL_DIR/cur/42:2, +MAIL_DIR/cur/41:2, +MAIL_DIR/cur/40:2, +MAIL_DIR/cur/39:2, +MAIL_DIR/cur/38:2, +MAIL_DIR/cur/37:2, +MAIL_DIR/cur/36:2, +MAIL_DIR/cur/35:2, +MAIL_DIR/cur/34:2, +MAIL_DIR/cur/33:2, +MAIL_DIR/cur/32:2, +MAIL_DIR/cur/31:2, +MAIL_DIR/cur/30:2, +MAIL_DIR/cur/29:2, +MAIL_DIR/cur/28:2, +MAIL_DIR/cur/27:2, +MAIL_DIR/cur/26:2, +MAIL_DIR/cur/25:2, +MAIL_DIR/cur/24:2, +MAIL_DIR/cur/23:2, +MAIL_DIR/cur/22:2, +MAIL_DIR/cur/21:2, +MAIL_DIR/cur/19:2, +MAIL_DIR/cur/18:2, +MAIL_DIR/cur/20:2, +MAIL_DIR/cur/17:2, +MAIL_DIR/cur/16:2, +MAIL_DIR/cur/15:2, +MAIL_DIR/cur/14:2, +MAIL_DIR/cur/13:2, +MAIL_DIR/cur/12:2, +MAIL_DIR/cur/11:2, +MAIL_DIR/cur/10:2, +MAIL_DIR/cur/09:2, +MAIL_DIR/cur/08:2, +MAIL_DIR/cur/06:2, +MAIL_DIR/cur/05:2, +MAIL_DIR/cur/04:2, +MAIL_DIR/cur/03:2, +MAIL_DIR/cur/07:2, +MAIL_DIR/cur/02:2, +MAIL_DIR/cur/01:2," + +test_begin_subtest "notmuch search --output=tags" +output=$(notmuch search --output=tags '*') +test_expect_equal "$output" "attachment +inbox +unread" + +test_done -- 2.26.2