Example #1
0
 public DependencyInjectionTestInvoker(IServiceProvider provider, ITest test, IMessageBus messageBus, Type testClass,
                                       object[] constructorArguments, MethodInfo testMethod, object[] testMethodArguments,
                                       ExceptionAggregator aggregator, CancellationTokenSource cancellationTokenSource) : base(test, messageBus,
                                                                                                                               testClass, constructorArguments, testMethod, testMethodArguments, aggregator, cancellationTokenSource)
 {
     _accessor = provider.GetRequiredService <ITestOutputHelperAccessor>();
 }
Example #2
0
        /// <summary>
        /// Adds an xunit logger to the logging builder.
        /// </summary>
        /// <param name="builder">The <see cref="ILoggingBuilder"/> to use.</param>
        /// <param name="accessor">The <see cref="ITestOutputHelperAccessor"/> to use.</param>
        /// <param name="configure">A delegate to a method to use to configure the logging options.</param>
        /// <returns>
        /// The instance of <see cref="ILoggingBuilder"/> specified by <paramref name="builder"/>.
        /// </returns>
        /// <exception cref="ArgumentNullException">
        /// <paramref name="builder"/>, <paramref name="accessor"/> OR <paramref name="configure"/> is <see langword="null"/>.
        /// </exception>
        public static ILoggingBuilder AddXUnit(this ILoggingBuilder builder, ITestOutputHelperAccessor accessor, Action <XUnitLoggerOptions> configure)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            if (accessor == null)
            {
                throw new ArgumentNullException(nameof(accessor));
            }

            if (configure == null)
            {
                throw new ArgumentNullException(nameof(configure));
            }

            var options = new XUnitLoggerOptions();

            configure(options);

#pragma warning disable CA2000
            builder.AddProvider(new XUnitLoggerProvider(accessor, options));
#pragma warning restore CA2000

            builder.Services.TryAddSingleton(accessor);

            return(builder);
        }
Example #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="XUnitLogger"/> class.
        /// </summary>
        /// <param name="name">The name for messages produced by the logger.</param>
        /// <param name="accessor">The <see cref="ITestOutputHelperAccessor"/> to use.</param>
        /// <param name="options">The <see cref="XUnitLoggerOptions"/> to use.</param>
        /// <exception cref="ArgumentNullException">
        /// <paramref name="name"/> or <paramref name="accessor"/> is <see langword="null"/>.
        /// </exception>
        public XUnitLogger(string name, ITestOutputHelperAccessor accessor, XUnitLoggerOptions options)
        {
            Name      = name ?? throw new ArgumentNullException(nameof(name));
            _accessor = accessor ?? throw new ArgumentNullException(nameof(accessor));

            Filter        = options?.Filter ?? ((category, logLevel) => true);
            IncludeScopes = options?.IncludeScopes ?? false;
        }
