public void should_just_use_IProjectMyself_Project_in_accessor_projection()
        {
            var projection = AccessorProjection<ComplexValueHolder, ComplexValue>.For(x => x.Value);
            var target = new ComplexValueHolder
            {
                Value = new ComplexValue {Name = "Jeremy", Age = 38}
            };

            var context = new ProjectionContext<ComplexValueHolder>(new InMemoryServiceLocator(), target);

            var node = new DictionaryMediaNode();
            projection.As<IProjection<ComplexValueHolder>>().Write(context, node);

            node.Values["Value"].As<IDictionary<string, object>>()["Name"].ShouldEqual("Jeremy");
            node.Values["Value"].As<IDictionary<string, object>>()["Age"].ShouldEqual(38);
        }
        public void should_just_use_IProjectMyself_Project_in_accessor_projection()
        {
            var projection = AccessorProjection <ComplexValueHolder, ComplexValue> .For(x => x.Value);

            var target = new ComplexValueHolder
            {
                Value = new ComplexValue {
                    Name = "Jeremy", Age = 38
                }
            };

            var context = new ProjectionContext <ComplexValueHolder>(new InMemoryServiceLocator(), target);

            var node = new DictionaryMediaNode();

            projection.As <IProjection <ComplexValueHolder> >().Write(context, node);

            node.Values["Value"].As <IDictionary <string, object> >()["Name"].ShouldEqual("Jeremy");
            node.Values["Value"].As <IDictionary <string, object> >()["Age"].ShouldEqual(38);
        }