public void SliderBar() { AddStep("Click at 25% mark", () => { InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize * new Vector2(0.25f, 0.5f))); InputManager.Click(MouseButton.Left); }); // We're translating to/from screen-space coordinates for click coordinates so we want to be more lenient with the value comparisons in these tests AddAssert("Value == -5", () => Precision.AlmostEquals(sliderBarValue.Value, -5, Precision.FLOAT_EPSILON)); AddStep("Press left arrow key", () => { var before = sliderBar.IsHovered; sliderBar.IsHovered = true; InputManager.PressKey(Key.Left); InputManager.ReleaseKey(Key.Left); sliderBar.IsHovered = before; }); AddAssert("Value == -6", () => Precision.AlmostEquals(sliderBarValue.Value, -6, Precision.FLOAT_EPSILON)); AddStep("Click at 75% mark, holding shift", () => { InputManager.PressKey(Key.LShift); InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize * new Vector2(0.75f, 0.5f))); InputManager.Click(MouseButton.Left); InputManager.ReleaseKey(Key.LShift); }); AddAssert("Value == 5", () => Precision.AlmostEquals(sliderBarValue.Value, 5, Precision.FLOAT_EPSILON)); }
public void Basic() { AddSliderStep("Value", -10.0, 10.0, -10.0, v => sliderBarValue.Value = v); AddStep("Click at x = 50", () => { InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize / 4)); InputManager.Click(MouseButton.Left); }); AddAssert("Value == -6,25", () => sliderBarValue == -6.25); AddStep("Press left arrow key", () => { var before = sliderBar.IsHovered; sliderBar.IsHovered = true; InputManager.PressKey(Key.Left); InputManager.ReleaseKey(Key.Left); sliderBar.IsHovered = before; }); AddAssert("Value == -7,25", () => sliderBarValue == -7.25); AddStep("Click at x = 150 with shift", () => { var drawSize = sliderBar.DrawSize; drawSize.X *= 0.75f; InputManager.PressKey(Key.LShift); InputManager.MoveMouseTo(sliderBar.ToScreenSpace(drawSize)); InputManager.Click(MouseButton.Left); InputManager.ReleaseKey(Key.LShift); }); AddAssert("Value == 6", () => sliderBarValue == 6); }
public void SliderBar(bool disabled) { AddStep($"set disabled to {disabled}", () => sliderBar.Current.Disabled = disabled); AddStep("Click at 25% mark", () => { InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize * new Vector2(0.25f, 0.5f))); InputManager.Click(MouseButton.Left); }); // We're translating to/from screen-space coordinates for click coordinates so we want to be more lenient with the value comparisons in these tests checkValue(-5, disabled); AddStep("Press left arrow key", () => { var before = sliderBar.IsHovered; sliderBar.IsHovered = true; InputManager.PressKey(Key.Left); InputManager.ReleaseKey(Key.Left); sliderBar.IsHovered = before; }); checkValue(-6, disabled); AddStep("Click at 75% mark, holding shift", () => { InputManager.PressKey(Key.LShift); InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize * new Vector2(0.75f, 0.5f))); InputManager.Click(MouseButton.Left); InputManager.ReleaseKey(Key.LShift); }); checkValue(5, disabled); }
public void Basic() { AddSliderStep("Value", sliderBarValue.MinValue, sliderBarValue.MaxValue, 0, v => sliderBarValue.Value = v); AddStep("Click at 25% mark", () => { InputManager.MoveMouseTo(sliderBar.ToScreenSpace(new Vector2(sliderBar.DrawWidth * 0.25f, sliderBar.DrawHeight * 0.5f))); InputManager.Click(MouseButton.Left); }); // We're translating to/from screen-space coordinates for click coordinates so we want to be more lenient with the value comparisons in this test AddAssert("Value == -6.25", () => Precision.AlmostEquals(sliderBarValue.Value, -6.25, Precision.FLOAT_EPSILON)); AddStep("Press left arrow key", () => { var before = sliderBar.IsHovered; sliderBar.IsHovered = true; InputManager.PressKey(Key.Left); InputManager.ReleaseKey(Key.Left); sliderBar.IsHovered = before; }); AddAssert("Value == -7.25", () => Precision.AlmostEquals(sliderBarValue.Value, -7.25, Precision.FLOAT_EPSILON)); AddStep("Click at 75% mark, holding shift", () => { InputManager.PressKey(Key.LShift); InputManager.MoveMouseTo(sliderBar.ToScreenSpace(new Vector2(sliderBar.DrawWidth * 0.75f, sliderBar.DrawHeight * 0.5f))); InputManager.Click(MouseButton.Left); InputManager.ReleaseKey(Key.LShift); }); AddAssert("Value == 6", () => Precision.AlmostEquals(sliderBarValue.Value, 6, Precision.FLOAT_EPSILON)); }
public void TestVerticalDragHasNoEffect() { checkValue(0, false); AddStep("Move Cursor", () => { InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize * new Vector2(0.75f, 0.0f))); }); AddStep("Click", () => { InputManager.PressButton(MouseButton.Left); }); AddStep("Drag", () => { InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize * new Vector2(0.75f, 1f))); }); AddStep("Release Click", () => { InputManager.ReleaseButton(MouseButton.Left); }); checkValue(0, false); }
public void TransferValueOnCommit() { AddStep("Click at 80% mark", () => { InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize * new Vector2(0.8f, 0.5f))); InputManager.Click(MouseButton.Left); }); AddAssert("Value == 6", () => Precision.AlmostEquals(sliderBarValue.Value, 6, Precision.FLOAT_EPSILON)); // These steps are broken up so we can see each of the steps being performed independently AddStep("Move Cursor", () => { InputManager.MoveMouseTo(transferOnCommitSliderBar.ToScreenSpace(transferOnCommitSliderBar.DrawSize * new Vector2(0.75f, 0.5f))); }); AddStep("Click", () => { InputManager.PressButton(MouseButton.Left); }); AddStep("Drag", () => { InputManager.MoveMouseTo(transferOnCommitSliderBar.ToScreenSpace(transferOnCommitSliderBar.DrawSize * new Vector2(0.25f, 0.5f))); }); AddAssert("Value == 6 (still)", () => Precision.AlmostEquals(sliderBarValue.Value, 6, Precision.FLOAT_EPSILON)); AddStep("Release Click", () => { InputManager.ReleaseButton(MouseButton.Left); }); AddAssert("Value == -5", () => Precision.AlmostEquals(sliderBarValue.Value, -5, Precision.FLOAT_EPSILON)); }
public void TestTransferValueOnCommit(bool disabled) { AddStep($"set disabled to {disabled}", () => sliderBar.Current.Disabled = disabled); AddStep("Click at 80% mark", () => { InputManager.MoveMouseTo(sliderBar.ToScreenSpace(sliderBar.DrawSize * new Vector2(0.8f, 0.5f))); InputManager.Click(MouseButton.Left); }); checkValue(6, disabled); // These steps are broken up so we can see each of the steps being performed independently AddStep("Move Cursor", () => { InputManager.MoveMouseTo(transferOnCommitSliderBar.ToScreenSpace(transferOnCommitSliderBar.DrawSize * new Vector2(0.75f, 0.5f))); }); AddStep("Click", () => { InputManager.PressButton(MouseButton.Left); }); AddStep("Drag", () => { InputManager.MoveMouseTo(transferOnCommitSliderBar.ToScreenSpace(transferOnCommitSliderBar.DrawSize * new Vector2(0.25f, 0.5f))); }); checkValue(6, disabled); AddStep("Release Click", () => { InputManager.ReleaseButton(MouseButton.Left); }); checkValue(-5, disabled); }