Permalink
Browse files

Factor out ring.util.test/string-input-stream.

  • Loading branch information...
1 parent 7d09995 commit 8f13f08a93e47b96f5b29db076dcc6fb51967f68 @mmcgrana committed Mar 3, 2010
View
7 ring-core/src/ring/util/test.clj
@@ -0,0 +1,7 @@
+(ns ring.util.test
+ "Utilities for testing Ring components."
+ (:import (java.io ByteArrayInputStream)))
+
+(defn string-input-stream [#^String s]
+ "Returns a ByteArrayInputStream for the given String."
+ (ByteArrayInputStream. (.getBytes s)))
View
10 ring-core/test/ring/middleware/multipart_params_test.clj
@@ -2,18 +2,16 @@
(:use clojure.test
ring.middleware.multipart-params
[clojure.contrib.def :only (defvar-)])
- (:require [clojure.contrib.duck-streams :as du])
- (:import (java.io File ByteArrayInputStream)))
-
-(defn- str-input-stream [#^String s]
- (ByteArrayInputStream. (.getBytes s)))
+ (:require [clojure.contrib.duck-streams :as du]
+ [ring.util.test :as test :as tu])
+ (:import java.io.File))
(defvar- upload-content-type
"multipart/form-data; boundary=----WebKitFormBoundaryAyGUY6aMxOI6UF5s")
(defvar- upload-content-length 188)
-(defvar- upload-body (str-input-stream
+(defvar- upload-body (tu/string-input-stream
"------WebKitFormBoundaryAyGUY6aMxOI6UF5s\r\nContent-Disposition: form-data; name=\"upload\"; filename=\"test.txt\"\r\nContent-Type: text/plain\r\n\r\nfoo\r\n\r\n------WebKitFormBoundaryAyGUY6aMxOI6UF5s--"))
(defvar- wrapped-echo (wrap-multipart-params identity))
View
11 ring-core/test/ring/middleware/params_test.clj
@@ -1,10 +1,7 @@
(ns ring.middleware.params-test
(:use clojure.test
ring.middleware.params)
- (:import java.io.ByteArrayInputStream))
-
-(defn- str-input-stream [#^String s]
- (ByteArrayInputStream. (.getBytes s)))
+ (:require [ring.util.test :as test :as tu]))
(def wrapped-echo (wrap-params identity))
@@ -18,23 +15,23 @@
(deftest wrap-params-query-and-form-params
(let [req {:query-string "foo=bar"
:content-type "application/x-www-form-urlencoded"
- :body (str-input-stream "biz=bat%25")}
+ :body (tu/string-input-stream "biz=bat%25")}
resp (wrapped-echo req)]
(is (= {"foo" "bar"} (:query-params resp)))
(is (= {"biz" "bat%"} (:form-params resp)))
(is (= {"foo" "bar" "biz" "bat%"} (:params resp)))))
(deftest wrap-params-not-form-encoded
(let [req {:content-type "application/json"
- :body (str-input-stream "{foo: \"bar\"}")}
+ :body (tu/string-input-stream "{foo: \"bar\"}")}
resp (wrapped-echo req)]
(is (empty? (:form-params resp)))
(is (empty? (:params resp)))))
(deftest wrap-params-always-assocs-maps
(let [req {:query-string ""
:content-type "application/x-www-form-urlencoded"
- :body (str-input-stream "")}
+ :body (tu/string-input-stream "")}
resp (wrapped-echo req)]
(is (= {} (:query-params resp)))
(is (= {} (:form-params resp)))
View
10 ring-devel/test/ring/handler/dump_test.clj
@@ -1,18 +1,18 @@
(ns ring.handler.dump-test
- (:use (clojure test)
- (ring.handler dump))
- (:import (java.io ByteArrayInputStream)))
+ (:use clojure.test
+ ring.handler.dump)
+ (:require [ring.util.test :as test :as tu]))
(def post-req
{:uri "/foo/bar"
:request-method :post
- :body (ByteArrayInputStream. (.getBytes "post body"))})
+ :body (tu/string-input-stream "post body")})
(def get-req
{:uri "/foo/bar"
:request-method :get})
-(deftest handler-dump
+(deftest test-handle-dump
(let [{:keys [status]} (handle-dump post-req)]
(is (= 200 status)))
(let [{:keys [status]} (handle-dump get-req)]
View
12 ring-devel/test/ring/middleware/lint_test.clj
@@ -1,12 +1,8 @@
(ns ring.middleware.lint-test
(:use clojure.test
ring.middleware.lint)
- (:import (java.io File InputStream ByteArrayInputStream)))
-
-(defn str-input-stream
- "Returns a ByteArrayInputStream for the given String."
- [#^String string]
- (ByteArrayInputStream. (.getBytes string)))
+ (:require [ring.util.test :as test :as tu])
+ (:import (java.io File InputStream)))
(def valid-request
{:server-port 80
@@ -114,7 +110,7 @@
[nil {:foo "bar"} {"bar" :foo} {"Bar" "foo"}])
(lints-req :body
- [nil (str-input-stream "thebody")]
+ [nil (tu/string-input-stream "thebody")]
["thebody" :thebody])
@@ -127,5 +123,5 @@
[nil {:foo "bar"} {"foo" :bar} {"dir" 123}])
(lints-resp :body
- [nil "thebody" (str-input-stream "thebody") (File. "test/ring/assets/foo.html")]
+ [nil "thebody" (tu/string-input-stream "thebody") (File. "test/ring/assets/foo.html")]
[123 :thebody])

0 comments on commit 8f13f08

Please sign in to comment.