public void HandleGoing_Below_IntMinValue() { BoundaryExceededArgs raisedArgs = null; Action <BoundaryExceededArgs> onErr = (args) => raisedArgs = args; var sut = new RangedInt(int.MinValue + 1, int.MinValue, int.MaxValue, onErr); sut -= 4; Assert.AreEqual(int.MinValue, (int)sut.Value); Assert.IsNotNull(raisedArgs.ImpossibleValue); Assert.AreEqual("-2147483647 - 4 < int.MinValue", raisedArgs?.ImpossibleValue ?? 0); }
public void EventRaisedWhen_LowerBoundaryExceeded() { BoundaryExceededArgs raisedArgs = null; Action <BoundaryExceededArgs> onErr = (args) => raisedArgs = args; var sut = new RangedInt(3, 2, 5, onErr); sut -= 4; Assert.AreEqual(sut.Value, sut.MinValue); Assert.IsNotNull(raisedArgs.ImpossibleValue); Assert.AreEqual(-1, raisedArgs?.ImpossibleValue ?? 0); }
public void HandleGoing_Above_IntMaxValue_WithRangedInt() { BoundaryExceededArgs raisedArgs = null; Action <BoundaryExceededArgs> onErr = (args) => raisedArgs = args; var sut = new RangedInt(int.MaxValue - 1, 0, int.MaxValue, onErr); var addFive = new RangedInt(5); sut += addFive; Assert.AreEqual(int.MaxValue, (int)sut.Value); Assert.IsNotNull(raisedArgs.ImpossibleValue); Assert.AreEqual("2147483646 + 5 > int.MaxValue", raisedArgs?.ImpossibleValue ?? 0); }
public void HandleGoing_Above_IntMaxValue() { BoundaryExceededArgs raisedArgs = null; Action <BoundaryExceededArgs> onErr = (args) => raisedArgs = args; var sut = new RangedInt(int.MaxValue - 1, 0, int.MaxValue, onErr); sut += 4; // Assert.IsTrue(false, int.MaxValue.ToString()); // 2147483647 Assert.AreEqual(int.MaxValue, (int)sut.Value); Assert.IsNotNull(raisedArgs.ImpossibleValue); Assert.AreEqual("2147483646 + 4 > int.MaxValue", raisedArgs?.ImpossibleValue ?? 0); }