aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala/xyz/driver/core/JsonTest.scala
diff options
context:
space:
mode:
authorSergey Nastich <nastich@users.noreply.github.com>2018-09-19 13:57:53 -0400
committerGitHub <noreply@github.com>2018-09-19 13:57:53 -0400
commit1b979318d85ea6035084253596cf076151cef309 (patch)
treed5f64a3893b2581807020a88c8c2b28f277fbd53 /src/test/scala/xyz/driver/core/JsonTest.scala
parent60ad2abd17a50c8bd73bfe75084984b4de27bd79 (diff)
downloaddriver-core-1b979318d85ea6035084253596cf076151cef309.tar.gz
driver-core-1b979318d85ea6035084253596cf076151cef309.tar.bz2
driver-core-1b979318d85ea6035084253596cf076151cef309.zip
Improve PhoneNumber (#222)
* Add support for extensions * Add PathMatcher and allow parsing JSON from string * Add a number of convenience methods which are to be used instead of `toString`
Diffstat (limited to 'src/test/scala/xyz/driver/core/JsonTest.scala')
-rw-r--r--src/test/scala/xyz/driver/core/JsonTest.scala15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/test/scala/xyz/driver/core/JsonTest.scala b/src/test/scala/xyz/driver/core/JsonTest.scala
index 2aa3572..fd693f9 100644
--- a/src/test/scala/xyz/driver/core/JsonTest.scala
+++ b/src/test/scala/xyz/driver/core/JsonTest.scala
@@ -247,6 +247,21 @@ class JsonTest extends WordSpec with Matchers with Inspectors {
json.phoneNumberFormat.read(phoneJson)
}.getMessage shouldBe "Invalid phone number"
}
+
+ "parse phone number from string" in {
+ JsString("+14243039608").convertTo[PhoneNumber] shouldBe PhoneNumber("1", "4243039608")
+ }
+ }
+
+ "Path matcher for PhoneNumber" should {
+ "read valid phone number" in {
+ val string = "+14243039608x23"
+ val phone = PhoneNumber("1", "4243039608", Some("23"))
+
+ val matcher = PathMatcher("foo") / PhoneInPath
+
+ matcher(Uri.Path("foo") / string / "bar") shouldBe Matched(Uri.Path./("bar"), Tuple1(phone))
+ }
}
"Json format for ADT mappings" should {