From: Jani Nikula Date: Sun, 9 Mar 2014 12:25:37 +0000 (+0200) Subject: test: rearrange the test corpus into subfolders, fix tests X-Git-Tag: 0.18_rc0~102 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=ded713c39d8b0221a3b1b2b52a74966c20c3aba8;p=notmuch.git test: rearrange the test corpus into subfolders, fix tests We will need this for improved folder search tests, but having some folders should exercise our code paths better anyway. Modify the relevant test accordingly to make it pass. This reorganization triggers a bug in the test suite, namely that it expects the output of --output=files to be in a certain order. So we add the fix for that into the same commit. This mainly involves sorting, although the case --duplicate=$n requires more subtlety. --- diff --git a/test/T090-search-output.sh b/test/T090-search-output.sh index a8ab9205..947d572e 100755 --- a/test/T090-search-output.sh +++ b/test/T090-search-output.sh @@ -181,67 +181,71 @@ EOF test_expect_equal_file OUTPUT EXPECTED test_begin_subtest "--output=files" -notmuch search --output=files '*' | notmuch_search_files_sanitize >OUTPUT +notmuch search --output=files '*' | notmuch_search_files_sanitize | sort >OUTPUT cat <EXPECTED -MAIL_DIR/cur/52:2, -MAIL_DIR/cur/53:2, -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/01:2, +MAIL_DIR/02:2, +MAIL_DIR/bar/17:2, +MAIL_DIR/bar/18:2, +MAIL_DIR/bar/baz/05:2, +MAIL_DIR/bar/baz/23:2, +MAIL_DIR/bar/baz/24:2, +MAIL_DIR/bar/baz/cur/25:2, +MAIL_DIR/bar/baz/cur/26:2, +MAIL_DIR/bar/baz/new/27:2, +MAIL_DIR/bar/baz/new/28:2, +MAIL_DIR/bar/cur/19:2, +MAIL_DIR/bar/cur/20:2, +MAIL_DIR/bar/new/21:2, +MAIL_DIR/bar/new/22: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/30:2, +MAIL_DIR/cur/31:2, +MAIL_DIR/cur/32:2, +MAIL_DIR/cur/33:2, +MAIL_DIR/cur/34:2, +MAIL_DIR/cur/35:2, +MAIL_DIR/cur/36:2, +MAIL_DIR/cur/37:2, +MAIL_DIR/cur/38:2, +MAIL_DIR/cur/39:2, +MAIL_DIR/cur/40:2, +MAIL_DIR/cur/41:2, +MAIL_DIR/cur/42:2, +MAIL_DIR/cur/43:2, +MAIL_DIR/cur/44:2, +MAIL_DIR/cur/45:2, +MAIL_DIR/cur/46:2, +MAIL_DIR/cur/47:2, +MAIL_DIR/cur/48:2, +MAIL_DIR/cur/49:2, +MAIL_DIR/cur/50:2, MAIL_DIR/cur/51: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, +MAIL_DIR/cur/52:2, +MAIL_DIR/cur/53:2, +MAIL_DIR/foo/06:2, +MAIL_DIR/foo/baz/11:2, +MAIL_DIR/foo/baz/12:2, +MAIL_DIR/foo/baz/cur/13:2, +MAIL_DIR/foo/baz/cur/14:2, +MAIL_DIR/foo/baz/new/15:2, +MAIL_DIR/foo/baz/new/16:2, +MAIL_DIR/foo/cur/07:2, +MAIL_DIR/foo/cur/08:2, +MAIL_DIR/foo/new/03:2, +MAIL_DIR/foo/new/09:2, +MAIL_DIR/foo/new/10:2, +MAIL_DIR/new/04:2, EOF test_expect_equal_file OUTPUT EXPECTED +dup1=$(notmuch search --output=files id:20091117232137.GA7669@griffis1.net | head -n 1 | sed -e "s,$MAIL_DIR,MAIL_DIR,") +dup2=$(notmuch search --output=files id:20091117232137.GA7669@griffis1.net | tail -n 1 | sed -e "s,$MAIL_DIR,MAIL_DIR,") + test_begin_subtest "--output=files --duplicate=1" -notmuch search --output=files --duplicate=1 '*' | notmuch_search_files_sanitize >OUTPUT -cat <EXPECTED +notmuch search --output=files --duplicate=1 '*' | notmuch_search_files_sanitize | sort >OUTPUT +cat <EXPECTED +$dup1 MAIL_DIR/cur/52:2, MAIL_DIR/cur/53:2, MAIL_DIR/cur/50:2, @@ -266,40 +270,40 @@ 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, +MAIL_DIR/bar/baz/new/28:2, +MAIL_DIR/bar/baz/new/27:2, +MAIL_DIR/bar/baz/cur/26:2, +MAIL_DIR/bar/baz/cur/25:2, +MAIL_DIR/bar/baz/24:2, +MAIL_DIR/bar/baz/23:2, +MAIL_DIR/bar/new/22:2, +MAIL_DIR/bar/new/21:2, +MAIL_DIR/bar/cur/19:2, +MAIL_DIR/bar/cur/20:2, +MAIL_DIR/bar/17:2, +MAIL_DIR/foo/baz/new/16:2, +MAIL_DIR/foo/baz/new/15:2, +MAIL_DIR/foo/baz/cur/14:2, +MAIL_DIR/foo/baz/cur/13:2, +MAIL_DIR/foo/baz/12:2, +MAIL_DIR/foo/baz/11:2, +MAIL_DIR/foo/new/10:2, +MAIL_DIR/foo/new/09:2, +MAIL_DIR/foo/cur/08:2, +MAIL_DIR/foo/06:2, +MAIL_DIR/bar/baz/05:2, +MAIL_DIR/new/04:2, +MAIL_DIR/foo/new/03:2, +MAIL_DIR/foo/cur/07:2, +MAIL_DIR/02:2, +MAIL_DIR/01:2, EOF test_expect_equal_file OUTPUT EXPECTED test_begin_subtest "--output=files --format=json" -notmuch search --format=json --output=files '*' | notmuch_search_files_sanitize >OUTPUT -cat <EXPECTED +notmuch search --format=json --output=files '*' | notmuch_search_files_sanitize \ + | test_sort_json >OUTPUT +cat <EXPECTED ["MAIL_DIR/cur/52:2,", "MAIL_DIR/cur/53:2,", "MAIL_DIR/cur/50:2,", @@ -324,42 +328,42 @@ cat <EXPECTED "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/bar/baz/new/28:2,", +"MAIL_DIR/bar/baz/new/27:2,", +"MAIL_DIR/bar/baz/cur/26:2,", +"MAIL_DIR/bar/baz/cur/25:2,", +"MAIL_DIR/bar/baz/24:2,", +"MAIL_DIR/bar/baz/23:2,", +"MAIL_DIR/bar/new/22:2,", +"MAIL_DIR/bar/new/21:2,", +"MAIL_DIR/bar/cur/19:2,", +"MAIL_DIR/bar/18:2,", "MAIL_DIR/cur/51: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,"] +"MAIL_DIR/bar/cur/20:2,", +"MAIL_DIR/bar/17:2,", +"MAIL_DIR/foo/baz/new/16:2,", +"MAIL_DIR/foo/baz/new/15:2,", +"MAIL_DIR/foo/baz/cur/14:2,", +"MAIL_DIR/foo/baz/cur/13:2,", +"MAIL_DIR/foo/baz/12:2,", +"MAIL_DIR/foo/baz/11:2,", +"MAIL_DIR/foo/new/10:2,", +"MAIL_DIR/foo/new/09:2,", +"MAIL_DIR/foo/cur/08:2,", +"MAIL_DIR/foo/06:2,", +"MAIL_DIR/bar/baz/05:2,", +"MAIL_DIR/new/04:2,", +"MAIL_DIR/foo/new/03:2,", +"MAIL_DIR/foo/cur/07:2,", +"MAIL_DIR/02:2,", +"MAIL_DIR/01:2,"] EOF test_expect_equal_file OUTPUT EXPECTED test_begin_subtest "--output=files --format=json --duplicate=2" notmuch search --format=json --output=files --duplicate=2 '*' | notmuch_search_files_sanitize >OUTPUT cat <EXPECTED -["MAIL_DIR/cur/51:2,"] +["$dup2"] EOF test_expect_equal_file OUTPUT EXPECTED diff --git a/test/corpus/cur/01:2, b/test/corpus/01:2, similarity index 100% rename from test/corpus/cur/01:2, rename to test/corpus/01:2, diff --git a/test/corpus/cur/02:2, b/test/corpus/02:2, similarity index 100% rename from test/corpus/cur/02:2, rename to test/corpus/02:2, diff --git a/test/corpus/cur/17:2, b/test/corpus/bar/17:2, similarity index 100% rename from test/corpus/cur/17:2, rename to test/corpus/bar/17:2, diff --git a/test/corpus/cur/18:2, b/test/corpus/bar/18:2, similarity index 100% rename from test/corpus/cur/18:2, rename to test/corpus/bar/18:2, diff --git a/test/corpus/cur/05:2, b/test/corpus/bar/baz/05:2, similarity index 100% rename from test/corpus/cur/05:2, rename to test/corpus/bar/baz/05:2, diff --git a/test/corpus/cur/23:2, b/test/corpus/bar/baz/23:2, similarity index 100% rename from test/corpus/cur/23:2, rename to test/corpus/bar/baz/23:2, diff --git a/test/corpus/cur/24:2, b/test/corpus/bar/baz/24:2, similarity index 100% rename from test/corpus/cur/24:2, rename to test/corpus/bar/baz/24:2, diff --git a/test/corpus/cur/25:2, b/test/corpus/bar/baz/cur/25:2, similarity index 100% rename from test/corpus/cur/25:2, rename to test/corpus/bar/baz/cur/25:2, diff --git a/test/corpus/cur/26:2, b/test/corpus/bar/baz/cur/26:2, similarity index 100% rename from test/corpus/cur/26:2, rename to test/corpus/bar/baz/cur/26:2, diff --git a/test/corpus/cur/27:2, b/test/corpus/bar/baz/new/27:2, similarity index 100% rename from test/corpus/cur/27:2, rename to test/corpus/bar/baz/new/27:2, diff --git a/test/corpus/cur/28:2, b/test/corpus/bar/baz/new/28:2, similarity index 100% rename from test/corpus/cur/28:2, rename to test/corpus/bar/baz/new/28:2, diff --git a/test/corpus/cur/19:2, b/test/corpus/bar/cur/19:2, similarity index 100% rename from test/corpus/cur/19:2, rename to test/corpus/bar/cur/19:2, diff --git a/test/corpus/cur/20:2, b/test/corpus/bar/cur/20:2, similarity index 100% rename from test/corpus/cur/20:2, rename to test/corpus/bar/cur/20:2, diff --git a/test/corpus/cur/21:2, b/test/corpus/bar/new/21:2, similarity index 100% rename from test/corpus/cur/21:2, rename to test/corpus/bar/new/21:2, diff --git a/test/corpus/cur/22:2, b/test/corpus/bar/new/22:2, similarity index 100% rename from test/corpus/cur/22:2, rename to test/corpus/bar/new/22:2, diff --git a/test/corpus/cur/06:2, b/test/corpus/foo/06:2, similarity index 100% rename from test/corpus/cur/06:2, rename to test/corpus/foo/06:2, diff --git a/test/corpus/cur/11:2, b/test/corpus/foo/baz/11:2, similarity index 100% rename from test/corpus/cur/11:2, rename to test/corpus/foo/baz/11:2, diff --git a/test/corpus/cur/12:2, b/test/corpus/foo/baz/12:2, similarity index 100% rename from test/corpus/cur/12:2, rename to test/corpus/foo/baz/12:2, diff --git a/test/corpus/cur/13:2, b/test/corpus/foo/baz/cur/13:2, similarity index 100% rename from test/corpus/cur/13:2, rename to test/corpus/foo/baz/cur/13:2, diff --git a/test/corpus/cur/14:2, b/test/corpus/foo/baz/cur/14:2, similarity index 100% rename from test/corpus/cur/14:2, rename to test/corpus/foo/baz/cur/14:2, diff --git a/test/corpus/cur/15:2, b/test/corpus/foo/baz/new/15:2, similarity index 100% rename from test/corpus/cur/15:2, rename to test/corpus/foo/baz/new/15:2, diff --git a/test/corpus/cur/16:2, b/test/corpus/foo/baz/new/16:2, similarity index 100% rename from test/corpus/cur/16:2, rename to test/corpus/foo/baz/new/16:2, diff --git a/test/corpus/cur/07:2, b/test/corpus/foo/cur/07:2, similarity index 100% rename from test/corpus/cur/07:2, rename to test/corpus/foo/cur/07:2, diff --git a/test/corpus/cur/08:2, b/test/corpus/foo/cur/08:2, similarity index 100% rename from test/corpus/cur/08:2, rename to test/corpus/foo/cur/08:2, diff --git a/test/corpus/cur/03:2, b/test/corpus/foo/new/03:2, similarity index 100% rename from test/corpus/cur/03:2, rename to test/corpus/foo/new/03:2, diff --git a/test/corpus/cur/09:2, b/test/corpus/foo/new/09:2, similarity index 100% rename from test/corpus/cur/09:2, rename to test/corpus/foo/new/09:2, diff --git a/test/corpus/cur/10:2, b/test/corpus/foo/new/10:2, similarity index 100% rename from test/corpus/cur/10:2, rename to test/corpus/foo/new/10:2, diff --git a/test/corpus/cur/04:2, b/test/corpus/new/04:2, similarity index 100% rename from test/corpus/cur/04:2, rename to test/corpus/new/04:2,