X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=performance-test%2FREADME;h=14816602125ebb16aef829335b56a935601fba66;hb=2cdb3f54f71e5e415a930aaa36452ffe1db04d06;hp=36f1dacd3cbff9e35c78801fe8712e37fe3e72a2;hpb=80639761b5242781d06073eec5721679051a4a3a;p=notmuch diff --git a/performance-test/README b/performance-test/README index 36f1dacd..14816602 100644 --- a/performance-test/README +++ b/performance-test/README @@ -42,17 +42,27 @@ available performance tests. Alternately, you can run a specific subset of tests by simply invoking one of the executable scripts in this directory, (such as ./basic). +Each test script supports the following arguments + +--small / --medium / --large Choose corpus size. +--debug Enable debugging. In particular don't delete + temporary directories. Writing tests ------------- -Have a look at "basic" for an example. - -add_email_corpus takes arguments "--small" and "--medium" for when you -want smaller subsets of the corpus to check. - -time_done does the cleanup; comment it out or define "$debug" to leave -the temporary files around. - -Currently there is no option processing (e.g. --debug) in the -performance tests. +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 +- 'uncache_database': forces the next 'add_email_corpus' to rebuild the + database. +- 'time_start' unpacks the mail corpus and calls notmuch new if it + 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.