use of com.zimbra.cs.mailclient.imap.Literal in project zm-mailbox by Zimbra.
the class TestImap method appendInvalidFlag.
private void appendInvalidFlag(String flag) throws IOException {
Literal msg = message(10);
Flags flags = Flags.fromSpec("afs");
flags.set(flag);
Date date = new Date(System.currentTimeMillis());
try {
AppendResult res = connection.append("INBOX", flags, date, msg);
fail("server allowed client to set system flag " + flag);
} catch (CommandFailedException e) {
//expected
} finally {
msg.dispose();
}
//do a no-op so we don't hit max consecutive error limit
connection.noop();
}
use of com.zimbra.cs.mailclient.imap.Literal in project zm-mailbox by Zimbra.
the class TestImapThrottle method uidfetch.
@Test
public void uidfetch() throws IOException {
Flags flags = Flags.fromSpec("afs");
for (int i = 0; i < 3; i++) {
Date date = new Date(System.currentTimeMillis());
Literal msg = message(1000 + i * 1000);
try {
connection.append("INBOX", flags, date, msg);
} finally {
msg.dispose();
}
}
for (int i = 0; i < LOOP_LIMIT; i++) {
connection.uidFetch("1:*", new String[] { "FLAGS", "UID" });
}
try {
connection.uidFetch("1:*", new String[] { "FLAGS", "UID" });
Assert.fail("should have been rejected");
} catch (CommandFailedException e) {
Assert.assertTrue(connection.isClosed());
}
}
use of com.zimbra.cs.mailclient.imap.Literal in project zm-mailbox by Zimbra.
the class TestImapThrottle method store.
@Test
public void store() throws IOException {
Flags flags = Flags.fromSpec("afs");
for (int i = 0; i < 3; i++) {
Date date = new Date(System.currentTimeMillis());
Literal msg = message(1000 + i * 1000);
try {
connection.append("INBOX", flags, date, msg);
} finally {
msg.dispose();
}
}
for (int i = 0; i < LOOP_LIMIT; i++) {
connection.store("1:3", "FLAGS", new String[] { "FOO", "BAR" });
}
try {
connection.store("1:3", "FLAGS", new String[] { "FOO", "BAR" });
Assert.fail("should have been rejected");
} catch (CommandFailedException e) {
Assert.assertTrue(connection.isClosed());
}
}
use of com.zimbra.cs.mailclient.imap.Literal in project zm-mailbox by Zimbra.
the class TestImapThrottle method fetch.
@Test
public void fetch() throws IOException {
Flags flags = Flags.fromSpec("afs");
for (int i = 0; i < 3; i++) {
Date date = new Date(System.currentTimeMillis());
Literal msg = message(1000 + i * 1000);
try {
connection.append("INBOX", flags, date, msg);
} finally {
msg.dispose();
}
}
for (int i = 0; i < LOOP_LIMIT; i++) {
connection.fetch(1, new String[] { "FLAGS", "UID" });
}
try {
connection.fetch(1, new String[] { "FLAGS", "UID" });
Assert.fail("should have been rejected");
} catch (CommandFailedException e) {
Assert.assertTrue(connection.isClosed());
}
}
use of com.zimbra.cs.mailclient.imap.Literal in project zm-mailbox by Zimbra.
the class TestImap method message.
private static Literal message(int size) throws IOException {
File file = File.createTempFile("msg", null);
file.deleteOnExit();
FileWriter out = new FileWriter(file);
try {
out.write(simpleMessage("test message"));
for (int i = 0; i < size; i++) {
out.write('X');
if (i % 72 == 0) {
out.write("\r\n");
}
}
} finally {
out.close();
}
return new Literal(file, true);
}
Aggregations