public void Constructor_RelativeCursorSizeNotGreaterThanZero_ThrowsException(Vector2 relativeCursorLength) { IGenericSingleElementScrollerConstArg arg = CreateMockConstArg(); arg.relativeCursorLength.Returns(relativeCursorLength); Assert.Throws( Is.TypeOf(typeof(System.InvalidOperationException)).And.Message.EqualTo("relativeCursorLength must be greater than 0"), () => { new TestGenericSingleElementScroller(arg); } ); }
public void Constructor_RelativeCursorLengthGreaterThanOne_ClampsValueDownToOne(Vector2 relativeCursorLength, Vector2 expected) { IGenericSingleElementScrollerConstArg arg = CreateMockConstArg(); arg.relativeCursorLength.Returns(relativeCursorLength); TestGenericSingleElementScroller scroller = new TestGenericSingleElementScroller(arg); scroller.ActivateImple(); Vector2 actual = scroller.thisRelativeCursorLength_Test; Assert.That(actual, Is.EqualTo(expected)); }
IGenericSingleElementScrollerConstArg CreateMockConstArg() { IGenericSingleElementScrollerConstArg arg = Substitute.For <IGenericSingleElementScrollerConstArg>(); arg.relativeCursorLength.Returns(new Vector2(.5f, .5f)); arg.scrollerAxis.Returns(ScrollerAxis.Both); arg.rubberBandLimitMultiplier.Returns(new Vector2(.1f, .1f)); arg.relativeCursorPosition.Returns(new Vector2(0f, 0f)); arg.isEnabledInertia.Returns(true); arg.uim.Returns(Substitute.For <IUIManager>()); arg.processFactory.Returns(Substitute.For <IUISystemProcessFactory>()); arg.uiElementFactory.Returns(Substitute.For <IUIElementFactory>()); IGenericSingleElementScrollerAdaptor uia = Substitute.For <IGenericSingleElementScrollerAdaptor>(); uia.GetRect().Returns(new Rect(Vector2.zero, new Vector2(200f, 100f))); uia.GetChildUIEs().Returns(new List <IUIElement>(new IUIElement[] { Substitute.For <IUIElement>() })); IUIAdaptor childAdaptor = Substitute.For <IUIAdaptor>(); childAdaptor.GetRect().Returns(new Rect(Vector2.zero, new Vector2(100f, 100f))); uia.GetChildUIEs()[0].GetUIAdaptor().Returns(childAdaptor); arg.uia.Returns(uia); arg.image.Returns(Substitute.For <IUIImage>()); return(arg); }
public TestGenericSingleElementScroller(IGenericSingleElementScrollerConstArg arg) : base(arg) { }
public GenericSingleElementScroller(IGenericSingleElementScrollerConstArg arg) : base(arg) { thisRelativeCursorLength = MakeRelativeCursorLengthInRange(arg.relativeCursorLength); }