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);
        }