public static void Register(HttpConfiguration config) { // Json settings config.Formatters.JsonFormatter.SerializerSettings.NullValueHandling = NullValueHandling.Ignore; config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); config.Formatters.JsonFormatter.SerializerSettings.Formatting = Formatting.Indented; JsonConvert.DefaultSettings = () => new JsonSerializerSettings() { ContractResolver = new CamelCasePropertyNamesContractResolver(), Formatting = Newtonsoft.Json.Formatting.Indented, NullValueHandling = NullValueHandling.Ignore, }; // Web API configuration and services // Web API routes config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); ILogger _e = new AzureTableLogger(); config.Services.Add(typeof(IExceptionLogger), new TraceSourceExceptionLogger()); }
public DataMaintenance( IPlayerLocationsRepository playerLocationsRepository, IPlayersCacheRepository playersCache, IGameServerStatusStatsRepository gameServerStatusStatsRepository, AzureTableLogger azureTableLogger) { _playerLocationsRepository = playerLocationsRepository ?? throw new ArgumentNullException(nameof(playerLocationsRepository)); _playersCache = playersCache ?? throw new ArgumentNullException(nameof(playersCache)); _gameServerStatusStatsRepository = gameServerStatusStatsRepository; _azureTableLogger = azureTableLogger ?? throw new ArgumentNullException(nameof(azureTableLogger)); }
public void TestIsEnabled(LogLevel minimumLogLevel, LogLevel testLogLevel, bool expected) { // Arrange var fakeOptions = A.Fake <IOptions <AzureTableLoggerOptions> >(); A.CallTo(() => fakeOptions.Value).Returns(new AzureTableLoggerOptions { MinimumLogLevel = minimumLogLevel }); var azureTableLogger = new AzureTableLogger(fakeOptions, _fakeHttpContextAccessor, _fakeCloudTableClientProviderFactory); // Act var result = azureTableLogger.IsEnabled(testLogLevel); // Assert result.Should().Be(expected); }