public void ReaderLambdaReadsULongEnumFromProperty()
 {
     var obj = new ULongEnumClass()
     {
         Enum = ULongEnum.ValueOne
     };
     var propertyInfo = obj.GetType().GetProperties().Single();
     var function = _lambdaGenerator.CreateReaderFunction<ULongEnumClass, ULongEnum>(propertyInfo);
     Assert.AreEqual(obj.Enum, function(obj));
 }
        public void EnumLambdaAssignsToUlongEnumProperty()
        {
            var obj = new ULongEnumClass()
            {
                Enum = ULongEnum.ValueOne
            };
            var propertyInfo = obj.GetType().GetProperties().Single();
            var function = _lambdaGenerator.CreateAssignmentFunctionWithCast<ULongEnumClass, Enum>(propertyInfo);

            function(obj, ULongEnum.ValueTwo);

            Assert.AreEqual(ULongEnum.ValueTwo, obj.Enum);
        }