コード例 #1
0
        public void UpdateCurrentNodeTest()
        {
            int expectedNode = 2;

            //update current node (move to next node on map)
            _progress.UpdateCurrentNode(profileID);

            //get current profile progress
            ProfileProgress progess = _progress.Get(profileID);
            int             result  = progess.CurrentNode;

            //Restore current node back to original value
            using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["Aura"].ConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand())
                {
                    cmd.Connection  = connection;
                    cmd.CommandText = "UPDATE ProfileProgress SET CurrentNode=@NewNode WHERE ProfileID=@ProfileID";
                    cmd.CommandType = CommandType.Text;
                    cmd.Parameters.AddWithValue("@ProfileID", profileID);
                    cmd.Parameters.AddWithValue("@NewNode", currentNode);
                    connection.Open();
                    cmd.ExecuteNonQuery();
                }
            }

            //get current profile progress
            progess = _progress.Get(profileID);

            //check that expected node, result node from update, and current node + 1 from
            //restoring of current node value are equal
            Assert.AreEqual(expectedNode, result, (progess.CurrentNode + 1));
        }
コード例 #2
0
        //set model values
        public PlayModel SetModel()
        {
            if (User.Identity.IsAuthenticated)
            {
                ProfileProgress progress = _progress.Get((int)Session["profileID"]);
                _model.CurrentMap = progress.CurrentMap;
                if (_model.CurrentMap == 0)                                       //If MapID equals 0, no ProfileProgress
                {
                    NewMap();                                                     //call function to set map and animal to save
                    progress          = _progress.Get((int)Session["profileID"]); //requery progress
                    _model.CurrentMap = progress.CurrentMap;                      //set current map for model
                }

                Options options = _options.Get((int)Session["profileID"]);
                int     level   = 0;

                _model.Animal      = progress.AnimalID;
                _model.CurrentNode = progress.CurrentNode;
                _model.Avatar      = options.AvatarID;
                _model.MapNodes    = _node.GetList(progress.CurrentMap);

                //set difficulty level for Play/Map display in View
                if (options.SubjectFilter == "Reading")
                {
                    level = options.ReadingDifficultyLevel;
                }
                else if (options.SubjectFilter == "Math")
                {
                    level = options.MathDifficultyLevel;
                }
                else
                {
                    level = options.ReadingDifficultyLevel > options.MathDifficultyLevel ?
                            options.ReadingDifficultyLevel : options.MathDifficultyLevel;
                }

                //Set grade level for Play/Map display in View
                if (level == 1)
                {
                    _model.GradeLevel = "Pre-Preschool";
                }
                else if (level == 2)
                {
                    _model.GradeLevel = "Preschool";
                }
                else if (level == 3)
                {
                    _model.GradeLevel = "Pre-Kindergarten";
                }
                else
                {
                    _model.GradeLevel = "Kindergarten";
                }

                //Set name and subject filter for Play/Map display in View
                _model.ProfileName = options.profileName;
                _model.Subject     = options.SubjectFilter;
                if (_model.Subject == "" || _model.Subject == "Any")
                {
                    _model.Subject = "All";
                }
            }
            else     //set model for free play mode
            {
                _model.ProfileName = "Free Play";
                _model.GradeLevel  = "All";
                _model.Subject     = "All";
                _model.CurrentMap  = (int)Session["fp_mapID"];
                _model.CurrentNode = (int)Session["fp_nodeID"];
                _model.Animal      = (int)Session["fp_animalID"];
                _model.Avatar      = (int)Session["fp_avatarID"];
                _model.MapNodes    = _node.GetList((int)Session["fp_mapID"]);
            }
            return(_model);
        }