public static Mock <IPopupImpl> CreatePopupMock(IWindowBaseImpl parent) { var popupImpl = new Mock <IPopupImpl>(); var clientSize = new Size(); var positionerHelper = new ManagedPopupPositionerPopupImplHelper(parent, (pos, size, scale) => { clientSize = size.Constrain(s_screenSize); popupImpl.Object.PositionChanged?.Invoke(pos); popupImpl.Object.Resized?.Invoke(clientSize, PlatformResizeReason.Unspecified); }); var positioner = new ManagedPopupPositioner(positionerHelper); popupImpl.SetupAllProperties(); popupImpl.Setup(x => x.ClientSize).Returns(() => clientSize); popupImpl.Setup(x => x.MaxAutoSizeHint).Returns(s_screenSize); popupImpl.Setup(x => x.RenderScaling).Returns(1); popupImpl.Setup(x => x.PopupPositioner).Returns(positioner); popupImpl.Setup(x => x.Dispose()).Callback(() => { popupImpl.Object.Closed?.Invoke(); }); return(popupImpl); }
public static Mock <IPopupImpl> CreatePopupMock(IWindowBaseImpl parent) { var popupImpl = new Mock <IPopupImpl>(); var positionerHelper = new ManagedPopupPositionerPopupImplHelper(parent, (pos, size, scale) => { popupImpl.Object.PositionChanged?.Invoke(pos); popupImpl.Object.Resized?.Invoke(size); }); var positioner = new ManagedPopupPositioner(positionerHelper); popupImpl.Setup(x => x.Scaling).Returns(1); popupImpl.Setup(x => x.PopupPositioner).Returns(positioner); SetupToplevel(popupImpl); return(popupImpl); }
public static Mock <IPopupImpl> CreatePopupMock(IWindowBaseImpl parent) { var popupImpl = new Mock <IPopupImpl>(); var clientSize = new Size(); var positionerHelper = new ManagedPopupPositionerPopupImplHelper(parent, (pos, size, scale) => { clientSize = size.Constrain(s_screenSize); popupImpl.Object.PositionChanged?.Invoke(pos); popupImpl.Object.Resized?.Invoke(clientSize); }); var positioner = new ManagedPopupPositioner(positionerHelper); popupImpl.SetupAllProperties(); popupImpl.Setup(x => x.ClientSize).Returns(() => clientSize); popupImpl.Setup(x => x.Scaling).Returns(1); popupImpl.Setup(x => x.PopupPositioner).Returns(positioner); SetupToplevel(popupImpl); return(popupImpl); }