public void CompoundDocumentShouldNotDuplicateIncludedResources() { var r1 = new ResourceWithRelationship { Id = 1, ToOne = new Resource { Id = 10 } }; var r2 = new ResourceWithRelationship { Id = 2, ToOne = new Resource { Id = 10 } }; var d = new ResourceDocument(new List <ResourceObject> { new ResourceObject(r1, _p), new ResourceObject(r2, _p) }, _p); JToken json = d.ToJson(); Assert.AreEqual(1, json["included"].Count()); }
public void DocumentRootMustBeJObject() { var r = new Resource { Id = 1 }; var d = new ResourceDocument(new ResourceObject(r, _p), _p); JToken json = d.ToJson(); Assert.AreEqual(JTokenType.Object, json.Type); }
public void SimpleDocumentShouldLackIncludedSection() { var r = new Resource { Id = 1 }; var d = new ResourceDocument(new ResourceObject(r, _p), _p); JToken json = d.ToJson(); Assert.IsNull(json["included"]); }
public void DocumentRootMustContainPrimaryObject() { var r = new Resource { Id = 1 }; var d = new ResourceDocument(new ResourceObject(r, _p), _p); JToken json = d.ToJson(); Assert.AreEqual(JTokenType.Object, json["data"].Type); Assert.IsTrue(IsResource(json["data"])); }
public void DocumentRootMustContainPrimaryData() { var r = new Resource { Id = 1 }; var d = new ResourceDocument(new ResourceObject(r, _p), _p); JToken json = d.ToJson(); Assert.IsNotNull(json["data"]); Assert.IsNull(json["errors"]); }
public void ResourceDocumentWithMetadaShouldSerializeMetaAttribute() { var r = new Resource { Id = 1 }; var d = new ResourceDocument(new ResourceObject(r, _p), _p); d.Meta.MyMeta = "foo"; JToken json = d.ToJson(); Assert.AreEqual("foo", (string)json["meta"]["my-meta"]); }
public void DocumentRootMustContainErrorsAsArray() { var e = new Error { Id = "1" }; var d = new ResourceDocument(new List <Error> { e }, _p); JToken json = d.ToJson(); Assert.AreEqual(JTokenType.Array, json["errors"].Type); }
public void DocumentRootMustContainErrors() { var e = new Error { Id = "1" }; var d = new ResourceDocument(new List <Error> { e }, _p); JToken json = d.ToJson(); Assert.IsNotNull(json["errors"]); Assert.IsNull(json["data"]); }
public void DocumentRootMustContainPrimaryArraySingle() { var r = new Resource { Id = 1 }; var d = new ResourceDocument(new List <ResourceObject> { new ResourceObject(r, _p) }, _p); JToken json = d.ToJson(); Assert.AreEqual(JTokenType.Array, json["data"].Type); Assert.IsTrue(IsResource(json["data"][0])); }
public void CompoundDocumentWithoutSideloadsShouldLackIncludedSection() { var r = new ResourceWithRelationshipNoSideload { Id = 1, ToOne = new Resource { Id = 2 } }; var d = new ResourceDocument(new ResourceObject(r, _p), _p); JToken json = d.ToJson(); Assert.IsNull(json["included"]); }
public void CompoundDocumentShouldHaveIncludedSection() { var r = new ResourceWithRelationship { Id = 1, ToOne = new Resource { Id = 2 } }; var d = new ResourceDocument(new ResourceObject(r, _p), _p); JToken json = d.ToJson(); Assert.IsNotNull(json["included"]); }
public void CompoundDocumentMustHaveArrayOfResourcesAsIncludedSection() { var r = new ResourceWithRelationship { Id = 1, ToOne = new Resource { Id = 2 } }; var d = new ResourceDocument(new ResourceObject(r, _p), _p); JToken json = d.ToJson(); Assert.AreEqual(JTokenType.Array, json["included"].Type); Assert.IsTrue(IsResource(json["included"][0])); }