Beispiel #1
0
        public static void GetFunctionWithReferenceTypeReturnValueMethodAndHasEventsIsFalse() =>
        Assert.That(MethodTemplates.GetFunctionWithReferenceTypeReturnValue(1, "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", false), Is.EqualTo(
                        @"ki j h
{
	f

	if (this.handlers.TryGetValue(1, out var methodHandlers))
	{
		foreach(var methodHandler in methodHandlers)
		{
			if(d)
			{
#pragma warning disable CS8604
				var result = methodHandler.Method != null ?
					(c)((e)methodHandler.Method)(b) :
					((R.HandlerInformation<c>)methodHandler).ReturnValue;
#pragma warning restore CS8604
				
				methodHandler.IncrementCallCount();
				return result;
			}
		}
	}

	throw new RE.ExpectationException($""No handlers were found for g"");
}"));
Beispiel #2
0
        private static string GenerateMethodWithNoRefOutParameters(MethodInfo baseMethod, string delegateCast, string argumentNameList,
                                                                   string outInitializers, string methodDescriptionWithOverride,
                                                                   string visibility, RequiresIsNewImplementation requiresIsNewImplementation,
                                                                   SortedSet <string> namespaces, bool isMake, bool hasEvents)
        {
            var expectationChecks           = baseMethod.GetExpectationChecks();
            var expectationExceptionMessage = baseMethod.GetExpectationExceptionMessage();
            var requiresNew    = requiresIsNewImplementation == RequiresIsNewImplementation.Yes ? "new" : string.Empty;
            var returnTypeName = $"{baseMethod.ReturnType.GetFullName(baseMethod.ReturnParameter)}";

            if (baseMethod.ReturnType != typeof(void))
            {
                var returnTypeAttributes = baseMethod.ReturnParameter.GetAttributes(true, namespaces);
                return(isMake ?
                       MethodTemplates.GetFunctionForMake(outInitializers, methodDescriptionWithOverride,
                                                          visibility, requiresNew, returnTypeAttributes, baseMethod.ReturnType) :
                       baseMethod.ReturnType.RequiresExplicitCast() ?
                       MethodTemplates.GetFunctionWithValueTypeReturnValue(
                           baseMethod.MetadataToken, argumentNameList, returnTypeName,
                           expectationChecks, delegateCast, outInitializers, expectationExceptionMessage, methodDescriptionWithOverride,
                           visibility, requiresNew, returnTypeAttributes, hasEvents) :
                       MethodTemplates.GetFunctionWithReferenceTypeReturnValue(
                           baseMethod.MetadataToken, argumentNameList, returnTypeName,
                           expectationChecks, delegateCast, outInitializers, expectationExceptionMessage, methodDescriptionWithOverride,
                           visibility, requiresNew, returnTypeAttributes, hasEvents));
            }
            else
            {
                return(isMake ?
                       MethodTemplates.GetActionMethodForMake(outInitializers, methodDescriptionWithOverride, visibility) :
                       MethodTemplates.GetActionMethod(baseMethod.MetadataToken, argumentNameList, expectationChecks,
                                                       delegateCast, outInitializers, expectationExceptionMessage, methodDescriptionWithOverride, visibility, hasEvents));
            }
        }