summaryrefslogtreecommitdiffstats
path: root/imap/testsuitefix.pl.in
diff options
context:
space:
mode:
Diffstat (limited to 'imap/testsuitefix.pl.in')
-rw-r--r--imap/testsuitefix.pl.in10
1 files changed, 10 insertions, 0 deletions
diff --git a/imap/testsuitefix.pl.in b/imap/testsuitefix.pl.in
index 975e25d..d9229a1 100644
--- a/imap/testsuitefix.pl.in
+++ b/imap/testsuitefix.pl.in
@@ -22,6 +22,14 @@ sub sortflags {
return join(" ", sort @w) . $sp;
}
+sub sortflags2 {
+ my ($n)=@_;
+
+ my @w = split(/,/,$n);
+
+ return join(",", sort @w);
+}
+
while (<>)
{
s/UIDVALIDITY \d+/UIDVALIDITY/;
@@ -31,6 +39,8 @@ while (<>)
s/^\* ADD \"UID=.*/* ADD UID/;
s/^\* COPY \d+ \"NEWUID=.*/* COPY NEWUID/;
s/^(\* (\d+ FETCH \()?FLAGS \(|\* OK \[PERMANENTFLAGS \()([^\\\)]+)/$1 . sortflags($3)/e;
+ s/^(\* FETCH \d+ .*"[-+]?KEYWORDS=)([^"]+)/$1 . sortflags2($2)/e;
+
printf("%06d %s", $n, $_);
++$n unless $_ =~ /^\* (LIST|LSUB|ENABLED)/ || $_ =~ /Options enabled/;
}