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"]);
        }
Beispiel #6
0
        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]));
        }