You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by rd...@apache.org on 2008/03/11 23:31:37 UTC
svn commit: r636131 - in
/james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional:
CreateScript.java ScriptBuilder.java
Author: rdonkin
Date: Tue Mar 11 15:31:30 2008
New Revision: 636131
URL: http://svn.apache.org/viewvc?rev=636131&view=rev
Log:
Added store to builder
Modified:
james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/CreateScript.java
james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/ScriptBuilder.java
Modified: james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/CreateScript.java
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/CreateScript.java?rev=636131&r1=636130&r2=636131&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/CreateScript.java (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/CreateScript.java Tue Mar 11 15:31:30 2008
@@ -23,7 +23,7 @@
public static final void main(String[] args) throws Exception {
ScriptBuilder builder = ScriptBuilder.open("localhost", 143);
- notHeaderFetches(builder);
+ searchAtoms(builder);
}
@@ -32,7 +32,11 @@
builder.create();
builder.select();
loadLotsOfMail(builder);
-
+ builder.store(builder.flags().flagged().answered().range(3, 6));
+ builder.getSearch().all();
+ builder.search();
+ builder.getSearch().answered();
+ builder.search();
builder.quit();
}
Modified: james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/ScriptBuilder.java
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/ScriptBuilder.java?rev=636131&r1=636130&r2=636131&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/ScriptBuilder.java (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/java/org/apache/james/test/functional/ScriptBuilder.java Tue Mar 11 15:31:30 2008
@@ -162,6 +162,16 @@
public void search() throws Exception {
command(search.command());
+ search = new Search();
+ }
+
+ public Flags flags() {
+ return new Flags();
+ }
+
+ public void store(Flags flags) throws Exception {
+ String command = flags.command();
+ command(command);
}
public Search getSearch() throws Exception {
@@ -235,6 +245,109 @@
delete();
logout();
close();
+ }
+
+ public static final class Flags {
+ private StringBuffer flags;
+ private StringBuffer msn;
+ private boolean first;
+ private boolean silent;
+ private boolean add;
+ private boolean subtract;
+
+ public Flags() {
+ add = false;
+ subtract = false;
+ silent = false;
+ first = true;
+ flags = new StringBuffer("(");
+ msn = new StringBuffer();
+ }
+
+ public Flags msn(long number) {
+ msn.append(number);
+ msn.append(' ');
+ return this;
+ }
+
+ public Flags range(long low, long high) {
+ msn.append(low);
+ msn.append(':');
+ msn.append(high);
+ msn.append(' ');
+ return this;
+ }
+
+ public Flags rangeTill(long number) {
+ msn.append("*:");
+ msn.append(number);
+ msn.append(' ');
+ return this;
+ }
+
+ public Flags rangeFrom(long number) {
+ msn.append(number);
+ msn.append(":* ");
+ return this;
+ }
+
+ public Flags add() {
+ add = true;
+ subtract = false;
+ return this;
+ }
+
+ public Flags subtract() {
+ add = false;
+ subtract = true;
+ return this;
+ }
+
+ public Flags silent() {
+ silent = true;
+ return this;
+ }
+
+ public Flags deleted() {
+ return append("\\DELETED");
+ }
+
+ public Flags flagged() {
+ return append("\\FLAGGED");
+ }
+
+ public Flags answered() {
+ return append("\\ANSWERED");
+ }
+
+ public Flags seen() {
+ return append("\\SEEN");
+ }
+
+ public String command() {
+ String flags;
+ if (add) {
+ flags =" +FLAGS " ;
+ } else if (subtract) {
+ flags =" -FLAGS " ;
+ } else {
+ flags = " FLAGS ";
+ }
+ if (silent) {
+ flags = flags + ".SILENT";
+ }
+ return "STORE " + msn + flags + this.flags + ")";
+ }
+
+ private Flags append(String term) {
+ if (first) {
+ first = false;
+ } else {
+ flags.append(' ');
+ }
+ flags.append(term);
+ return this;
+ }
}
public static final class Search {
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org