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)); }
//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); }