public StabilizationSession(SessionTopic topic, double avgSolveTime) { this.topic = topic; this.sceneAvgSolveTime = avgSolveTime; this.correctAddition = new List <int> (); this.correctSubtraction = new List <int> (); this.wrongAddition = new List <int> (); this.wrongSubtraction = new List <int> (); this.allDistinct = new List <int> (); this.startTime = DateTime.Now; }
public void Valid_SessionTopic_Create() { //Arrange SessionTopic newSessionTopic = new SessionTopic() { Name = "test1" }; //convert with automapper var newSessionTopicViewModel = Mapper.Map <SessionTopic, SessionTopicViewModel>(newSessionTopic); //Act var result = (RedirectToRouteResult)objController.Create(newSessionTopicViewModel); //convert with automapper newSessionTopic = Mapper.Map <SessionTopicViewModel, SessionTopic>(newSessionTopicViewModel); //Assert _sessionTopicServiceMock.Verify(m => m.Create(newSessionTopic), Times.Never); Assert.AreEqual("Index", result.RouteValues["action"]); }
public void CanAddSessionTopic() { //Arrange int id = 1; SessionTopic emp = new SessionTopic() { Name = "UK" }; _mockRepository.Setup(m => m.Add(emp)).Returns((SessionTopic e) => { e.Id = id; return(e); }); //Act _service.Create(emp); //Assert Assert.AreEqual(id, emp.Id); _mockUnitWork.Verify(m => m.Commit(), Times.Once); }
/// <summary> /// Takes all currently registered ghost blocks and checks their values to determine what topic the puzzle is. /// Also updates the stability number line based on the currently registered blocks' values. /// </summary> private void UpdateSession() { List <int> denominators = new List <int> (); FractionSet fset = new FractionSet(); bool similar = true; bool oddEquiv = true; bool evenEquiv = true; int currentDenom = (int)hollowBlocks [0].GetDenominator(); for (int i = 0; i < hollowBlocks.Count; i++) { denominators.Add((int)hollowBlocks[i].GetDenominator()); FractionData fraction = hollowBlocks [i].GetFraction(); if (i > 0) { if (similar && currentDenom == fraction.denominator) { similar = true; } else { similar = false; } if (evenEquiv && currentDenom % 2 == 0 && (currentDenom % fraction.denominator == 0 || fraction.denominator % currentDenom == 0 || (General.SimplifyFraction(fraction.numerator, fraction.denominator) [0] == 1.0f && General.SimplifyFraction(fraction.numerator, fraction.denominator) [1] == 2.0f))) { evenEquiv = true; } else { evenEquiv = false; } if (oddEquiv && currentDenom % 3 == 0 && (currentDenom % fraction.denominator == 0 || fraction.denominator % currentDenom == 0 || (General.SimplifyFraction(fraction.numerator, fraction.denominator) [0] == 1.0f && General.SimplifyFraction(fraction.numerator, fraction.denominator) [1] == 3.0f) || (General.SimplifyFraction(fraction.numerator, fraction.denominator) [0] == 2.0f && General.SimplifyFraction(fraction.numerator, fraction.denominator) [1] == 3.0f))) { oddEquiv = true; } else { oddEquiv = false; } // if (similar && fraction.denominator == (int)hollowBlocks [i - 1].GetDenominator ()) // similar = true; // else // similar = false; // // if (evenEquiv && (fraction.denominator % 2) == ((int)hollowBlocks [i - 1].GetDenominator () % 2)) // evenEquiv = true; // else // evenEquiv = false; // // if (oddEquiv && (fraction.denominator % 3) == ((int)hollowBlocks [i - 1].GetDenominator () % 3)) // oddEquiv = true; // else // oddEquiv = false; } fset.fractions.Add(fraction); } if (similar) { topic = SessionTopic.SIMILAR; } else if (evenEquiv || oddEquiv) { topic = SessionTopic.EQUIVALENT; } else { topic = SessionTopic.DISSIMILAR; } this.currentSession = new StabilizationSession(topic, this.sceneAvgSolveTime); if (numberLine == null) { this.numberLine = FindObjectOfType <StabilityNumberLine> (); } FractionData target = this.stabilityController.UpdateStabilityNumberLine(hollowBlocks); // FractionData target = new FractionData (); // target.numerator = (int)numberLine.GetTargetNumerator (); // target.denominator = (int)numberLine.GetTargetDenominator (); foreach (FractionSet s in SubsetSumFractions.SubsetSum(fset, target)) { additionRight.Add(s); } }
public void SetTopic(SessionTopic topic) { this.topic = topic; }