X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=test%2Ftest-lib.sh;h=53db9caa5f9860ec1cb135032bb7a58f88f2fcce;hp=66edb7c99f244a18b4cbae9a4804a601004a20b5;hb=ce44657c9e4919b1e4bbbbbe37dbd72257d40736;hpb=e79d2fc993dcd6fb328c31b2a0466cf7413a8276 diff --git a/test/test-lib.sh b/test/test-lib.sh index 66edb7c9..53db9caa 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -622,6 +622,12 @@ test_expect_equal_json () { test_expect_equal "$output" "$expected" "$@" } +# Sort the top-level list of JSON data from stdin. +test_sort_json () { + PYTHONIOENCODING=utf-8 python -c \ + "import sys, json; json.dump(sorted(json.load(sys.stdin)),sys.stdout)" +} + test_emacs_expect_t () { test "$#" = 2 && { prereq=$1; shift; } || prereq= test "$#" = 1 || @@ -661,6 +667,11 @@ notmuch_search_sanitize () perl -pe 's/("?thread"?: ?)("?)................("?)/\1\2XXX\3/' } +notmuch_search_files_sanitize() +{ + sed -e "s,$MAIL_DIR,MAIL_DIR," +} + NOTMUCH_SHOW_FILENAME_SQUELCH='s,filename:.*/mail,filename:/XXX/mail,' notmuch_show_sanitize () { @@ -679,6 +690,7 @@ notmuch_json_show_sanitize () sed \ -e 's|"id": "[^"]*",|"id": "XXXXX",|g' \ -e 's|"Date": "Fri, 05 Jan 2001 [^"]*0000"|"Date": "GENERATED_DATE"|g' \ + -e 's|"filename": "signature.asc",||g' \ -e 's|"filename": "/[^"]*",|"filename": "YYYYY",|g' \ -e 's|"timestamp": 97.......|"timestamp": 42|g' } @@ -1070,15 +1082,14 @@ export NOTMUCH_CONFIG=$NOTMUCH_CONFIG # Here's what we are using here: # -# --no-init-file Don't load users ~/.emacs -# -# --no-site-file Don't load the site-wide startup stuff +# --quick Use minimal customization. This implies --no-init-file, +# --no-site-file and (emacs 24) --no-site-lisp # # --directory Ensure that the local elisp sources are found # # --load Force loading of notmuch.el and test-lib.el -exec ${TEST_EMACS} --no-init-file --no-site-file \ +exec ${TEST_EMACS} --quick \ --directory "$TEST_DIRECTORY/../emacs" --load notmuch.el \ --directory "$TEST_DIRECTORY" --load test-lib.el \ "\$@" @@ -1128,7 +1139,7 @@ test_emacs () { rm -f OUTPUT touch OUTPUT - ${TEST_EMACSCLIENT} --socket-name="$EMACS_SERVER" --eval "(progn $@)" + ${TEST_EMACSCLIENT} --socket-name="$EMACS_SERVER" --eval "(notmuch-test-progn $@)" } test_python() {