private void VerifyMethodSignature(TypeBuilder typeBuilder, MethodBuilder builder, Type desiredReturnType)
        {
            Type ret = typeBuilder.CreateTypeInfo().AsType();
            MethodInfo methodInfo = builder.GetBaseDefinition();
            Type actualReturnType = methodInfo.ReturnType;

            if (desiredReturnType == null)
                Assert.Null(actualReturnType);
            if (desiredReturnType != null)
            {
                Assert.NotNull(actualReturnType);
                Assert.Equal(desiredReturnType.Name, actualReturnType.Name);
                Assert.True(actualReturnType.Equals(desiredReturnType));
            }
        }
        private void VerifyReturnType(MethodBuilder builder, Type desiredReturnType)
        {
            MethodInfo methodInfo = builder.GetBaseDefinition();
            Type actualReturnType = methodInfo.ReturnType;

            Assert.Equal(desiredReturnType.Name, actualReturnType.Name);
            Assert.True(actualReturnType.Equals(desiredReturnType));
        }