public WebhookResponseHandler(
     IEventHandlerFactory eventHandlerFactory,
     IAcquireTokenHandler acquireTokenHandler,
     IRequestBuilder requestBuilder,
     IBigBrother bigBrother,
     HttpClient client,
     EventHandlerConfig eventHandlerConfig)
     : base(acquireTokenHandler, requestBuilder, bigBrother, client, eventHandlerConfig.WebHookConfig)
 {
     _eventHandlerFactory = eventHandlerFactory;
     _client             = client;
     _eventHandlerConfig = eventHandlerConfig;
 }
 public GenericWebhookHandler(
     IAcquireTokenHandler acquireTokenHandler,
     IRequestBuilder requestBuilder,
     IBigBrother bigBrother,
     HttpClient client,
     WebhookConfig webhookConfig)
 {
     _client             = client;
     AcquireTokenHandler = acquireTokenHandler;
     BigBrother          = bigBrother;
     RequestBuilder      = requestBuilder;
     WebhookConfig       = webhookConfig;
 }
        public void GetTokenProvider(string configurationName, AuthenticationConfig authenticationConfig, IAcquireTokenHandler expectedHandler)
        {
            var indexedDictionary = new IndexDictionary <string, WebhookConfig>
            {
                {
                    configurationName, new WebhookConfig
                    {
                        Name = configurationName,
                        AuthenticationConfig = authenticationConfig
                    }
                }
            };

            var factory = new AuthenticationHandlerFactory(indexedDictionary, new Mock <IBigBrother>().Object);

            var handler = factory.Get(configurationName);

            Assert.Equal(expectedHandler.GetType(), handler.GetType());
        }