Exemplo n.º 1
0
 public PublicClassPublicMethod()
 {
     _duckObjectInterface    = _testObject.DuckAs <ISomeObject>();
     _duckObjectAbstract     = _testObject.DuckAs <AbstractSomeObject>();
     _duckObjectVirtualClass = _testObject.DuckAs <VirtualClassSomeObject>();
     _expressionFetcher      = new DynamicFetcher("Sum")
     {
         FetcherType = FetcherType.ExpressionTree
     };
     _expressionFetcher.Load(_testObject);
     _emitFetcher = new DynamicFetcher("Sum")
     {
         FetcherType = FetcherType.Emit
     };
     _emitFetcher.Load(_testObject);
     _mInfo = typeof(SomeObject).GetMethod("Sum", DuckAttribute.AllFlags);
 }
Exemplo n.º 2
0
 public PrivateClassPrivateFieldSetterValue()
 {
     _duckObjectInterface    = _testObject.DuckAs <IPrivateSomeObject>();
     _duckObjectAbstract     = _testObject.DuckAs <AbstractPrivateSomeObject>();
     _duckObjectVirtualClass = _testObject.DuckAs <VirtualClassPrivateSomeObject>();
     _expressionFetcher      = new DynamicFetcher("ValueField")
     {
         FetcherType = FetcherType.ExpressionTree
     };
     _expressionFetcher.Load(_testObject);
     _emitFetcher = new DynamicFetcher("ValueField")
     {
         FetcherType = FetcherType.Emit
     };
     _emitFetcher.Load(_testObject);
     _fInfo = typeof(PrivateSomeObject).GetField("ValueField", DuckAttribute.AllFlags);
 }
Exemplo n.º 3
0
 public PublicClassPublicPropertyGetterValue()
 {
     _duckObjectInterface    = _testObject.DuckAs <ISomeObject>();
     _duckObjectAbstract     = _testObject.DuckAs <AbstractSomeObject>();
     _duckObjectVirtualClass = _testObject.DuckAs <VirtualClassSomeObject>();
     _expressionFetcher      = new DynamicFetcher("Value")
     {
         FetcherType = FetcherType.ExpressionTree
     };
     _expressionFetcher.Load(_testObject);
     _emitFetcher = new DynamicFetcher("Value")
     {
         FetcherType = FetcherType.Emit
     };
     _emitFetcher.Load(_testObject);
     _delegateFetcher = new DelegatePropertyFetcher <SomeObject, int>(typeof(SomeObject).GetProperty("Value") !);
     _pInfo           = typeof(SomeObject).GetProperty("Value", DuckAttribute.AllFlags);
 }
Exemplo n.º 4
0
 public PrivateClassPrivatePropertyGetterObject()
 {
     _duckObjectInterface    = _testObject.DuckAs <IPrivateSomeObject>();
     _duckObjectAbstract     = _testObject.DuckAs <AbstractPrivateSomeObject>();
     _duckObjectVirtualClass = _testObject.DuckAs <VirtualClassPrivateSomeObject>();
     _expressionFetcher      = new DynamicFetcher("Name")
     {
         FetcherType = FetcherType.ExpressionTree
     };
     _expressionFetcher.Load(_testObject);
     _emitFetcher = new DynamicFetcher("Name")
     {
         FetcherType = FetcherType.Emit
     };
     _emitFetcher.Load(_testObject);
     _delegateFetcher = new DelegatePropertyFetcher <PrivateSomeObject, string>(typeof(PrivateSomeObject).GetProperty("Name", DuckAttribute.AllFlags) !);
     _pInfo           = typeof(PrivateSomeObject).GetProperty("Name", DuckAttribute.AllFlags);
 }
Exemplo n.º 5
0
        public void DynamicFetcherEmitTest()
        {
            var keyFetcher = new DynamicFetcher("Key")
            {
                FetcherType = FetcherType.Emit
            };
            var valueFetcher = new DynamicFetcher("Value")
            {
                FetcherType = FetcherType.Emit
            };
            var dictio = new Dictionary <string, string>();

            dictio.Add("Key1", "Value1");
            dictio.Add("Key2", "Value2");

            foreach (var item in (IEnumerable)dictio)
            {
                var key   = keyFetcher.Fetch(item);
                var value = valueFetcher.Fetch(item);

                Assert.NotNull(key);
                Assert.NotNull(value);
            }
        }