예제 #1
0
        public void PropertydDeclaration_AutoInt32PropertyTest()
        {
            var t = new TypeTranslationContext <TestClass>();
            var f = t.GetField(nameof(TestClass.AutoInt32Property));

            Assert.AreEqual(AccessibilityModifier.Public, f.Accessibility);
            Assert.AreEqual(PredefinedType.Number, f.FieldType);
        }
예제 #2
0
        public void EventDeclarationTest_Custom()
        {
            var t = new TypeTranslationContext <Custom>();

            Assert.IsNull(t.GetField("$ev_TestEvent"));
            Assert.IsNotNull(t.GetMethod("$addev_TestEvent"));
            Assert.IsNotNull(t.GetMethod("$remev_TestEvent"));
        }
예제 #3
0
        public void PropertydDeclaration_ReadOnlyInt32PropertyTest()
        {
            var t = new TypeTranslationContext <TestClass>();
            var f = t.GetField("__ReadOnlyInt32Property");

            Assert.AreEqual(AccessibilityModifier.Private, f.Accessibility);
            Assert.AreEqual(PredefinedType.Number, f.FieldType);

            var g = t.GetGetAccessor("ReadOnlyInt32Property");

            Assert.AreEqual(AccessibilityModifier.Protected, g.Accessibility);
            Assert.AreEqual(PredefinedType.Number, g.PropertyType);

            var s = t.GetSetAccessor("ReadOnlyInt32Property");

            Assert.IsNull(s);
        }
예제 #4
0
        public void PropertydDeclaration_WriteOnlyInt32PropertyTest()
        {
            var t = new TypeTranslationContext <TestClass>();
            var f = t.GetField("__WriteOnlyInt32Property");

            Assert.AreEqual(AccessibilityModifier.Private, f.Accessibility);
            Assert.AreEqual(PredefinedType.Number, f.FieldType);

            var g = t.GetGetAccessor("WriteOnlyInt32Property");

            Assert.IsNull(g);

            var s = t.GetSetAccessor("WriteOnlyInt32Property");

            Assert.AreEqual(AccessibilityModifier.Protected, s.Accessibility);
            Assert.AreEqual(PredefinedType.Number, s.PropertyType);
            Assert.AreEqual("value", s.ParameterName);
        }
예제 #5
0
        public void PropertydDeclaration_AccessibilityInt32PropertyTest()
        {
            var t = new TypeTranslationContext <TestClass>();
            var f = t.GetField("__" + nameof(TestClass.AccessibilityInt32Property));

            Assert.AreEqual(AccessibilityModifier.Private, f.Accessibility);
            Assert.AreEqual(PredefinedType.Number, f.FieldType);

            var g = t.GetGetAccessor(nameof(TestClass.AccessibilityInt32Property));

            Assert.AreEqual(AccessibilityModifier.Public, g.Accessibility);
            Assert.AreEqual(PredefinedType.Number, g.PropertyType);

            var s = t.GetSetAccessor(nameof(TestClass.AccessibilityInt32Property));

            Assert.AreEqual(AccessibilityModifier.Private, s.Accessibility);
            Assert.AreEqual(PredefinedType.Number, s.PropertyType);
            Assert.AreEqual("value", s.ParameterName);
        }