public void WebBrowserBase_GetStyle_Invoke_ReturnsExpected(ControlStyles flag, bool expected) { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); Assert.Equal(expected, control.GetStyle(flag)); // Call again to test caching. Assert.Equal(expected, control.GetStyle(flag)); }
public void WebBrowserBase_MouseMove_AddRemove_ThrowsNotSupportedException() { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); MouseEventHandler handler = (sender, e) => { }; Assert.Throws <NotSupportedException>(() => control.MouseMove += handler); control.MouseMove -= handler; }
public void WebBrowserBase_QueryContinueDrag__AddRemove_ThrowsNotSupportedException() { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); QueryContinueDragEventHandler handler = (sender, e) => { }; Assert.Throws <NotSupportedException>(() => control.QueryContinueDrag += handler); control.QueryContinueDrag -= handler; }
public void WebBrowserBase_Layout_AddRemove_ThrowsNotSupportedException() { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); LayoutEventHandler handler = (sender, e) => { }; Assert.Throws <NotSupportedException>(() => control.Layout += handler); ((Control)control).Layout -= handler; }
public void WebBrowserBase_CreateWebBrowserSiteBase_Invoke_ReturnsExpected() { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); WebBrowserSiteBase siteBase = control.CreateWebBrowserSiteBase(); Assert.NotNull(siteBase); Assert.NotSame(siteBase, control.CreateWebBrowserSiteBase()); }
public void WebBrowserBase_BindingContextChanged_AddRemove_ThrowsNotSupportedException() { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); EventHandler handler = (sender, e) => { }; Assert.Throws <NotSupportedException>(() => control.BindingContextChanged += handler); control.BindingContextChanged -= handler; }
public void WebBrowserBase_CanSelect_GetInPlaceActive_ReturnsExpected() { using var parent = new Control(); using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2") { Parent = parent }; Assert.True(control.CanSelect); }
public void WebBrowserBase_DrawToBitmap_InvokeZeroHeight_ThrowsArgumentException(int height) { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2") { Width = 20, Height = height }; using var bitmap = new Bitmap(10, 10); Assert.Throws <ArgumentException>(null, () => control.DrawToBitmap(bitmap, new Rectangle(1, 2, 3, 4))); }
public void WebBrowserBase_DrawToBitmap_InvalidTargetBounds_ThrowsArgumentException(int x, int y, int width, int height) { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2") { Width = 20, Height = 20 }; using var bitmap = new Bitmap(10, 10); Assert.Throws <ArgumentException>(null, () => control.DrawToBitmap(bitmap, new Rectangle(x, y, width, height))); }
public void WebBrowserBase_DrawToBitmap_Invoke_Success(Rectangle targetBounds) { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2") { Width = 20, Height = 20, }; using var bitmap = new Bitmap(20, 20); control.DrawToBitmap(bitmap, targetBounds); Assert.True(control.IsHandleCreated); }
public void WebBrowserBase_ProcessDialogKey_InvokeWithParent_ReturnsFalse(Keys keyData) { using var parent = new Control { Visible = false }; using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2") { Parent = parent }; Assert.False(control.ProcessDialogKey(keyData)); Assert.False(control.IsHandleCreated); }
public void WebBrowserBase_Site_Set_GetReturnsExpected() { var mockSite1 = new Mock <ISite>(MockBehavior.Strict); mockSite1 .Setup(s => s.Container) .Returns((IContainer)null); mockSite1 .Setup(s => s.GetService(typeof(AmbientProperties))) .Returns(null); using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2") { Site = mockSite1.Object }; Assert.Same(mockSite1.Object, control.Site); Assert.False(control.IsHandleCreated); // Set same. control.Site = mockSite1.Object; Assert.Same(mockSite1.Object, control.Site); Assert.False(control.IsHandleCreated); // Set another. var mockSite2 = new Mock <ISite>(MockBehavior.Strict); mockSite2 .Setup(s => s.Container) .Returns((IContainer)null); mockSite2 .Setup(s => s.GetService(typeof(AmbientProperties))) .Returns(null); control.Site = mockSite2.Object; Assert.Same(mockSite2.Object, control.Site); Assert.False(control.IsHandleCreated); // Set null. control.Site = null; Assert.Null(control.Site); Assert.False(control.IsHandleCreated); }
public void WebBrowserBase_ProcessDialogKey_InvokeWithCustomParent_ReturnsExpected(Keys keyData, bool result) { int callCount = 0; bool action(Keys actualKeyData) { Assert.Equal(keyData, actualKeyData); callCount++; return(result); } using var parent = new CustomProcessControl { ProcessDialogKeyAction = action, Visible = false }; using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2") { Parent = parent }; Assert.Equal(result, control.ProcessDialogKey(keyData)); Assert.Equal(1, callCount); Assert.False(control.IsHandleCreated); }
public void WebBrowserBase_GetTopLevel_Invoke_ReturnsExpected() { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); Assert.False(control.GetTopLevel()); }
public void WebBrowserBase_GetAutoSizeMode_Invoke_ReturnsExpected() { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); Assert.Equal(AutoSizeMode.GrowOnly, control.GetAutoSizeMode()); }
public void WebBrowserBase_DrawToBitmap_NullBitmap_ThrowsArgumentNullException() { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); Assert.Throws <ArgumentNullException>("bitmap", () => control.DrawToBitmap(null, new Rectangle(1, 2, 3, 4))); }
public void WebBrowserBase_Bounds_Set_GetReturnsExpected(int x, int y, int width, int height) { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); int layoutCallCount = 0; int resizeCallCount = 0; int sizeChangedCallCount = 0; int clientSizeChangedCallCount = 0; ((Control)control).Layout += (sender, e) => { Assert.Same(control, sender); Assert.Same(control, e.AffectedControl); Assert.Equal("Bounds", e.AffectedProperty); Assert.Equal(resizeCallCount, layoutCallCount); Assert.Equal(sizeChangedCallCount, layoutCallCount); Assert.Equal(clientSizeChangedCallCount, layoutCallCount); layoutCallCount++; }; control.Resize += (sender, e) => { Assert.Same(control, sender); Assert.Same(EventArgs.Empty, e); Assert.Equal(layoutCallCount - 1, resizeCallCount); Assert.Equal(sizeChangedCallCount, resizeCallCount); Assert.Equal(clientSizeChangedCallCount, resizeCallCount); resizeCallCount++; }; control.SizeChanged += (sender, e) => { Assert.Same(control, sender); Assert.Same(EventArgs.Empty, e); Assert.Equal(resizeCallCount - 1, sizeChangedCallCount); Assert.Equal(layoutCallCount - 1, sizeChangedCallCount); Assert.Equal(clientSizeChangedCallCount, sizeChangedCallCount); sizeChangedCallCount++; }; control.ClientSizeChanged += (sender, e) => { Assert.Same(control, sender); Assert.Same(EventArgs.Empty, e); Assert.Equal(resizeCallCount - 1, clientSizeChangedCallCount); Assert.Equal(layoutCallCount - 1, clientSizeChangedCallCount); Assert.Equal(sizeChangedCallCount - 1, clientSizeChangedCallCount); clientSizeChangedCallCount++; }; control.Bounds = new Rectangle(x, y, width, height); Assert.Equal(new Size(width, height), control.ClientSize); Assert.Equal(new Rectangle(0, 0, width, height), control.ClientRectangle); Assert.Equal(new Rectangle(0, 0, width, height), control.DisplayRectangle); Assert.Equal(new Size(width, height), control.Size); Assert.Equal(x, control.Left); Assert.Equal(x + width, control.Right); Assert.Equal(y, control.Top); Assert.Equal(y + height, control.Bottom); Assert.Equal(width, control.Width); Assert.Equal(height, control.Height); Assert.Equal(new Rectangle(x, y, width, height), control.Bounds); Assert.Equal(1, layoutCallCount); Assert.Equal(1, resizeCallCount); Assert.Equal(1, sizeChangedCallCount); Assert.Equal(1, clientSizeChangedCallCount); Assert.False(control.IsHandleCreated); // Call again. control.Bounds = new Rectangle(x, y, width, height); Assert.Equal(new Size(width, height), control.ClientSize); Assert.Equal(new Rectangle(0, 0, width, height), control.ClientRectangle); Assert.Equal(new Rectangle(0, 0, width, height), control.DisplayRectangle); Assert.Equal(new Size(width, height), control.Size); Assert.Equal(x, control.Left); Assert.Equal(x + width, control.Right); Assert.Equal(y, control.Top); Assert.Equal(y + height, control.Bottom); Assert.Equal(width, control.Width); Assert.Equal(height, control.Height); Assert.Equal(new Rectangle(x, y, width, height), control.Bounds); Assert.Equal(1, layoutCallCount); Assert.Equal(1, resizeCallCount); Assert.Equal(1, sizeChangedCallCount); Assert.Equal(1, clientSizeChangedCallCount); Assert.False(control.IsHandleCreated); }
public void WebBrowserBase_Bounds_SetWithHandle_GetReturnsExpected(bool resizeRedraw, int x, int y, int width, int height, int expectedWidth, int expectedHeight, int expectedInvalidatedCallCount) { using var control = new SubWebBrowserBase("8856f961-340a-11d0-a96b-00c04fd705a2"); control.SetStyle(ControlStyles.ResizeRedraw, resizeRedraw); int layoutCallCount = 0; int resizeCallCount = 0; int sizeChangedCallCount = 0; int clientSizeChangedCallCount = 0; ((Control)control).Layout += (sender, e) => { Assert.Same(control, sender); Assert.Same(control, e.AffectedControl); Assert.Equal("Bounds", e.AffectedProperty); Assert.Equal(resizeCallCount, layoutCallCount); Assert.Equal(sizeChangedCallCount, layoutCallCount); Assert.Equal(clientSizeChangedCallCount, layoutCallCount); layoutCallCount++; }; control.Resize += (sender, e) => { Assert.Same(control, sender); Assert.Same(EventArgs.Empty, e); Assert.Equal(layoutCallCount - 1, resizeCallCount); Assert.Equal(sizeChangedCallCount, resizeCallCount); Assert.Equal(clientSizeChangedCallCount, resizeCallCount); resizeCallCount++; }; control.SizeChanged += (sender, e) => { Assert.Same(control, sender); Assert.Same(EventArgs.Empty, e); Assert.Equal(resizeCallCount - 1, sizeChangedCallCount); Assert.Equal(layoutCallCount - 1, sizeChangedCallCount); Assert.Equal(clientSizeChangedCallCount, sizeChangedCallCount); sizeChangedCallCount++; }; control.ClientSizeChanged += (sender, e) => { Assert.Same(control, sender); Assert.Same(EventArgs.Empty, e); Assert.Equal(resizeCallCount - 1, clientSizeChangedCallCount); Assert.Equal(layoutCallCount - 1, clientSizeChangedCallCount); Assert.Equal(sizeChangedCallCount - 1, clientSizeChangedCallCount); clientSizeChangedCallCount++; }; Assert.NotEqual(IntPtr.Zero, control.Handle); int invalidatedCallCount = 0; control.Invalidated += (sender, e) => invalidatedCallCount++; int styleChangedCallCount = 0; ((Control)control).StyleChanged += (sender, e) => styleChangedCallCount++; int createdCallCount = 0; control.HandleCreated += (sender, e) => createdCallCount++; control.Bounds = new Rectangle(x, y, width, height); Assert.Equal(new Size(expectedWidth, expectedHeight), control.ClientSize); Assert.Equal(new Rectangle(0, 0, expectedWidth, expectedHeight), control.ClientRectangle); Assert.Equal(new Rectangle(0, 0, expectedWidth, expectedHeight), control.DisplayRectangle); Assert.Equal(new Size(expectedWidth, expectedHeight), control.Size); Assert.Equal(x, control.Left); Assert.Equal(x + expectedWidth, control.Right); Assert.Equal(y, control.Top); Assert.Equal(y + expectedHeight, control.Bottom); Assert.Equal(expectedWidth, control.Width); Assert.Equal(expectedHeight, control.Height); Assert.Equal(new Rectangle(x, y, expectedWidth, expectedHeight), control.Bounds); Assert.Equal(1, layoutCallCount); Assert.Equal(1, resizeCallCount); Assert.Equal(1, sizeChangedCallCount); Assert.Equal(1, clientSizeChangedCallCount); Assert.True(control.IsHandleCreated); Assert.Equal(expectedInvalidatedCallCount, invalidatedCallCount); Assert.Equal(0, styleChangedCallCount); Assert.Equal(0, createdCallCount); // Call again. control.Bounds = new Rectangle(x, y, width, height); Assert.Equal(new Size(expectedWidth, expectedHeight), control.ClientSize); Assert.Equal(new Rectangle(0, 0, expectedWidth, expectedHeight), control.ClientRectangle); Assert.Equal(new Rectangle(0, 0, expectedWidth, expectedHeight), control.DisplayRectangle); Assert.Equal(new Size(expectedWidth, expectedHeight), control.Size); Assert.Equal(x, control.Left); Assert.Equal(x + expectedWidth, control.Right); Assert.Equal(y, control.Top); Assert.Equal(y + expectedHeight, control.Bottom); Assert.Equal(expectedWidth, control.Width); Assert.Equal(expectedHeight, control.Height); Assert.Equal(new Rectangle(x, y, expectedWidth, expectedHeight), control.Bounds); Assert.Equal(1, layoutCallCount); Assert.Equal(1, resizeCallCount); Assert.Equal(1, sizeChangedCallCount); Assert.Equal(1, clientSizeChangedCallCount); Assert.True(control.IsHandleCreated); Assert.Equal(expectedInvalidatedCallCount, invalidatedCallCount); Assert.Equal(0, styleChangedCallCount); Assert.Equal(0, createdCallCount); }