Example #4
0
    /// <summary>
    /// Adds an xunit logger to the logging builder.
    /// </summary>
    /// <param name="builder">The <see cref="ILoggingBuilder"/> to use.</param>
    /// <param name="accessor">The <see cref="ITestOutputHelperAccessor"/> to use.</param>
    /// <returns>
    /// The instance of <see cref="ILoggingBuilder"/> specified by <paramref name="builder"/>.
    /// </returns>
    /// <exception cref="ArgumentNullException">
    /// <paramref name="builder"/> or <paramref name="accessor"/> is <see langword="null"/>.
    /// </exception>
    public static ILoggingBuilder AddXUnit(this ILoggingBuilder builder, ITestOutputHelperAccessor accessor)
    {
        if (builder == null)
        {
            throw new ArgumentNullException(nameof(builder));
        }

        if (accessor == null)
        {
            throw new ArgumentNullException(nameof(accessor));
        }

        return(builder.AddXUnit(accessor, static (_) => { }));
 public void Configure(ILoggerFactory loggerFactory, ITestOutputHelperAccessor accessor) =>
 loggerFactory.AddProvider(new XunitTestOutputLoggerProvider(accessor, delegate { return(true); }));
Example #6
0
 /// <summary>
 /// 配置日志提供程序
 /// </summary>
 public void Configure(ILoggerFactory loggerFactory, ITestOutputHelperAccessor accessor)
 {
     loggerFactory.AddProvider(new XunitTestOutputLoggerProvider(accessor, (s, logLevel) => logLevel >= LogLevel.Trace));
 }
Example #7
0
 public CustomService(ITestOutputHelperAccessor testOutputHelperAccessor)
 {
     _testOutputHelperAccessor = testOutputHelperAccessor;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="XUnitLoggerProvider"/> class.
 /// </summary>
 /// <param name="accessor">The <see cref="ITestOutputHelperAccessor"/> to use.</param>
 /// <param name="options">The options to use for logging to xunit.</param>
 /// <exception cref="ArgumentNullException">
 /// <paramref name="accessor"/> or <paramref name="options"/> is <see langword="null"/>.
 /// </exception>
 public XUnitLoggerProvider(ITestOutputHelperAccessor accessor, XUnitLoggerOptions options)
 {
     _accessor = accessor ?? throw new ArgumentNullException(nameof(accessor));
     _options  = options ?? throw new ArgumentNullException(nameof(options));
 }
Example #9
0
 public XunitTestOutputLogger(ITestOutputHelperAccessor accessor, string categoryName, Func <string, LogLevel, bool> filter)
 {
     _accessor     = accessor;
     _categoryName = categoryName;
     _filter       = filter ?? throw new ArgumentNullException(nameof(filter));
 }
Example #10
0
 public InvokeHelper(ITestOutputHelperAccessor outputHelperAccessor)
 {
     _outputHelperAccessor = outputHelperAccessor;
 }
 /// <summary>Log minLevel LogLevel.Information</summary>
 public XunitTestOutputLoggerProvider(ITestOutputHelperAccessor accessor)
 {
 }
Example #12
0
 public UnitTest1(ITestOutputHelperAccessor testOutputHelperAccessor)
 {
     _testOutputHelperAccessor = testOutputHelperAccessor;
     _testOutputHelperAccessor.Output?.WriteLine("1111111111111111");
 }
Example #13
0
 /// <summary>Log minLevel LogLevel.Information</summary>
 public XunitTestOutputLoggerProvider(ITestOutputHelperAccessor accessor) : this(accessor, (name, level) => level >= LogLevel.Information && level < LogLevel.None)
 {
 }
Example #14
0
 public void Configure(IServiceProvider provider, ITestOutputHelperAccessor accessor)
 {
     Assert.NotNull(accessor);
     XunitTestOutputLoggerProvider.Register(provider);
 }
Example #15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="XUnitLogger"/> class.
 /// </summary>
 /// <param name="name">The name for messages produced by the logger.</param>
 /// <param name="accessor">The <see cref="ITestOutputHelperAccessor"/> to use.</param>
 /// <param name="options">The <see cref="XUnitLoggerOptions"/> to use.</param>
 /// <exception cref="ArgumentNullException">
 /// <paramref name="name"/> or <paramref name="accessor"/> is <see langword="null"/>.
 /// </exception>
 public XUnitLogger(string name, ITestOutputHelperAccessor accessor, XUnitLoggerOptions?options)
     : this(name, options)
 {
     _outputHelperAccessor = accessor ?? throw new ArgumentNullException(nameof(accessor));
 }
Example #16
0
        public void Configure(ILoggerFactory loggerFactory, ITestOutputHelperAccessor accessor)
        {
            return;

            _testOutputHelper = accessor.Output;
        }
Example #17
0
 public void Configure(ILoggerFactory loggerFactory, ITestOutputHelperAccessor outputHelperAccessor)
 {
     loggerFactory.AddProvider(new XunitTestOutputLoggerProvider(outputHelperAccessor));
 }
Example #18
0
 public DependencyClass(ITestOutputHelperAccessor testOutputHelperAccessor)
 {
     _testOutputHelperAccessor = testOutputHelperAccessor;
 }
Example #19
0
 public void ITestOutputHelperAccessor_Output_Should_Not_Null([FromServices] ITestOutputHelperAccessor accessor)
 {
     Assert.NotNull(accessor.Output);
 }