tests: Added imap STATUS command test
This commit is contained in:
@@ -64,6 +64,7 @@ test700 test701 test702 test703 test704 test705 test706 test707 test708 \
|
|||||||
test709 test710 test711 test712 \
|
test709 test710 test711 test712 \
|
||||||
\
|
\
|
||||||
test800 test801 test802 test803 test804 test805 test806 test807 test808 \
|
test800 test801 test802 test803 test804 test805 test806 test807 test808 \
|
||||||
|
test809 \
|
||||||
\
|
\
|
||||||
test850 test851 test852 test853 test854 test855 test856 test857 \
|
test850 test851 test852 test853 test854 test855 test856 test857 \
|
||||||
\
|
\
|
||||||
|
42
tests/data/test809
Normal file
42
tests/data/test809
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
<testcase>
|
||||||
|
<info>
|
||||||
|
<keywords>
|
||||||
|
IMAP
|
||||||
|
STATUS
|
||||||
|
CUSTOMREQUEST
|
||||||
|
</keywords>
|
||||||
|
</info>
|
||||||
|
|
||||||
|
#
|
||||||
|
# Server-side
|
||||||
|
<reply>
|
||||||
|
<data>
|
||||||
|
* STATUS 809 (MESSAGES 231 UIDNEXT 44292)
|
||||||
|
</data>
|
||||||
|
</reply>
|
||||||
|
|
||||||
|
#
|
||||||
|
# Client-side
|
||||||
|
<client>
|
||||||
|
<server>
|
||||||
|
imap
|
||||||
|
</server>
|
||||||
|
<name>
|
||||||
|
IMAP STATUS (CUSTOMREQUEST)
|
||||||
|
</name>
|
||||||
|
<command>
|
||||||
|
imap://%HOSTIP:%IMAPPORT -u user:secret -X 'STATUS 809 (UIDNEXT MESSAGES)'
|
||||||
|
</command>
|
||||||
|
</client>
|
||||||
|
|
||||||
|
#
|
||||||
|
# Verify data after the test has been "shot"
|
||||||
|
<verify>
|
||||||
|
<protocol>
|
||||||
|
A001 CAPABILITY
|
||||||
|
A002 LOGIN user secret
|
||||||
|
A003 STATUS 809 (UIDNEXT MESSAGES)
|
||||||
|
A004 LOGOUT
|
||||||
|
</protocol>
|
||||||
|
</verify>
|
||||||
|
</testcase>
|
@@ -583,6 +583,7 @@ sub protocolsetup {
|
|||||||
'LIST' => \&LIST_imap,
|
'LIST' => \&LIST_imap,
|
||||||
'LOGOUT' => \&LOGOUT_imap,
|
'LOGOUT' => \&LOGOUT_imap,
|
||||||
'SELECT' => \&SELECT_imap,
|
'SELECT' => \&SELECT_imap,
|
||||||
|
'STATUS' => \&STATUS_imap,
|
||||||
'STORE' => \&STORE_imap
|
'STORE' => \&STORE_imap
|
||||||
);
|
);
|
||||||
%displaytext = (
|
%displaytext = (
|
||||||
@@ -1004,6 +1005,32 @@ sub EXAMINE_imap {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub STATUS_imap {
|
||||||
|
my ($testno) = @_;
|
||||||
|
fix_imap_params($testno);
|
||||||
|
|
||||||
|
logmsg "STATUS_imap got test $testno\n";
|
||||||
|
|
||||||
|
$testno =~ s/^([^0-9]*)//;
|
||||||
|
my $testpart = "";
|
||||||
|
if ($testno > 10000) {
|
||||||
|
$testpart = $testno % 10000;
|
||||||
|
$testno = int($testno / 10000);
|
||||||
|
}
|
||||||
|
|
||||||
|
loadtest("$srcdir/data/test$testno");
|
||||||
|
|
||||||
|
@data = getpart("reply", "data$testpart");
|
||||||
|
|
||||||
|
for my $d (@data) {
|
||||||
|
sendcontrol $d;
|
||||||
|
}
|
||||||
|
|
||||||
|
sendcontrol "$cmdid OK STATUS completed\r\n";
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
sub LOGOUT_imap {
|
sub LOGOUT_imap {
|
||||||
sendcontrol "* BYE cURL IMAP server signing off\r\n";
|
sendcontrol "* BYE cURL IMAP server signing off\r\n";
|
||||||
sendcontrol "$cmdid OK LOGOUT completed\r\n";
|
sendcontrol "$cmdid OK LOGOUT completed\r\n";
|
||||||
|
Reference in New Issue
Block a user