public void SetHttpContext_ShouldNotSetHttpContextIfContextParamIsEmpty() { var builder = new NoticeBuilder(); builder.SetHttpContext(null, null); var notice = builder.ToNotice(); Assert.True(notice.Context == null); }
public void SetHttpContext_ShouldSetHttpContextProperty() { var builder = new NoticeBuilder(); builder.SetHttpContext(new FakeHttpContext(), null); var notice = builder.ToNotice(); Assert.NotNull(notice.HttpContext); }
public void ToJsonString_ShouldNotSerializeExceptionAndHttpContext() { var builder = new NoticeBuilder(); builder.SetErrorEntries(new Exception()); builder.SetHttpContext(new FakeHttpContext(), null); var notice = builder.ToNotice(); var json = NoticeBuilder.ToJsonString(notice); Assert.True(json.IndexOf("\"Exception\":", StringComparison.OrdinalIgnoreCase) == -1); Assert.True(json.IndexOf("\"HttpContext\":", StringComparison.OrdinalIgnoreCase) == -1); }
public void SetHttpContext_ShouldSetActionAndContextIfProvided() { var httpContext = new FakeHttpContext { Action = "Action", Component = "Component" }; var builder = new NoticeBuilder(); builder.SetHttpContext(httpContext, null); var notice = builder.ToNotice(); Assert.True(!string.IsNullOrEmpty(notice.Context.Action)); Assert.True(!string.IsNullOrEmpty(notice.Context.Component)); }
public void SetHttpContext_ContextHttpParameters(string url, string userAgent) { var httpContext = new FakeHttpContext { Url = url, UserAgent = userAgent }; var builder = new NoticeBuilder(); builder.SetHttpContext(httpContext, null); var notice = builder.ToNotice(); Assert.NotNull(notice.Context); Assert.True(string.IsNullOrEmpty(url) ? string.IsNullOrEmpty(notice.Context.Url) : notice.Context.Url.Equals(url)); Assert.True(string.IsNullOrEmpty(userAgent) ? string.IsNullOrEmpty(notice.Context.UserAgent) : notice.Context.UserAgent.Equals(userAgent)); }
public void SetHttpContext_ShouldSetParametersIfConfigIsNotDefined() { var httpContext = new FakeHttpContext { Parameters = new Dictionary <string, string>(), EnvironmentVars = new Dictionary <string, string>(), Session = new Dictionary <string, string>() }; var builder = new NoticeBuilder(); builder.SetHttpContext(httpContext, null); var notice = builder.ToNotice(); Assert.NotNull(notice.Params); Assert.NotNull(notice.EnvironmentVars); Assert.NotNull(notice.Session); }
public void ToJsonString_ShouldTruncateNoticeBigger64KB() { var httpContext = new FakeHttpContext { Parameters = new Dictionary <string, string> { { "long_param", new string('x', 64001) } } }; var builder = new NoticeBuilder(); builder.SetHttpContext(httpContext, null); var notice = builder.ToNotice(); var json = NoticeBuilder.ToJsonString(notice); Assert.NotNull(json); Assert.True(json.Length <= 64000); }
public void SetHttpContext_ContextUserInfo(string id, string name, string email) { var httpContext = new FakeHttpContext { UserName = name, UserId = id, UserEmail = email }; var builder = new NoticeBuilder(); builder.SetHttpContext(httpContext, null); var notice = builder.ToNotice(); Assert.NotNull(notice.Context); Assert.NotNull(notice.Context.User); Assert.True(string.IsNullOrEmpty(id) ? string.IsNullOrEmpty(notice.Context.User.Id) : notice.Context.User.Id.Equals(id)); Assert.True(string.IsNullOrEmpty(name) ? string.IsNullOrEmpty(notice.Context.User.Name) : notice.Context.User.Name.Equals(name)); Assert.True(string.IsNullOrEmpty(email) ? string.IsNullOrEmpty(notice.Context.User.Email) : notice.Context.User.Email.Equals(email)); }