Author: wesw
Date: Thu Jun 4 15:46:32 2009
New Revision: 781782
URL: http://svn.apache.org/viewvc?rev=781782&view=rev
Log:
making sure trackings of multiple files are separate and working
Modified:
struts/sandbox/trunk/struts2-fileupload-plugin/src/test/java/org/apache/struts2/fileupload/BasicProgressListenerTest.java
Modified:
struts/sandbox/trunk/struts2-fileupload-plugin/src/test/java/org/apache/struts2/fileupload/BasicProgressListenerTest.java
URL:
http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2-fileupload-plugin/src/test/java/org/apache/struts2/fileupload/BasicProgressListenerTest.java?rev=781782&r1=781781&r2=781782&view=diff
==============================================================================
---
struts/sandbox/trunk/struts2-fileupload-plugin/src/test/java/org/apache/struts2/fileupload/BasicProgressListenerTest.java
(original)
+++
struts/sandbox/trunk/struts2-fileupload-plugin/src/test/java/org/apache/struts2/fileupload/BasicProgressListenerTest.java
Thu Jun 4 15:46:32 2009
@@ -35,6 +35,7 @@
import javax.servlet.http.HttpServletResponse;
import java.util.Map;
import java.util.HashMap;
+import java.util.List;
/**
* Unit test for BasicProgressListener
@@ -54,6 +55,13 @@
*/
@Before
public void setUp() {
+ // the basic progress listener keys off of the session id
+ // and the file item id. To find the session id, it will
+ // try to get a session from the servletActionContext
+ // so, we setup a mock context to let it work. I'm not sure
+ // if all of the following is necessary, but it appears to
+ // work and ids are properly generating as of $Date$
+
Map extraContext = new HashMap();
servletContext = new MockServletContext();
@@ -83,7 +91,7 @@
UploadStatusTracker tracker2 = new UploadStatusHolder();
String key = request.getSession().getId();
- System.err.println("key - " + key);
+ // System.err.println("key - " + key);
UploadStatus status = tracker2.getUploadStatus(key , 1);
@@ -107,7 +115,31 @@
UploadStatusTracker tracker2 = new UploadStatusHolder();
String key = request.getSession().getId();
- System.err.println("key - " + key);
+ // System.err.println("key - " + key);
+
+ UploadStatus status = tracker2.getUploadStatus(key, 1 );
+
+ assertTrue(status.getBytesRead() == 10L);
+ assertTrue(status.getContentLength() == 10L);
+ assertTrue(status.getItemId() == 1);
+
+ }
+
+ /**
+ *
+ */
+ @Test
+ public void testMultipleFileUploadProgress() {
+ BasicProgressListener listener = new BasicProgressListener();
+ UploadStatusTracker tracker = new UploadStatusHolder();
+ listener.setTracker(tracker);
+ listener.setUpdateFrequency("10");
+ listener.update(10L, 10L, 1);
+ listener.update(100L, 100L, 2);
+
+ UploadStatusTracker tracker2 = new UploadStatusHolder();
+ String key = request.getSession().getId();
+ // System.err.println("key - " + key);
UploadStatus status = tracker2.getUploadStatus(key, 1 );
@@ -115,5 +147,14 @@
assertTrue(status.getContentLength() == 10L);
assertTrue(status.getItemId() == 1);
+ UploadStatus status2 = tracker2.getUploadStatus(key, 2 );
+
+ assertTrue(status2.getBytesRead() == 100L);
+ assertTrue(status2.getContentLength() == 100L);
+ assertTrue(status2.getItemId() == 2);
+
+ List<UploadStatus> bothStatuses =
tracker2.getAllStatusesInSession(key);
+ assertTrue(bothStatuses.size() == 2) ;
+
}
}
\ No newline at end of file