Пример #1
0
 global::EnvDTE.vsCMOverrideKind GetOverrideKind()
 {
     global::EnvDTE.vsCMOverrideKind kind = 0;
     if (method.IsAbstract)
     {
         kind |= global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindAbstract;
     }
     if (method.IsOverride)
     {
         kind |= global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindOverride;
     }
     if (method.IsVirtual && !method.IsAbstract && !method.IsOverride)
     {
         kind |= global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindVirtual;
     }
     if (method.IsSealed)
     {
         kind |= global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindSealed;
     }
     if (method.IsShadowing)
     {
         kind |= global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindNew;
     }
     return(kind);
 }
        public void OverrideKind_OrdinaryMethod_ReturnsNone()
        {
            CreatePublicFunction("MyClass.MyFunction");

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindNone, kind);
        }
        public void OverrideKind_MethodHiddenByNewKeyword_ReturnsNew()
        {
            CreatePublicFunction("MyClass.MyFunction");
            helper.MakeMethodNewOverride();

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindNew, kind);
        }
        public void OverrideKind_SealedMethod_ReturnsSealed()
        {
            CreatePublicFunction("MyClass.MyFunction");
            helper.MakeMethodSealed();

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindSealed, kind);
        }
        public void OverrideKind_AbstractMethod_ReturnsAbstract()
        {
            CreatePublicFunction("MyClass.MyFunction");
            helper.MakeMethodAbstract();

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindAbstract, kind);
        }
        public void OverrideKind_SealedMethod_ReturnsSealed()
        {
            CreateFunction(
                "public class MyClass {\r\n" +
                "    public sealed void MyFunction() {}\r\n" +
                "}");

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindSealed, kind);
        }
        public void OverrideKind_MethodOverride_ReturnsOverride()
        {
            CreateFunction(
                "public class MyClass {\r\n" +
                "    public override string ToString() { return \"MyClass\"; }\r\n" +
                "}");

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindOverride, kind);
        }
        public void OverrideKind_VirtualMethod_ReturnsVirtual()
        {
            CreateFunction(
                "public class MyClass {\r\n" +
                "    public virtual void MyFunction() {}\r\n" +
                "}");

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindVirtual, kind);
        }
        public void OverrideKind_AbstractMethod_ReturnsAbstract()
        {
            CreateFunction(
                "public class MyClass {\r\n" +
                "    public abstract void MyFunction();\r\n" +
                "}");

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindAbstract, kind);
        }
Пример #10
0
        public void OverrideKind_OrdinaryMethod_ReturnsNone()
        {
            CreateFunction(
                "public class MyClass {\r\n" +
                "    public void MyFunction() {}\r\n" +
                "}");

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindNone, kind);
        }
Пример #11
0
        public void OverrideKind_MethodHiddenByNewKeyword_ReturnsNew()
        {
            CreateFunction(
                "public class MyClass {\r\n" +
                "    public new string ToString() { return \"MyClass\"; }\r\n" +
                "}");

            global::EnvDTE.vsCMOverrideKind kind = codeFunction.OverrideKind;

            Assert.AreEqual(global::EnvDTE.vsCMOverrideKind.vsCMOverrideKindNew, kind);
        }