diff options
Diffstat (limited to 'src/test/scala/com/drivergrp/core/RestTest.scala')
-rw-r--r-- | src/test/scala/com/drivergrp/core/RestTest.scala | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/test/scala/com/drivergrp/core/RestTest.scala b/src/test/scala/com/drivergrp/core/RestTest.scala new file mode 100644 index 0000000..68be55c --- /dev/null +++ b/src/test/scala/com/drivergrp/core/RestTest.scala @@ -0,0 +1,40 @@ +package com.drivergrp.core + +import com.drivergrp.core.time.provider.SystemTimeProvider +import org.scalatest.{FlatSpec, Matchers} + +class RestTest extends FlatSpec with Matchers { + + "Json format for Id" should "read and write correct JSON" in { + + val referenceId = Id[String](1312L) + + val writtenJson = com.drivergrp.core.rest.basicFormats.idFormat.write(referenceId) + writtenJson.prettyPrint should be("1312") + + val parsedId = com.drivergrp.core.rest.basicFormats.idFormat.read(writtenJson) + parsedId should be(referenceId) + } + + "Json format for Name" should "read and write correct JSON" in { + + val referenceName = Name[String]("Homer") + + val writtenJson = com.drivergrp.core.rest.basicFormats.nameFormat.write(referenceName) + writtenJson.prettyPrint should be("\"Homer\"") + + val parsedName = com.drivergrp.core.rest.basicFormats.nameFormat.read(writtenJson) + parsedName should be(referenceName) + } + + "Json format for Time" should "read and write correct JSON" in { + + val referenceTime = new SystemTimeProvider().currentTime() + + val writtenJson = com.drivergrp.core.rest.basicFormats.timeFormat.write(referenceTime) + writtenJson.prettyPrint should be("{\n \"timestamp\": " + referenceTime.millis + "\n}") + + val parsedTime = com.drivergrp.core.rest.basicFormats.timeFormat.read(writtenJson) + parsedTime should be(referenceTime) + } +} |