Exemple #1
0
 public T Apply(IInstanceGenerator instanceGenerator)
 {
     try
     {
         return(_valueGenerator.ValueOf <T>());
     }
     catch (AutoFixture.ObjectCreationException)
     {
         return(_fallbackTypeGenerator.GenerateInstance(instanceGenerator));
     }
     catch (TargetInvocationException)
     {
         return(_fallbackTypeGenerator.GenerateInstance(instanceGenerator));
     }
 }
        private static void AssertNullCheckForEveryPossibleArgumentOf(IConstraintsViolations violations,
                                                                      IConstructorWrapper constructor,
                                                                      FallbackTypeGenerator fallbackTypeGenerator)
        {
            for (int i = 0; i < constructor.GetParametersCount(); ++i)
            {
                var parameters = constructor.GenerateAnyParameterValues(Any.Instance);
                if (SmartType.ForTypeOf(parameters[i]).CanBeAssignedNullValue())
                {
                    parameters[i] = null;

                    try
                    {
                        fallbackTypeGenerator.GenerateInstance(parameters);
                        violations.Add("Not guarded against nulls: " + constructor + ", Not guarded parameter: " +
                                       constructor.GetDescriptionForParameter(i));
                    }
                    catch (TargetInvocationException exception)
                    {
                        if (exception.InnerException.GetType() == typeof(ArgumentNullException))
                        {
                            //do nothing, this is the expected case
                        }
                        else
                        {
                            throw;
                        }
                    }
                }
            }
        }
Exemple #3
0
        public T Apply(InstanceGenerator instanceGenerator, GenerationTrace trace)
        {
            try
            {
                return(_valueGenerator.Value <T>());
            }
            catch (ThirdPartyGeneratorFailed e)
            {
                trace.ThirdPartyGeneratorFailedTryingFallback(e);

                return(_fallbackTypeGenerator.GenerateInstance(instanceGenerator, trace));
            }
            catch (TargetInvocationException e)
            {
                if (Debugger.IsAttached)
                {
                    Console.WriteLine(e);
                }
                return(_fallbackTypeGenerator.GenerateInstance(instanceGenerator, trace));
            }
        }
Exemple #4
0
 public T Apply(InstanceGenerator instanceGenerator)
 {
     try
     {
         return(_valueGenerator.Value <T>());
     }
     catch (AutoFixture.ObjectCreationException e)
     {
         if (Debugger.IsAttached)
         {
             Console.WriteLine(e);
         }
         return(_fallbackTypeGenerator.GenerateInstance(instanceGenerator));
     }
     catch (TargetInvocationException e)
     {
         if (Debugger.IsAttached)
         {
             Console.WriteLine(e);
         }
         return(_fallbackTypeGenerator.GenerateInstance(instanceGenerator));
     }
 }
 public T Apply(InstanceGenerator instanceGenerator)
 {
     return(_fallbackTypeGenerator.GenerateInstance(instanceGenerator));
 }
 public T Apply(InstanceGenerator instanceGenerator, GenerationTrace trace)
 {
     return(_fallbackTypeGenerator.GenerateInstance(instanceGenerator, trace));
 }