public void CollectionForm_GetService_InvokeWithoutContext_ReturnsNull(Type serviceType) { var editor = new SubCollectionEditor(serviceType); var form = new SubCollectionForm(editor); Assert.Null(form.GetService(serviceType)); }
public void CollectionForm_GetService_WithContext_CallsContextGetService(Type serviceType) { var mockEditorService = new Mock <IWindowsFormsEditorService>(MockBehavior.Strict); mockEditorService .Setup(s => s.ShowDialog(It.IsAny <Form>())) .Returns(DialogResult.OK); var mockServiceProvider = new Mock <IServiceProvider>(MockBehavior.Strict); mockServiceProvider .Setup(p => p.GetService(typeof(IWindowsFormsEditorService))) .Returns(mockEditorService.Object); var result = new object(); var mockContext = new Mock <ITypeDescriptorContext>(MockBehavior.Strict); mockContext .Setup(c => c.GetService(typeof(IDesignerHost))) .Returns(null); mockContext .Setup(c => c.GetService(typeof(AmbientProperties))) .Returns(null); mockContext .Setup(c => c.GetService(typeof(IComponentChangeService))) .Returns(null); mockContext .Setup(c => c.GetService(serviceType)) .Returns(result); var editor = new SubCollectionEditor(typeof(List <int>)); var value = new object(); Assert.Same(value, editor.EditValue(mockContext.Object, mockServiceProvider.Object, value)); Assert.Same(mockContext.Object, editor.Context); var form = new SubCollectionForm(editor); Assert.Same(result, form.GetService(serviceType)); }