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/30 16:16:40 UTC

svn commit: r642742 [1/2] - in /james/server/trunk/experimental-seda-imap-function/src/test: java/org/apache/james/test/functional/ resources/org/apache/james/test/functional/imap/scripts/

Author: rdonkin
Date: Sun Mar 30 07:16:39 2008
New Revision: 642742

URL: http://svn.apache.org/viewvc?rev=642742&view=rev
Log:
RENAME test

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
    james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Rename.test

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=642742&r1=642741&r2=642742&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 Sun Mar 30 07:16:39 2008
@@ -35,7 +35,50 @@
 
     public static final void main(String[] args) throws Exception {
         ScriptBuilder builder = ScriptBuilder.open("localhost", 143);
-        mimePartialFetch(builder);
+        rename(builder);
+    }
+    
+    public static void rename(ScriptBuilder builder) throws Exception {
+        setupSearch(builder, true);
+        builder.select();
+        String originalMailbox = builder.getMailbox();
+        builder.getFetch().setFlagsFetch(true).bodyPeekHeaders(ScriptBuilder.Fetch.SELECT_HEADERS).setUid(true);
+        builder.fetchAllMessages();
+        builder.setMailbox("other").create().select().append();
+        builder.setMailbox("base").create().select();
+        builder.rename(originalMailbox, "moved").setMailbox("moved").select().fetchAllMessages();
+        builder.setMailbox(originalMailbox).select();
+        builder.rename("other", "base");
+        builder.setMailbox(originalMailbox).select();
+        builder.setMailbox("moved").select();
+        builder.setMailbox("other").select();
+        builder.setMailbox("base").select();
+        builder.setMailbox("BOGUS").select();
+        builder.setMailbox("WHATEVER").select();
+        builder.rename("other", originalMailbox);
+        builder.setMailbox(originalMailbox).select();
+        builder.setMailbox("moved").select();
+        builder.setMailbox("other").select();
+        builder.setMailbox("base").select();
+        builder.setMailbox("BOGUS").select();
+        builder.setMailbox("WHATEVER").select();
+        builder.rename("BOGUS", "WHATEVER");
+        builder.rename(originalMailbox, "INBOX");
+        builder.rename(originalMailbox, "inbox");
+        builder.rename(originalMailbox, "Inbox");
+        builder.setMailbox(originalMailbox).select();
+        builder.setMailbox("moved").select();
+        builder.setMailbox("other").select();
+        builder.setMailbox("base").select();
+        builder.setMailbox("BOGUS").select();
+        builder.setMailbox("WHATEVER").select();;
+        builder.setMailbox("BOGUS").delete();
+        builder.setMailbox("WHATEVER").delete();
+        builder.setMailbox(originalMailbox).delete();
+        builder.setMailbox("base").delete();
+        builder.setMailbox("other").delete();
+        builder.setMailbox("moved").delete();
+        builder.quit();
     }
     
     public static void mimePartialFetch(ScriptBuilder builder) throws Exception {

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=642742&r1=642741&r2=642742&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 Sun Mar 30 07:16:39 2008
@@ -125,8 +125,9 @@
         return mailbox;
     }
 
-    public final void setMailbox(String mailbox) {
+    public final ScriptBuilder setMailbox(String mailbox) {
         this.mailbox = mailbox;
+        return this;
     }
 
     public final String getPassword() {
@@ -156,14 +157,20 @@
         response();
     }
     
+    public ScriptBuilder rename(String from, String to) throws Exception {
+        command("RENAME " + from + " " + to);
+        return this;
+    }
+    
     public ScriptBuilder select() throws Exception {
         command("SELECT " + mailbox);
         return this;
     }
     
-    public void create() throws Exception {
+    public ScriptBuilder create() throws Exception {
         command("CREATE " + mailbox);
         createdMailbox = true;
+        return this;
     }
     
     public ScriptBuilder flagDeleted() throws Exception {
@@ -845,6 +852,7 @@
         private boolean flagsFetch = false;
         private boolean rfc822Size = false;
         private boolean internalDate = false;
+        private boolean uid = false;
         private String bodyPeek = null;
         
         public String command(int messageNumber) {
@@ -859,24 +867,36 @@
             return flagsFetch;
         }
 
-        public final void setFlagsFetch(boolean flagsFetch) {
+        public final Fetch setFlagsFetch(boolean flagsFetch) {
             this.flagsFetch = flagsFetch;
+            return this;
         }
         
+        public final boolean isUid() {
+            return uid;
+        }
+
+        public final Fetch setUid(boolean uid) {
+            this.uid = uid;
+            return this;
+        }
+
         public final boolean isRfc822Size() {
             return rfc822Size;
         }
 
-        public final void setRfc822Size(boolean rfc822Size) {
+        public final Fetch setRfc822Size(boolean rfc822Size) {
             this.rfc822Size = rfc822Size;
+            return this;
         }
         
         public final boolean isInternalDate() {
             return internalDate;
         }
 
-        public final void setInternalDate(boolean internalDate) {
+        public final Fetch setInternalDate(boolean internalDate) {
             this.internalDate = internalDate;
+            return this;
         }
         
         public final String getBodyPeek() {
@@ -895,8 +915,9 @@
             setBodyPeek(buildBody(true, buildHeaderFields(fields, true)));
         }
         
-        public void bodyPeekHeaders(String[] fields) {
+        public Fetch bodyPeekHeaders(String[] fields) {
             setBodyPeek(buildBody(true, buildHeaderFields(fields, false)));
+            return this;
         }
         
         public String buildBody(boolean peek, String section) {
@@ -939,6 +960,9 @@
             if (internalDate) {
                 first = add(buffer, first, "INTERNALDATE");
             }
+            if (uid) {
+                first = add(buffer, first, "UID");
+            }
             add(buffer, first, bodyPeek);
             return buffer.toString();
         }
@@ -1188,7 +1212,7 @@
                                         "OK Logged in",
                                         "LOGOUT"};
         
-        private final CharBuffer lineBuffer = CharBuffer.allocate(4096);
+        private final CharBuffer lineBuffer = CharBuffer.allocate(65536);
         private boolean isClient = false;
         public void client() {
             lineBuffer.put("C: ");



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org