Author: dkatayev
Date: 2009-10-23 05:59:31 -0400 (Fri, 23 Oct 2009)
New Revision: 355
Modified:
jcr/trunk/component/webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestGet.java
Log:
[EXOJCR-178] Test for if-modified-since header added
Modified:
jcr/trunk/component/webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestGet.java
===================================================================
---
jcr/trunk/component/webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestGet.java 2009-10-23
09:53:04 UTC (rev 354)
+++
jcr/trunk/component/webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestGet.java 2009-10-23
09:59:31 UTC (rev 355)
@@ -18,19 +18,29 @@
*/
package org.exoplatform.services.jcr.webdav.command;
-import org.exoplatform.common.http.HTTPStatus;
-import org.exoplatform.services.jcr.webdav.BaseStandaloneTest;
-import org.exoplatform.services.jcr.webdav.WebDavConstants.WebDAVMethods;
-import org.exoplatform.services.jcr.webdav.utils.TestUtils;
-import org.exoplatform.services.rest.impl.ContainerResponse;
-
import java.io.ByteArrayInputStream;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.io.StringWriter;
+import java.text.SimpleDateFormat;
+import java.util.Locale;
+import java.util.TimeZone;
+import javax.jcr.Node;
+import javax.jcr.Property;
+import javax.ws.rs.core.MultivaluedMap;
+
+import org.exoplatform.common.http.HTTPStatus;
+import org.exoplatform.services.jcr.webdav.BaseStandaloneTest;
+import org.exoplatform.services.jcr.webdav.WebDavConstants.WebDAVMethods;
+import org.exoplatform.services.jcr.webdav.utils.TestUtils;
+import org.exoplatform.services.rest.ExtHttpHeaders;
+import org.exoplatform.services.rest.impl.ContainerResponse;
+import org.exoplatform.services.rest.impl.InputHeadersMap;
+import org.exoplatform.services.rest.impl.MultivaluedMapImpl;
+
/**
* Created by The eXo Platform SAS Author : Dmytro Katayev
* work.visor.ck(a)gmail.com Aug 13, 2008
@@ -41,13 +51,15 @@
private String path = TestUtils.getFileName();
private String fileContent = TestUtils.getFileContent();
+
+ private Node node;
@Override
public void setUp() throws Exception
{
super.setUp();
InputStream inputStream = new ByteArrayInputStream(fileContent.getBytes());
- TestUtils.addContent(session, path, inputStream, defaultFileNodeType,
"");
+ node = TestUtils.addContent(session, path, inputStream, defaultFileNodeType,
"");
}
public void testSimpleGet() throws Exception
@@ -63,6 +75,19 @@
String str = sw.toString();
assertEquals(fileContent, str);
}
+
+ public void testIfModifiedSince() throws Exception{
+ Node contentNode = node.getNode("jcr:content");
+ Property lastModifiedProperty =
contentNode.getProperty("jcr:lastModified");
+ String formatPattern = "EEE, dd MMM yyyy HH:mm:ss z";
+ SimpleDateFormat dateFormat = new SimpleDateFormat(formatPattern, Locale.ENGLISH);
+ dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
+ String lastModified = dateFormat.format(lastModifiedProperty.getDate().getTime());
+ MultivaluedMap<String, String> headers = new MultivaluedMapImpl();
+ headers.add(ExtHttpHeaders.IF_MODIFIED_SINCE, lastModified);
+ ContainerResponse response = service(WebDAVMethods.GET, getPathWS() + path,
"", headers, null);
+ assertEquals(HTTPStatus.NOT_MODIFIED, response.getStatus());
+ }
public void testNotFoundGet() throws Exception
{
Show replies by date