inittest.sh (2253B)
1 #!/usr/bin/env zsh 2 3 function j() { 4 JAROMAILDIR=/tmp/jaromail-test \ 5 JAROWORKDIR=/usr/local/share/jaromail \ 6 jaro $* 7 } 8 9 function r() { 10 print - "========================== $*" 11 } 12 13 # generate a maildir 14 15 function lorem() { 16 cat <<EOF 17 Lorem ipsum dolor sit amet 18 19 Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do 20 eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad 21 minim veniam, quis nostrud exercitation ullamco laboris nisi ut 22 aliquip ex ea commodo consequat. Duis aute irure dolor in 23 reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla 24 pariatur. Excepteur sint occaecat cupidatat non proident, sunt in 25 culpa qui officia deserunt mollit anim id est laborum. 26 EOF 27 } 28 29 j init 30 31 lorem | j compose fengi2Ee@dyne.org 32 lorem | j compose Juiv0air@dyne.org 33 lorem | j compose Ieshuem3@dyne.org 34 35 lorem | j compose fengi2Ee@riseup.net 36 lorem | j compose Juiv0air@riseup.net 37 lorem | j compose Ieshuem3@riseup.net 38 39 lorem | j compose fengi2Ee@autistici.org 40 lorem | j compose Juiv0air@autistici.org 41 lorem | j -D compose Ieshuem3@autistici.org 42 43 exported_recipients_ok="fengi2Ee <fengi2ee@autistici.org> 44 fengi2Ee <fengi2ee@dyne.org> 45 fengi2Ee <fengi2ee@riseup.net> 46 Ieshuem3 <ieshuem3@autistici.org> 47 Ieshuem3 <ieshuem3@dyne.org> 48 Ieshuem3 <ieshuem3@riseup.net> 49 Juiv0air <juiv0air@autistici.org> 50 Juiv0air <juiv0air@dyne.org> 51 Juiv0air <juiv0air@riseup.net> 52 Luther Blisset <luther@dyne.org>" 53 54 exported_recipients="$(j extract /tmp/jaromail-test/outbox 2>/dev/null | sort | uniq)" 55 if [[ "$exported_recipients" = "$exported_recipients_ok" ]]; then 56 r "EXTRACT OK" 57 else 58 r "EXTRACT ERROR" 59 print "$exported_recipients" 60 print - "--" 61 print "$exported_recipients_ok" 62 fi 63 64 imported_sender="Luther Blisset <luther@dyne.org>" 65 66 67 print $imported_sender | j import 68 if [[ "$(j addr 2>/dev/null)" = "$imported_sender" ]]; then 69 r "IMPORT OK" 70 else 71 r "IMPORT ERROR" 72 fi 73 74 if j update && 75 j index && 76 j filter outbox; then 77 r "UPDATE and INDEX and FILTER OK" 78 else 79 return 1 80 fi 81 82 if j search to:juiv0air | jaro headers | grep 'Lorem_ipsum_dolor_sit_amet$'; then 83 r "SEARCH and HEADERS OK" 84 else 85 return 1 86 fi 87 88 print "Luther Blisset <luther@dyne.org>" | j import -l blacklist 89 90 j filter known 91 92 #TODO: here test hooks 93 94 rm -rf /tmp/jaromail-test