public override void OnException(ExceptionContext context)
        {
            MsalUiRequiredException msalUiRequiredException = context.Exception as MsalUiRequiredException;

            if (msalUiRequiredException == null)
            {
                msalUiRequiredException = context.Exception?.InnerException as MsalUiRequiredException;
            }

            if (msalUiRequiredException != null && AuthorizeForScopesAttribute.CanBeSolvedByReSignInOfUser(msalUiRequiredException))
            {
                context.Result = new JsonResult("ErrorMessage: A page reload is required in order to refresh (or gain additional) consent for Ms Graph on behalf of the user.");
                context.HttpContext.Response.StatusCode = (int)HttpCodes.ReloadRequired;
            }

            base.OnException(context);
        }
        public void AuthorizeForScopesAttribute_FindMsalUiRequiredExceptionIfAny_Tests()
        {
            MsalUiRequiredException msalUiRequiredException = new MsalUiRequiredException("code", "message");

            MsalUiRequiredException result = AuthorizeForScopesAttribute.FindMsalUiRequiredExceptionIfAny(msalUiRequiredException);

            Assert.Equal(result, msalUiRequiredException);

            Exception ex = new Exception("message", msalUiRequiredException);

            result = AuthorizeForScopesAttribute.FindMsalUiRequiredExceptionIfAny(ex);
            Assert.Equal(result, msalUiRequiredException);

            Exception ex2 = new Exception("message", ex);

            result = AuthorizeForScopesAttribute.FindMsalUiRequiredExceptionIfAny(ex2);
            Assert.Equal(result, msalUiRequiredException);
        }