From 8f6ea900f2f75bfdfadb7f484ec64ac7ea78623c Mon Sep 17 00:00:00 2001
From: Thomas Tanghus <thomas@tanghus.net>
Date: Sun, 9 Mar 2014 23:01:16 +0100
Subject: Chainable Response in AppFramework

---
 tests/lib/appframework/http/ResponseTest.php | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

(limited to 'tests/lib/appframework/http/ResponseTest.php')

diff --git a/tests/lib/appframework/http/ResponseTest.php b/tests/lib/appframework/http/ResponseTest.php
index 063ab8b5d33..27350725d79 100644
--- a/tests/lib/appframework/http/ResponseTest.php
+++ b/tests/lib/appframework/http/ResponseTest.php
@@ -117,5 +117,25 @@ class ResponseTest extends \PHPUnit_Framework_TestCase {
 		$this->assertEquals('Thu, 01 Jan 1970 00:00:01 +0000', $headers['Last-Modified']);
 	}
 
+	public function testChainability() {
+		$lastModified = new \DateTime(null, new \DateTimeZone('GMT'));
+		$lastModified->setTimestamp(1);
+
+		$this->childResponse->setEtag('hi')
+			->setStatus(Http::STATUS_NOT_FOUND)
+			->setLastModified($lastModified)
+			->cacheFor(33)
+			->addHeader('hello', 'world');
+
+		$headers = $this->childResponse->getHeaders();
+
+		$this->assertEquals('world', $headers['hello']);
+		$this->assertEquals(Http::STATUS_NOT_FOUND, $this->childResponse->getStatus());
+		$this->assertEquals('hi', $this->childResponse->getEtag());
+		$this->assertEquals('Thu, 01 Jan 1970 00:00:01 +0000', $headers['Last-Modified']);
+		$this->assertEquals('max-age=33, must-revalidate',
+			$headers['Cache-Control']);
+
+	}
 
 }
-- 
cgit v1.2.3