Пример #1
0
        public IExpectTypeConfigWrapperBuilder WithDefaultConfig(Action <IPolicyAsserter> policyAsserts)
        {
            var tt = _defaultType;

            if (!PolicyBuilders.ContainsKey(tt)) // add to existing policy if possible
            {
                PolicyBuilders[tt] = new PolicyBuilder();
            }
            // Save this configuration to the configuration for 'object' as a default for other types
            policyAsserts?.Invoke(PolicyBuilders[tt].Asserter);
            return(this);
        }
Пример #2
0
        public IExpectTypeConfigWrapperBuilder WithTypeConfig <T>(Action <IPolicyAsserter> policyAsserts)
        {
            var tt = typeof(T);

            if (!PolicyBuilders.ContainsKey(tt))
            {
                var initialAsserts = PolicyBuilders[_defaultType].Asserter ?? throw new NullReferenceException("Asserter");
                PolicyBuilders[tt] = new PolicyBuilder(typeof(T), initialAsserts);
            }

            policyAsserts?.Invoke(PolicyBuilders[tt].Asserter);
            return(this);
        }