public static void Throw(ThrowExceptionType type)
            {
                switch (type)
                {
                case ThrowExceptionType.ResponsiveByWrap:
                    throw new ResponsiveException(new ArgumentException(nameof(type)));

                case ThrowExceptionType.ResponsiveByFilter:
                    throw new ArgumentException(nameof(type));

                case ThrowExceptionType.Fault:
                    throw new InvalidOperationException(nameof(type));
                }
            }
 Task <int> IBasic.ThrowException(ThrowExceptionType type)
 {
     _log.Add($"ThrowException({type})");
     ThrowExceptionHelper.Throw(type);
     return(Task.FromResult(1));
 }
 int IBasicSync.ThrowException(ThrowExceptionType type)
 {
     _log.Add($"ThrowException({type})");
     ThrowExceptionHelper.Throw(type);
     return(1);
 }