Пример #1
0
        public void TestMethodDefaultPropertyNotSupported1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new DefaultProperty()
                .NotSupported());

            Assert.AreEqual(0, test.Property1);
        }
Пример #2
0
        public void TestMethodProperty3()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .Constant(5));

            test.Property1 = 42;
        }
        public void TestMethodLazyCreatorProperty1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .LazyCreator(() => 5));

            Assert.AreEqual(5, test.Property1);
        }
Пример #4
0
        public void TestMethodPropertyPropertyMapped11()
        {
            TypeDefinition <ITestProperties> typeDefinition = TypeDefinition <ITestProperties> .Create(new MappedTestClass2());

            ITestProperties test = typeDefinition.CreateNew();

            test.Property1 = 42;
            Assert.AreEqual(42, test.Property1);
        }
Пример #5
0
        public void TestMethodDefaultPropertyValidityCheck3()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new DefaultProperty()
                .ValidityCheck(this, nameof(NonDefaultChecker)));

            test.Property2 = null;
        }
        public void TestMethodProperty4()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property2))
                .SetterGetter());

            Assert.AreEqual(null, test.Property2);
        }
        public void TestMethodPropertyLinkedObjects4()
        {
            BeethovenFactory factory = new BeethovenFactory();
            var             obj1     = new { Property1 = 6 };
            var             obj2     = new { Property1 = 17 };
            ITestProperties test     = factory.Generate <ITestProperties>(
                new LinkedObjects(obj1, obj2));

            Assert.AreEqual(17, test.Property1);
        }
        public void TestMethodProperty4()
        {
            ITestProperties test =
                TypeDefinition <ITestProperties> .Create()
                .Add(new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                     .Constant(5))
                .CreateNew();

            test.Property1 = 5;
        }
Пример #9
0
        public void TestMethodPropertyValidityCheck2()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .ValidityCheck(value => value % 2 == 0));

            test.Property1 = 1;
            Assert.Fail();
        }
Пример #10
0
        public void TestMethodProperty3()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .DelegatedSetter(value => { }));

            test.Property1 = 5;
            Assert.AreEqual(0, test.Property1);
        }
Пример #11
0
        public void TestMethodDefaultPropertySkipIfEqual1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new DefaultProperty()
                .SkipIfEqual()
                .NotSupported());

            test.Property1 = 0;
        }
Пример #12
0
        public void TestMethodDefaultPropertyConstant1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new DefaultProperty()
                .Constant(ConstantValue));

            Assert.AreEqual(0, test.Property1);
            Assert.AreEqual("Unknown", test.Property2);
        }
        public void TestMethodInitialValueTest1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .InitialValue(5)
                .SetterGetter());

            Assert.AreEqual(5, test.Property1);
        }
        public void TestMethodPropertyRangeCheck3()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .RangeCheck(0, 42));

            test.Property1 = -1;
            Assert.Fail();
        }
Пример #15
0
        public void TestMethodPropertyNotSupported2()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <string>(nameof(ITestProperties.Property2))
                .NotSupported());

            Assert.AreNotEqual("abc", test.Property2);
            Assert.Fail("No exception");
        }
Пример #16
0
        public void TestMethodPropertyNotSupported1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .NotSupported());

            test.Property1 = 42;
            Assert.Fail("No exception");
        }
Пример #17
0
        public void TestMethodPropertyPropertyMapped7()
        {
            TypeDefinition <ITestProperties> typeDefinition = TypeDefinition <ITestProperties> .Create(FieldDefinition
                                                                                                       .CreateFromConstructorParameter <MappedTestClass>()
                                                                                                       .ImportInMain());

            ITestProperties test = typeDefinition.CreateNew(new MappedTestClass());

            test.Property1 = 42;
            Assert.AreEqual(42, test.Property1);
        }
Пример #18
0
        public void TestMethodPropertyPropertyMapped12()
        {
            MappedTestClass3 obj     = new MappedTestClass3();
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                obj,
                new PropertyDefinition <string>(nameof(ITestProperties.Property2))
                .Constant("42"));

            Assert.AreEqual("42", test.Property2);
        }
Пример #19
0
        public void TestMethodPropertyPropertyMapped13()
        {
            TypeDefinition <ITestProperties> typeDefinition = TypeDefinition <ITestProperties> .Create(
                FieldDefinition.CreateFromFactory(() => new MappedTestClass())
                .ImportInMain());

            ITestProperties test = typeDefinition.CreateNew();

            test.Property1 = 42;
            Assert.AreEqual(42, test.Property1);
        }
