mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-22 02:48:08 +01:00
perf-test: split basic into 00-new, 01-dump-restore, and 02-tag
We use the new "time_start" function to restore the database from cache if possible.
This commit is contained in:
parent
5c35791d7c
commit
51b0f8ff33
6 changed files with 54 additions and 23 deletions
19
performance-test/00-new
Executable file
19
performance-test/00-new
Executable file
|
@ -0,0 +1,19 @@
|
|||
#!/bin/bash
|
||||
|
||||
test_description='notmuch new'
|
||||
|
||||
. ./perf-test-lib.sh
|
||||
|
||||
uncache_database
|
||||
|
||||
time_start
|
||||
|
||||
time_run 'initial notmuch new' 'notmuch new'
|
||||
|
||||
cache_database
|
||||
|
||||
for i in $(seq 2 6); do
|
||||
time_run "notmuch new #$i" 'notmuch new'
|
||||
done
|
||||
|
||||
time_done
|
12
performance-test/01-dump-restore
Executable file
12
performance-test/01-dump-restore
Executable file
|
@ -0,0 +1,12 @@
|
|||
#!/bin/bash
|
||||
|
||||
test_description='dump and restore'
|
||||
|
||||
. ./perf-test-lib.sh
|
||||
|
||||
time_start
|
||||
|
||||
time_run 'dump *' 'notmuch dump > tags.out'
|
||||
time_run 'restore *' 'notmuch restore < tags.out'
|
||||
|
||||
time_done
|
14
performance-test/02-tag
Executable file
14
performance-test/02-tag
Executable file
|
@ -0,0 +1,14 @@
|
|||
#!/bin/bash
|
||||
|
||||
test_description='tagging'
|
||||
|
||||
. ./perf-test-lib.sh
|
||||
|
||||
time_start
|
||||
|
||||
time_run 'tag * +new_tag' "notmuch tag +new_tag '*'"
|
||||
time_run 'tag * +existing_tag' "notmuch tag +new_tag '*'"
|
||||
time_run 'tag * -existing_tag' "notmuch tag -new_tag '*'"
|
||||
time_run 'tag * -missing_tag' "notmuch tag -new_tag '*'"
|
||||
|
||||
time_done
|
|
@ -51,8 +51,8 @@ Each test script supports the following arguments
|
|||
Writing tests
|
||||
-------------
|
||||
|
||||
Have a look at "basic" for an example. Sourcing "perf-test-lib.sh" is
|
||||
mandatory. Utility functions include
|
||||
Have a look at "01-dump-restore" for an example. Sourcing
|
||||
"perf-test-lib.sh" is mandatory. Utility functions include
|
||||
|
||||
- 'add_email_corpus' unpacks a set of messages and adds them to the database.
|
||||
- 'cache_database': makes a snapshot of the current database
|
||||
|
@ -62,3 +62,7 @@ mandatory. Utility functions include
|
|||
cannot find a cache of the appropriate corpus.
|
||||
- 'time_done' does the cleanup; comment it out or pass --debug to the
|
||||
script to leave the temporary files around.
|
||||
|
||||
Scripts are run in the order specified in notmuch-perf-test. In the
|
||||
future this order might be chosen automatically so please follow the
|
||||
convention of starting the name with two digits to specify the order.
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
. ./perf-test-lib.sh
|
||||
|
||||
uncache_database
|
||||
|
||||
add_email_corpus
|
||||
|
||||
print_header
|
||||
|
||||
time_run 'initial notmuch new' 'notmuch new'
|
||||
|
||||
cache_database
|
||||
|
||||
time_run 'second notmuch new' 'notmuch new'
|
||||
time_run 'dump *' 'notmuch dump > tags.out'
|
||||
time_run 'restore *' 'notmuch restore < tags.out'
|
||||
time_run 'tag * +new_tag' "notmuch tag +new_tag '*'"
|
||||
|
||||
time_done
|
|
@ -17,7 +17,9 @@ fi
|
|||
cd $(dirname "$0")
|
||||
|
||||
TESTS="
|
||||
basic
|
||||
00-new
|
||||
01-dump-restore
|
||||
02-tag
|
||||
"
|
||||
|
||||
for test in $TESTS; do
|
||||
|
|
Loading…
Reference in a new issue