Пример #1
0
        /// <summary>Gets column provider for the metric values.</summary>
        /// <param name="metric">The metric to get columns for.</param>
        /// <param name="columns">The columns to include.</param>
        /// <returns>Column provider for the metric values</returns>
        public IColumnProvider GetColumnProvider(MetricInfo metric, MetricValueColumns columns)
        {
            Code.NotNull(metric, nameof(metric));
            EnumCode.FlagsDefined(columns, nameof(columns));
            Code.AssertArgument(
                metric.ValuesProvider == this, nameof(metric),
                "Passed ValuesProvider does not match to this one.");

            return(GetColumnProviderOverride(metric, columns));
        }
Пример #2
0
        public void TestFlagsDefined()
        {
            var allDefinedFlags = EnumHelper.GetFlagsMask <BindingFlags>();
            // ReSharper disable once RedundantCast
            var allFlags = (BindingFlags)(int)-1;
            var ex       = Assert.Throws <ArgumentOutOfRangeException>(() => EnumCode.FlagsDefined(allFlags, "arg00"));

            Assert.That(ex.Message, Does.Contain("arg00"));
            Assert.That(ex.Message, Does.Contain("Unexpected value"));

            Assert.Throws <ArgumentOutOfRangeException>(
                () => EnumCode.Defined(allDefinedFlags, "arg00"));
            Assert.DoesNotThrow(
                () => EnumCode.FlagsDefined(allDefinedFlags, "arg00"));
        }