public static void prepareTestData(TestContext tc)
 {
     Controllers.UsersController controller = new Controllers.UsersController();
     IHttpActionResult           result     = controller.AddUserIndicesWithoutAuthorization(2, new List <string> {
         "DIA"
     });
 }
Пример #2
0
        public void UserPasswordValidUsernameValidPassword()
        {
            Controllers.UsersController controller = new Controllers.UsersController();
            dynamic data = new ExpandoObject();

            data.username = "******";
            data.password = "******";
            IHttpActionResult result = controller.ValidatePassword(data);

            Assert.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <string>));
        }
Пример #3
0
        public void UserPasswordBadRequest()
        {
            Controllers.UsersController controller = new Controllers.UsersController();
            dynamic data = new ExpandoObject();

            data.username = "******";
            IHttpActionResult result = controller.ValidatePassword(data);

            Assert.IsInstanceOfType(result, typeof(BadRequestErrorMessageResult));
            Assert.AreEqual(Controllers.UsersController.INVALID_LOGIN_DATA, ((BadRequestErrorMessageResult)result).Message);
        }
Пример #4
0
        public void UserPasswordValidUsernameBadPassword()
        {
            Controllers.UsersController controller = new Controllers.UsersController();
            dynamic data = new ExpandoObject();

            data.username = "******";
            data.password = "******";
            IHttpActionResult result = controller.ValidatePassword(data);

            Assert.IsInstanceOfType(result, typeof(BadRequestErrorMessageResult));
            Assert.AreEqual(Controllers.UsersController.INVALID_USERNAME_OR_PASSWORD, ((BadRequestErrorMessageResult)result).Message);
        }
Пример #5
0
        public void AddUser()
        {
            // Arrange
            var mockHash = new Mock<IHash>();
            var mockRepository = new Mock<IRepository<User>>();
            var controller = new Controllers.UsersController(mockHash.Object, mockRepository.Object);

            // Act
            var actionResult = controller.Post(new User() { Id = 1, Login = "******", Email = "Email", FullName = "FullName", Password = "******" });

            // Assert
            Assert.IsInstanceOfType(actionResult, typeof(OkResult));
            mockRepository.Verify(s => s.Save(It.IsAny<User>()));
        }
Пример #6
0
        /// <summary>
        /// Grant resource owner credentials overload method.
        /// </summary>
        /// <param name="context">Context parameter</param>
        /// <returns>Returns when task is completed</returns>
        public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
        {
            // Initialization.
            string usernameVal = context.UserName;
            string passwordVal = context.Password;

            NSRetail.Controllers.UsersController usercontrol = new Controllers.UsersController();
            if (string.IsNullOrEmpty(usernameVal) || string.IsNullOrEmpty(passwordVal))
            {
                context.SetError("invalid_request", "Parameter(s) are missing");
                return;
            }
            List <TBLUSER> user = usercontrol.Login(usernameVal, passwordVal).ToList();

            // Verification.
            if (user == null || user.Count() <= 0)
            {
                ApiError           apiError    = null;
                APIResponse        apiResponse = null;
                HttpRequestMessage api         = new HttpRequestMessage();
                apiError    = new ApiError("The user name or password is incorrect.", "501");
                apiResponse = new APIResponse(null, apiError);
                // Settings.
                //context.SetError(JsonConvert.SerializeObject(apiResponse));
                context.SetError("invalid_request", "The user name or password is incorrect");
                // Retuen info.
                return;
            }

            // Initialization.
            var claims   = new List <Claim>();
            var userInfo = user.FirstOrDefault();

            // Setting
            claims.Add(new Claim(ClaimTypes.Name, userInfo.EMAIL));

            // Setting Claim Identities for OAUTH 2 protocol.
            ClaimsIdentity oAuthClaimIdentity   = new ClaimsIdentity(claims, OAuthDefaults.AuthenticationType);
            ClaimsIdentity cookiesClaimIdentity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationType);

            // Setting user authentication.
            AuthenticationProperties properties = CreateProperties(Convert.ToString(userInfo.USERID));
            AuthenticationTicket     ticket     = new AuthenticationTicket(oAuthClaimIdentity, properties);

            // Grant access to authorize user.
            context.Validated(ticket);
            context.Request.Context.Authentication.SignIn(cookiesClaimIdentity);
        }
