diff options
author | Mathias <mathias@spray.cc> | 2011-06-28 17:05:09 +0200 |
---|---|---|
committer | Mathias <mathias@spray.cc> | 2011-06-28 17:05:09 +0200 |
commit | 83c85a54e59da47cb9659dba42fcf001b06d631d (patch) | |
tree | 29d21b09c27915f899a4f0ba24a6638ba96924fa /src/test/scala/cc/spray/json/JsonParserSpec.scala | |
parent | 4d56f2e56694f7033d57752b1a61b73137058fcc (diff) | |
download | spray-json-83c85a54e59da47cb9659dba42fcf001b06d631d.tar.gz spray-json-83c85a54e59da47cb9659dba42fcf001b06d631d.tar.bz2 spray-json-83c85a54e59da47cb9659dba42fcf001b06d631d.zip |
Add test for thread-safety
Diffstat (limited to 'src/test/scala/cc/spray/json/JsonParserSpec.scala')
-rw-r--r-- | src/test/scala/cc/spray/json/JsonParserSpec.scala | 9 |
1 files changed, 8 insertions, 1 deletions
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 |