aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorSergey Nastich <nastich@users.noreply.github.com>2018-04-09 16:53:45 -0700
committerGitHub <noreply@github.com>2018-04-09 16:53:45 -0700
commit57ee8fa785c3815e45e473e5625d6e3cb1cd9402 (patch)
tree1c476db2e6ec44473ebfdea09cb284768549c40f /src/test
parentcc86f8d609969b40793a227b9af4b41a18657dfb (diff)
downloaddriver-core-57ee8fa785c3815e45e473e5625d6e3cb1cd9402.tar.gz
driver-core-57ee8fa785c3815e45e473e5625d6e3cb1cd9402.tar.bz2
driver-core-57ee8fa785c3815e45e473e5625d6e3cb1cd9402.zip
Add convenience methods to work with Tags: `taggedWith` wrapper and a proxy JSON format (#147)
* Add convenience methods to work with Tags: `tagged` wrapper and a proxy JSON format
Diffstat (limited to 'src/test')
-rw-r--r--src/test/scala/xyz/driver/core/JsonTest.scala14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/test/scala/xyz/driver/core/JsonTest.scala b/src/test/scala/xyz/driver/core/JsonTest.scala
index 7e8dba2..b845a44 100644
--- a/src/test/scala/xyz/driver/core/JsonTest.scala
+++ b/src/test/scala/xyz/driver/core/JsonTest.scala
@@ -13,6 +13,7 @@ import spray.json._
import xyz.driver.core.TestTypes.CustomGADT
import xyz.driver.core.domain.{Email, PhoneNumber}
import xyz.driver.core.json.enumeratum.HasJsonFormat
+import xyz.driver.core.tagging.Taggable
import xyz.driver.core.time.TimeOfDay
import scala.collection.immutable.IndexedSeq
@@ -31,6 +32,19 @@ class JsonTest extends FlatSpec with Matchers {
parsedId should be(referenceId)
}
+ "Json format for @@" should "read and write correct JSON" in {
+ trait Irrelevant
+ val reference = Id[JsonTest]("SomeID").tagged[Irrelevant]
+
+ val format = json.taggedFormat[Id[JsonTest], Irrelevant]
+
+ val writtenJson = format.write(reference)
+ writtenJson shouldBe JsString("SomeID")
+
+ val parsedId: Id[JsonTest] @@ Irrelevant = format.read(writtenJson)
+ parsedId shouldBe reference
+ }
+
"Json format for Name" should "read and write correct JSON" in {
val referenceName = Name[String]("Homer")