Пример #7
0
        public void DeleteUser()
        {
            // Arrange
            int id = 99;
            var mockHash = new Mock<IHash>();
            var mockRepository = new Mock<IRepository<User>>();
            mockRepository.Setup(s => s.Get(id))
                .Returns(new User() { Id = id, Login = "******", Email = "Email", FullName = "FullName" });
            var controller = new Controllers.UsersController(mockHash.Object, mockRepository.Object);

            // Act
            var actionResult = controller.Delete(id);

            // Assert
            Assert.IsInstanceOfType(actionResult, typeof(OkResult));
            mockRepository.Verify(s => s.Get(id));
            mockRepository.Verify(s => s.Delete(id));
        }
        public void AddUserFakeIndexFailure()
        {
            Controllers.UsersController controller = new Controllers.UsersController();
            IHttpActionResult           result     = controller.AddUserIndicesWithoutAuthorization(2, new List <string> {
                "FAKE"
            });

            Assert.IsInstanceOfType(result, typeof(JsonResult <List <dynamic> >));
            List <dynamic> results = ((JsonResult <List <dynamic> >)result).Content;
            bool           found   = false;

            foreach (dynamic index in results)
            {
                if ("FAKE".Equals(index.Ticker))
                {
                    found = true;
                }
            }
            Assert.IsFalse(found);
        }
Пример #9
0
        public void GetAllUser()
        {
            // Arrange
            var mockHash = new Mock<IHash>();
            var mockRepository = new Mock<IRepository<User>>();
            var ls = new List<User>()
            {
                new User() { Id = 1, Login = "******", Email = "Email", FullName = "FullName", Password = "******", ImageUrl = "ImageUrl" },
                new User() { Id = 2, Login = "******", Email = "Email", FullName = "FullName", Password = "******", ImageUrl = "ImageUrl" },
                new User() { Id = 3, Login = "******", Email = "Email", FullName = "FullName", Password = "******", ImageUrl = "ImageUrl" }
            };
            mockRepository.Setup(s => s.GetList())
                .Returns(ls.AsQueryable());
            var controller = new Controllers.UsersController(mockHash.Object, mockRepository.Object);

            // Act
            var actionResult = controller.Get();
            var contentResult = actionResult as OkNegotiatedContentResult<IQueryable>;

            // Assert
            Assert.IsNotNull(contentResult);
            mockRepository.Verify(s => s.GetList());
        }
Пример #10
0
 public void Init()
 {
     _mockEmailSender  = new Mock <IEmailSender>();
     _mockTokenService = new Mock <ITokenService>();
     _usersController  = new Controllers.UsersController(_mockEmailSender.Object, _mockTokenService.Object);
 }
Пример #11
0
 public void CreateJwtToken()
 {
     Controllers.UsersController controller = new Controllers.UsersController();
     string token = controller.createToken("anyusername");
 }
Пример #12
0
 public void GivenIAmAnAdministrator()
 {
     _usersController = _serviceProvider.GetRequiredService <Controllers.UsersController>();
 }
Пример #13
0
        public void GetUserById()
        {
            // Arrange
            int id = 20;
            var mockHash = new Mock<IHash>();
            var mockRepository = new Mock<IRepository<User>>();
            mockRepository.Setup(s => s.Get(id))
                .Returns(new User() { Id = id, Login = "******", Email = "Email", FullName = "FullName"});
            var controller = new Controllers.UsersController(mockHash.Object, mockRepository.Object);

            // Act
            var actionResult = controller.Get(id);
            var contentResult = actionResult as OkNegotiatedContentResult<User>;

            // Assert
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(id, contentResult.Content.Id);
        }
Пример #14
0
        public void SaveUser()
        {
            // Arrange
            int id = 1;
            var mockHash = new Mock<IHash>();
            mockHash.Setup(s => s.ValidatePassword(It.IsAny<string>(), It.IsAny<string>())).
                Returns(true);
            var mockRepository = new Mock<IRepository<User>>();
            mockRepository.Setup(s => s.Get(id))
                .Returns(new User() { Id = id, Login = "******", Email = "Email", FullName = "FullName" });
            var controller = new Controllers.UsersController(mockHash.Object, mockRepository.Object);

            // Act
            var actionResult = controller.Put (id, new User() { Id = id, Login = "******", Email = "Email", FullName = "FullName", Password = "******" });

            // Assert
            Assert.IsInstanceOfType(actionResult, typeof(OkResult));
            mockRepository.Verify(s => s.Get(id));
            mockRepository.Verify(s => s.Save(It.IsAny<User>()));
        }