public void DecorateClassNonBodyTest()
        {
            var decorator = new BodyPropertyDecorator(new DefaultObjectTypeProvider("Schema"));
            var resource  = new MockResource();
            var method    = new MockMethod()
            {
                Name = "Test", HasBody = false
            };
            var decl         = new CodeTypeDeclaration();
            var resourceDecl = new CodeTypeDeclaration();

            decorator.DecorateClass(resource, method, decl, resourceDecl);

            Assert.AreEqual(0, decl.Members.Count);
        }
        public void DecorateClassTest()
        {
            var decorator = new BodyPropertyDecorator(new DefaultObjectTypeProvider("Schema"));
            var resource  = new MockResource();
            var method    = new MockMethod()
            {
                Name = "Test", RequestType = "SomeSchema", HasBody = true
            };
            var decl         = new CodeTypeDeclaration();
            var resourceDecl = new CodeTypeDeclaration();

            decorator.DecorateClass(resource, method, decl, resourceDecl);

            Assert.AreEqual(3, decl.Members.Count);
            Assert.IsInstanceOf <CodeMemberField>(decl.Members[0]);
            Assert.IsInstanceOf <CodeMemberProperty>(decl.Members[1]);
            Assert.AreEqual("Body", decl.Members[1].Name);
            Assert.IsInstanceOf <CodeMemberMethod>(decl.Members[2]);
            Assert.AreEqual("GetBody", decl.Members[2].Name);
        }