package com.qvantel.jsonapi import org.specs2.mutable.Specification import com.netaporter.uri.dsl._ import _root_.spray.json.DefaultJsonProtocol._ class PathToSpec extends Specification { implicit val apiRoot = ApiRoot(Some("foo" / "bar")) @jsonApiResource final case class Test(id: String) "apiRoot should be printed to PathTo output" >> { val t = Test("1") PathTo[Test].entity(t) must be equalTo "foo/bar/tests/1" PathToId[Test].self("test") must be equalTo "foo/bar/tests/test" rawOne(t) .fields("data") .asJsObject .fields("links") .asJsObject .fields("self") .convertTo[String] must be equalTo "foo/bar/tests/1" } "root should print out apiRoot" >> { PathTo[Test].root must be equalTo "foo/bar/tests" } }