コード例 #1
0
        public async Task BaseClass_Collection_on_hierarchy_works()
        {
            var repo         = new Repository <Hierarchy>(_fixture.InMemoryStorage, new OpenRightExpressionsHelper <Hierarchy>(), _fixture.IncludeApplicator);
            var instanciator = new BaseClassInstanciator <Hierarchy>(new InheritanceConfiguration());
            var collection   = new RestCollection <Hierarchy, int>(repo, new BaseClassPatcher <Hierarchy>(_fixture.PatcherProvider, _fixture.ReflectionHelper, new InheritanceConfiguration()), instanciator);

            var candidate = _parser.Parse <Hierarchy, int>(@"{ ""type"":""super"", ""superProperty"": ""lol"" }");
            await collection.CreateAsync(candidate, new Query <Hierarchy> {
                Verb = Helpers.HttpVerbs.Post
            });
        }
コード例 #2
0
        public async Task Collection_on_hierarchy_fails()
        {
            await Assert.ThrowsAsync <BadRequestException>(async() =>
            {
                var repo         = new Repository <Hierarchy>(_fixture.InMemoryStorage, new Mock <IRightExpressionsHelper <Hierarchy> >().Object, _fixture.IncludeApplicator);
                var instanciator = new BaseClassInstanciator <Hierarchy>(new InheritanceConfiguration());
                var collection   = new RestCollection <Hierarchy, int>(repo, new ObjectPatcher <Hierarchy>(_fixture.PatcherProvider, _fixture.ReflectionHelper), instanciator);

                var candidate = _parser.Parse <Hierarchy, int>(@"{ ""type"":""super"", ""superProperty"": ""lol"" }");
                await collection.CreateAsync(candidate, new Query <Hierarchy> {
                    Verb = Helpers.HttpVerbs.Post
                });
            });
        }