From 83c85a54e59da47cb9659dba42fcf001b06d631d Mon Sep 17 00:00:00 2001 From: Mathias Date: Tue, 28 Jun 2011 17:05:09 +0200 Subject: Add test for thread-safety --- src/test/scala/cc/spray/json/JsonParserSpec.scala | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/test/scala/cc/spray') diff --git a/src/test/scala/cc/spray/json/JsonParserSpec.scala b/src/test/scala/cc/spray/json/JsonParserSpec.scala index dd61f94..6402b3d 100644 --- a/src/test/scala/cc/spray/json/JsonParserSpec.scala +++ b/src/test/scala/cc/spray/json/JsonParserSpec.scala @@ -1,6 +1,7 @@ package cc.spray.json import org.specs.Specification +import org.parboiled.common.FileUtils class JsonParserSpec extends Specification { @@ -40,6 +41,12 @@ class JsonParserSpec extends Specification { JsonParser("""[null, 1.23 ,{"key":true } ] """) mustEqual JsArray(JsNull, JsNumber(1.23), JsObject(JsField("key", true))) ) + "be reentrant" in { + val largeJsonSource = FileUtils.readAllCharsFromResource("test.json") + List.fill(20)(largeJsonSource).par.map(JsonParser(_)).toList.map { + _.asInstanceOf[JsObject].asMap("questions").asInstanceOf[JsArray].elements.size + } mustEqual List.fill(20)(100) + } } - + } \ No newline at end of file -- cgit v1.2.3