/// <summary>
        /// Sets a flag that determines whether xUnit.net should report test results synchronously.
        /// </summary>
        public static void SetSynchronousMessageReporting(
            this _ITestFrameworkDiscoveryOptions discoveryOptions,
            bool?value)
        {
            Guard.ArgumentNotNull(discoveryOptions);

            discoveryOptions.SetValue(TestOptionsNames.Discovery.SynchronousMessageReporting, value);
        }
        /// <summary>
        /// Sets a flag that determines whether theories are pre-enumerated. If they enabled, then the
        /// discovery system will return a test case for each row of test data; they are disabled, then the
        /// discovery system will return a single test case for the theory.
        /// </summary>
        public static void SetPreEnumerateTheories(
            this _ITestFrameworkDiscoveryOptions discoveryOptions,
            bool?value)
        {
            Guard.ArgumentNotNull(discoveryOptions);

            discoveryOptions.SetValue(TestOptionsNames.Discovery.PreEnumerateTheories, value);
        }
        /// <summary>
        /// Sets the flags that determine the default display options for test methods.
        /// </summary>
        public static void SetMethodDisplayOptions(
            this _ITestFrameworkDiscoveryOptions discoveryOptions,
            TestMethodDisplayOptions?value)
        {
            Guard.ArgumentNotNull(discoveryOptions);

            discoveryOptions.SetValue(TestOptionsNames.Discovery.MethodDisplayOptions, value.HasValue ? value.GetValueOrDefault().ToString() : null);
        }
        /// <summary>
        /// Sets a flag that determines whether internal diagnostic messages will be emitted.
        /// </summary>
        public static void SetInternalDiagnosticMessages(
            this _ITestFrameworkDiscoveryOptions discoveryOptions,
            bool?value)
        {
            Guard.ArgumentNotNull(discoveryOptions);

            discoveryOptions.SetValue(TestOptionsNames.Discovery.InternalDiagnosticMessages, value);
        }
        /// <summary>
        /// Sets a flag that determines whether discovered test cases should include source information.
        /// Note that not all runners have access to source information, so this flag does not guarantee
        /// that source information will be provided.
        /// </summary>
        public static void SetIncludeSourceInformation(
            this _ITestFrameworkDiscoveryOptions discoveryOptions,
            bool?value)
        {
            Guard.ArgumentNotNull(discoveryOptions);

            discoveryOptions.SetValue(TestOptionsNames.Discovery.IncludeSourceInformation, value);
        }
        /// <summary>
        /// Sets the culture to use for discovering tests. <c>null</c> uses the default OS culture;
        /// <see cref="string.Empty"/> uses the invariant culture; any other value passes the
        /// provided value to <see cref="CultureInfo(string)"/> and uses the resulting object
        /// with <see cref="CultureInfo.DefaultThreadCurrentCulture"/> and
        /// <see cref="CultureInfo.DefaultThreadCurrentUICulture"/>.
        /// </summary>
        public static void SetCulture(
            this _ITestFrameworkDiscoveryOptions discoveryOptions,
            string?culture)
        {
            Guard.ArgumentNotNull(discoveryOptions);

            discoveryOptions.SetValue(TestOptionsNames.Discovery.Culture, culture);
        }