public IPProcessTypeController GetController()
        {
            var claimPrincipal = new Mock <ClaimsPrincipal>();
            var claims         = new Claim[]
            {
                new Claim("username", "unittestusername")
            };

            claimPrincipal.Setup(claim => claim.Claims).Returns(claims);

            var controller = new IPProcessTypeController(_serviceMock, _identityProvider, _validateMock)
            {
                ControllerContext = new ControllerContext()
                {
                    HttpContext = new DefaultHttpContext()
                    {
                        User = claimPrincipal.Object
                    }
                }
            };

            controller.ControllerContext.HttpContext.Request.Headers["Authorization"]     = "Bearer unittesttoken";
            controller.ControllerContext.HttpContext.Request.Headers["x-timezone-offset"] = $"{It.IsAny<int>()}";
            controller.ControllerContext.HttpContext.Request.Path = new PathString("/v1/unit-test");

            return(controller);
        }
        public IPProcessTypeControllerTest(bool isException = false, bool isValidate = false)
        {
            if (isException)
            {
                _serviceMock = GetGlobalDefaulExceptionMock().Object;
            }
            else
            {
                _serviceMock = GetGlobalDefaultMock().Object;
            }
            if (isValidate)
            {
                _validateMock = GetGlobalExceptionValidate().Object;
            }

            else
            {
                _validateMock = GetGlobalValidate().Object;
            }

            _identityProvider = GetGlobalIndetityProvider().Object;
            _controllerMock   = GetController();
        }