Example #1
0
        public void CreateSessionWithInvalidModel_ShouldReturnModelStateNotValid()
        {
            var controller = new SessionController(_activityManager, _sessionManager, _personManager, _utilityManager);

            var model = new CreateSessionViewModel()
            {
                Activity = null,
                Name     = ""
            };

            //Init ModelState
            var modelBinder = new ModelBindingContext()
            {
                ModelMetadata = ModelMetadataProviders.Current.GetMetadataForType(
                    () => model, model.GetType()),
                ValueProvider = new NameValueCollectionValueProvider(
                    new NameValueCollection(), CultureInfo.InvariantCulture)
            };
            var binder = new DefaultModelBinder().BindModel(
                new ControllerContext(), modelBinder);

            controller.ModelState.Clear();
            controller.ModelState.Merge(modelBinder.ModelState);

            ViewResult result = (ViewResult)controller.CreateSession(model);

            Assert.IsTrue(result.ViewData.ModelState["Activity"].Errors.Count > 0);
            Assert.IsTrue(result.ViewData.ModelState["Name"].Errors.Count > 0);
            Assert.IsTrue(!result.ViewData.ModelState.IsValid);
        }
        private async void SigninButton_Click(object sender, System.EventArgs e)
        {
            EditText          userId   = FindViewById <EditText>(Resource.Id.userId);
            EditText          password = FindViewById <EditText>(Resource.Id.userPassword);
            SessionController sc       = new SessionController();
            UserController    uc       = new UserController();
            ManageController  mc       = new ManageController();

            bool result = await uc.SignIn(userId.Text, password.Text);

            if (result)
            {
                var user = await mc.GetUserAsync();

                if (user != null)
                {
                    string session = await sc.CreateSession();

                    if (string.IsNullOrWhiteSpace(session))
                    {
                        return;
                    }
                    mc.SetSession(session);

                    mc.Save <UserData>();
                }
                SetResult(Result.Ok);
                Finish();
            }
            else
            {
                Toast.MakeText(this, "Не удалось авторизироватся", ToastLength.Long).Show();
            }
        }
Example #3
0
        public void CreateSession_ShouldAddThatSession()
        {
            // Arrange
            var controller = new SessionController(_activityManager, _sessionManager, _personManager, _utilityManager);

            var sessionToAdd = new CreateSessionViewModel()
            {
                Activity          = _activityManager.GetActivityById(1),
                Name              = "New Session",
                AddedParticipants = "1,2",
                AddedTags         = "5,6",
                NameOfLocation    = "New Location"
            };

            // Act
            var controllerResult = controller.CreateSession(sessionToAdd);

            var sessionID = _sessionManager.GetAllSessions().SingleOrDefault(n => n.Name == "New Session").Id;
            var result    = _sessionManager.GetSessionByIdWithIncludes(sessionID);

            var tags = new string[2];

            tags[0] = "databaser";
            tags[1] = "sql";

            //TODO: check that it's the correct sessionparticipants & tags!?

            // Assert
            Assert.AreEqual(2, result.SessionParticipants.Count);
            Assert.AreEqual(2, result.SessionTags.Count);
        }
        public async Task CreateSession_WhenModelIsValid_ReturnsCreatedSessionResponse()
        {
            const int sessionId = 1;
            var       session   = new Session
            {
                SessionId = sessionId,
            };

            _mockRepository
            .Setup(repo => repo.CreateSession())
            .ReturnsAsync(session);

            var response = await _controller.CreateSession();

            var createdResponse = Assert.IsType <CreatedAtActionResult>(response.Result);
            var sessionResponse = Assert.IsType <SessionResponse>(createdResponse.Value);

            Assert.Equal(expected: sessionId, actual: sessionResponse.SessionId);
        }
Example #5
0
        public void CreateSession_ShouldReturnViewResult()
        {
            // Arrange
            var controller = new SessionController(_activityManager, _sessionManager, _personManager, _utilityManager);

            // Act
            ViewResult result = controller.CreateSession() as ViewResult;

            // Assert
            Assert.IsNotNull(result);
        }
        public void CreateSession_200()
        {
            Mock <ISessionLogic> sessionLogic = new Mock <ISessionLogic>();
            var newSession = new Model.Session()
            {
                Id = Guid.NewGuid(), Rank = RankEnum.Beginner, Level = 1
            };

            sessionLogic.Setup(c => c.CreateSession()).Returns(newSession);
            SessionController sc = new SessionController(sessionLogic.Object);

            var result = (ObjectResult)sc.CreateSession();

            Assert.AreEqual(result.Value, newSession);
        }
Example #7
0
        public ActionResult Authenticate([FromBody] UserBO userBO)
        {
            UserAppService userAppService = new UserAppService();
            UserResponseBO _apiResponse   = new UserResponseBO();

            if (ModelState.IsValid)
            {
                try
                {
                    UserResponseBO userAuthResponse = userAppService.Authenticate(userBO);

                    _apiResponse.UserInfo   = userAuthResponse.UserInfo;
                    _apiResponse.UserWallet = userAuthResponse.UserWallet;
                    _apiResponse.UserRole   = userAuthResponse.UserRole;

                    // SET SESSIONS
                    SessionController sessionController = new SessionController();
                    sessionController.CreateSession(userAuthResponse, HttpContext.Session);


                    _apiResponse.HttpStatusCode = "200";
                    _apiResponse.Message        = "User successfully authenticated";
                    _apiResponse.Status         = "Success";

                    return(Ok(_apiResponse));
                }
                catch (Exception ex)
                {
                    _apiResponse.HttpStatusCode = "500";
                    _apiResponse.Message        = ex.Message;
                    _apiResponse.Status         = "Error";

                    return(Ok(_apiResponse));
                }
            }
            else
            {
                _apiResponse.HttpStatusCode = "500";
                _apiResponse.Message        = "Please input the required credentials";
                _apiResponse.Status         = "Error";

                return(Ok(_apiResponse));
            }
        }
        public string GenerateSessionCode()
        {
            string sessionCode = "";
            int    length      = 5;

            // uncomment all commented lines below when implementing it in a asp net applicatie
            SessionController sessionController = new SessionController();

            StringBuilder str_build = new StringBuilder();
            Random        random    = new Random();

            char letter;

            bool inUse = true;

            while (inUse == true)
            {
                for (int i = 0; i < length; i++)
                {
                    int val = random.Next(0, 2);
                    if (val == 0)
                    {
                        double flt   = random.NextDouble();
                        int    shift = Convert.ToInt32(Math.Floor(25 * flt));
                        letter = Convert.ToChar(shift + 65);
                        str_build.Append(letter);
                    }
                    else
                    {
                        int newInt = random.Next(0, 10);
                        str_build.Append(newInt.ToString());
                    }
                }

                sessionCode = str_build.ToString();

                inUse = sessionController.CheckIfSessionExists(sessionCode);
            }

            sessionController.CreateSession(sessionCode);

            return(sessionCode);
        }