Exemple #1
0
        public void ThisExpression_Test()
        {
            var t = new TypeTranslationContext <TestClass>();
            var m = t.GetMethod(nameof(TestClass.SourceMethod));

            Assert.IsNotNull(m);
        }
Exemple #2
0
        public void WhileStatement_Test()
        {
            var t = new TypeTranslationContext <TestClass>();
            var m = t.GetMethod(nameof(TestClass.SourceMethod));

            Assert.IsNotNull(m);
        }
Exemple #3
0
 public PToCSharpCompiler(Compiler compiler, AST <Model> modelWithTypes, Dictionary <string, Dictionary <int, SourceInfo> > idToSourceInfo, string cSharpFileName)
     : base(compiler, modelWithTypes, idToSourceInfo)
 {
     this.cSharpFileName = cSharpFileName;
     typeContext         = new TypeTranslationContext(this);
     GenerateTypeInfo();
 }
Exemple #4
0
        public void MethodDeclaration_Test()
        {
            var t = new TypeTranslationContext <TestClass>();
            var f = t.GetMethod("Method1");

            Assert.IsNotNull(f);
        }
Exemple #5
0
        public void UnaryExpression_Test()
        {
            var t = new TypeTranslationContext <TestClass>();
            var m = t.GetMethod(nameof(TestClass.UnaryPlus));

            Assert.IsNotNull(m);
        }
Exemple #6
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);
        }
Exemple #7
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"));
        }
Exemple #8
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);
        }
Exemple #9
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);
        }
Exemple #10
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);
        }
Exemple #11
0
        public void ConstructorDeclaration_Test()
        {
            var f = new TypeTranslationContext <TestClass>().GetConstructor();

            Assert.IsNotNull(f);
        }
Exemple #12
0
        public void FieldDeclaration_Test()
        {
            var f = new TypeTranslationContext <TestClass>().GetField("_IntegerField");

            Assert.IsNotNull(f);
        }
Exemple #13
0
        public void TypeDeclarationTest_InheritedAndImplemented()
        {
            var c = new TypeTranslationContext <InheritedAndImplementedTestClass>().Result;

            Assert.IsNotNull(c);
        }