Пример #20
0
        public void TestMethodProperty2()
        {
            int              setCount = 0;
            Action <int>     action   = value => setCount++;
            BeethovenFactory factory  = new BeethovenFactory();
            ITestProperties  test     = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .DelegatedSetter(action));

            test.Property1 = 5;
            Assert.AreEqual(1, setCount);
        }
Пример #21
0
        public void TestMethodPropertyPropertyMapped6()
        {
            MappedTestClass  obj     = new MappedTestClass();
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <string>(nameof(ITestProperties.Property2))
                .MappedFrom(obj));

            Assert.AreEqual(null, test.Property2);
            obj.Property2 = "42";
            Assert.AreEqual("42", test.Property2);
        }
        public void TestMethodPropertyRangeCheck1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .RangeCheck(0, 42)
                .SetterGetter());

            Assert.AreEqual(0, test.Property1);
            test.Property1 = 42;
            Assert.AreEqual(42, test.Property1);
        }
Пример #23
0
        public void TestMethodPropertyValidityCheck1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .ValidityCheck(value => value % 2 == 0)
                .SetterGetter());

            Assert.AreEqual(0, test.Property1);
            test.Property1 = 10;
            Assert.AreEqual(10, test.Property1);
        }
Пример #24
0
        public void TestMethodPropertyPropertyMapped5()
        {
            MappedTestClass  obj     = new MappedTestClass();
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .MappedFrom(obj));

            Assert.AreEqual(0, test.Property1);
            obj.Property1 = 42;
            Assert.AreEqual(42, test.Property1);
        }
Пример #25
0
        public void TestMethodPropertyPropertyMapped7()
        {
            IParameter parameter = ConstructorParameter.Create <MappedTestClass>();
            TypeDefinition <ITestProperties> typeDefinition = new TypeDefinition <ITestProperties>
                                                              (
                parameter,
                new DefinitionImport(parameter)
                                                              );
            ITestProperties test = typeDefinition.Create(new MappedTestClass());

            test.Property1 = 42;
            Assert.AreEqual(42, test.Property1);
        }
Пример #26
0
        public void TestMethodDefaultPropertySetterGetter1()
        {
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new DefaultProperty()
                .SetterGetter());

            Assert.AreEqual(0, test.Property1);
            test.Property2 = "Some value";
            Assert.AreEqual("Some value", test.Property2);
            test.Property1 = 55;
            Assert.AreEqual(55, test.Property1);
        }
Пример #27
0
        private void InitializeFromLtmContext()
        {
            ITestProperties testProperties = (new LtmContext() as ITestProperties);
            var             inits          = testProperties.Get("Alias/InitString");

            if (inits != null)
            {
                foreach (var kvp in InitStringUtilities.ParseInitString((string)(inits.Value)))
                {
                    this.props[kvp.Key] = kvp.Value;
                }
            }
        }
Пример #28
0
        public void ConstructorInitializedFieldInitialValueTest1()
        {
            CompiledTypeDefinition <ITestProperties> definition =
                TypeDefinition <ITestProperties> .Create()
                .Add(new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                     .ConstructorParameter()
                     .SetterGetter())
                .Compile();

            ITestProperties test = definition.Create(5);

            Assert.AreEqual(5, test.Property1);
        }
        public void TestMethodPropertySkipIfEqual3()
        {
            BeethovenFactory factory = new BeethovenFactory();
            int             setCount = 0;
            ITestProperties test     = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .SkipIfEqual()
                .DelegatedSetter(value => setCount++));

            test.Property1 = 5;
            test.Property1 = 6;
            Assert.AreEqual(2, setCount);
        }
        public void TestMethodLazyCreatorProperty3()
        {
            int count = 0;
            BeethovenFactory factory = new BeethovenFactory();
            ITestProperties  test    = factory.Generate <ITestProperties>(
                new PropertyDefinition <int>(nameof(ITestProperties.Property1))
                .LazyCreator(() => ++ count)
                .SetterGetter());

            Assert.AreEqual(1, test.Property1);
            Assert.AreEqual(1, test.Property1);
            Assert.AreEqual(1, test.Property1);
            Assert.AreEqual(1, count);
        }
Пример #31
0
 //Constructor
 public TestProps(ITestProperties properties)
 {
     pinternal = properties;
 }