On Wed, 05 Dec 2012, david@tethera.net wrote: > From: David Bremner <bremner@debian.org> > > We rely on subsequent "notmuch new" invocations being relatively fast > rather than trying to detect if notmuch-new needs to be run. > --- > performance-test/00-new | 21 +++++++++++++++++++++ > performance-test/01-dump-restore | 15 +++++++++++++++ > performance-test/README | 8 ++++++-- > performance-test/basic | 20 -------------------- > performance-test/notmuch-perf-test | 3 ++- > 5 files changed, 44 insertions(+), 23 deletions(-) > create mode 100755 performance-test/00-new > create mode 100755 performance-test/01-dump-restore > delete mode 100755 performance-test/basic > > diff --git a/performance-test/00-new b/performance-test/00-new > new file mode 100755 > index 0000000..02db874 > --- /dev/null > +++ b/performance-test/00-new > @@ -0,0 +1,21 @@ > +#!/bin/bash > + > +test_description='notmuch new' > + > +. ./perf-test-lib.sh > + > +uncache_database > + > +add_email_corpus > + > +print_header > + > +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 > diff --git a/performance-test/01-dump-restore b/performance-test/01-dump-restore > new file mode 100755 > index 0000000..09444e3 > --- /dev/null > +++ b/performance-test/01-dump-restore > @@ -0,0 +1,15 @@ > +#!/bin/bash > + > +test_description='Dump and restore' > + > +. ./perf-test-lib.sh > + > +add_email_corpus > + > +print_header > + > +time_run 'notmuch new' 'notmuch new' > +time_run 'dump *' 'notmuch dump > tags.out' > +time_run 'restore *' 'notmuch restore < tags.out' > + > +time_done > diff --git a/performance-test/README b/performance-test/README > index fd5c977..35489a9 100644 > --- a/performance-test/README > +++ b/performance-test/README > @@ -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 > @@ -60,3 +60,7 @@ mandatory. Utility functions include > database. > - '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. > diff --git a/performance-test/basic b/performance-test/basic > deleted file mode 100755 > index 41a7ff1..0000000 > --- a/performance-test/basic > +++ /dev/null > @@ -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 '*'" Did you mean to lose the tag-everything test? > - > -time_done > diff --git a/performance-test/notmuch-perf-test b/performance-test/notmuch-perf-test > index 1bea345..f93d8a4 100755 > --- a/performance-test/notmuch-perf-test > +++ b/performance-test/notmuch-perf-test > @@ -17,7 +17,8 @@ fi > cd $(dirname "$0") > > TESTS=" > - basic > + 00-new > + 01-dump-restore > " > > for test in $TESTS; do > -- > 1.7.10.4 > > _______________________________________________ > notmuch mailing list > notmuch@notmuchmail.org > http://notmuchmail.org/mailman/listinfo/notmuch