public void GetTypeDescriptor_InvokeObjectWithParent_ReturnsExpected(object instance, ICustomTypeDescriptor result) { var mockParentProvider = new Mock <TypeDescriptionProvider>(MockBehavior.Strict); mockParentProvider .Setup(p => p.GetTypeDescriptor(instance.GetType(), instance)) .Returns(result) .Verifiable(); var provider = new SubTypeDescriptionProvider(mockParentProvider.Object); Assert.Same(result, provider.GetTypeDescriptor(instance)); mockParentProvider.Verify(p => p.GetTypeDescriptor(instance.GetType(), instance), Times.Once()); // Call again. Assert.Same(result, provider.GetTypeDescriptor(instance)); mockParentProvider.Verify(p => p.GetTypeDescriptor(instance.GetType(), instance), Times.Exactly(2)); }
public void GetRuntimeType_InvokeWithParent_ReturnsExpected(Type reflectionType, Type result) { var mockParentProvider = new Mock <TypeDescriptionProvider>(MockBehavior.Strict); mockParentProvider .Setup(p => p.GetRuntimeType(reflectionType)) .Returns(result) .Verifiable(); var provider = new SubTypeDescriptionProvider(mockParentProvider.Object); Assert.Same(result, provider.GetRuntimeType(reflectionType)); mockParentProvider.Verify(p => p.GetRuntimeType(reflectionType), Times.Once()); // Call again. Assert.Same(result, provider.GetRuntimeType(reflectionType)); mockParentProvider.Verify(p => p.GetRuntimeType(reflectionType), Times.Exactly(2)); }
public void GetRuntimeType_InvokeWithoutParentWithUserDefinedType_RetunsUnderlyingSystemType(Type result) { var mockType = new Mock <Type>(MockBehavior.Strict); mockType .Setup(t => t.UnderlyingSystemType) .Returns(result) .Verifiable(); var provider = new SubTypeDescriptionProvider(); Assert.Same(result, provider.GetRuntimeType(mockType.Object)); mockType.Verify(t => t.UnderlyingSystemType, Times.Once()); // Call again. Assert.Same(result, provider.GetRuntimeType(mockType.Object)); mockType.Verify(t => t.UnderlyingSystemType, Times.Exactly(2)); }
public void CreateInstance_InvokeWithParent_ReturnsExpected(IServiceProvider serviceProvider, Type objectType, Type[] argTypes, object[] args, object result) { var mockParentProvider = new Mock <TypeDescriptionProvider>(MockBehavior.Strict); mockParentProvider .Setup(p => p.CreateInstance(serviceProvider, objectType, argTypes, args)) .Returns(result) .Verifiable(); var provider = new SubTypeDescriptionProvider(mockParentProvider.Object); Assert.Same(result, provider.CreateInstance(serviceProvider, objectType, argTypes, args)); mockParentProvider.Verify(p => p.CreateInstance(serviceProvider, objectType, argTypes, args), Times.Once()); // Call again. Assert.Same(result, provider.CreateInstance(serviceProvider, objectType, argTypes, args)); mockParentProvider.Verify(p => p.CreateInstance(serviceProvider, objectType, argTypes, args), Times.Exactly(2)); }
public void GetFullComponentName_InvokeWithParent_ReturnsExpected(object component, string result) { var mockParentProvider = new Mock <TypeDescriptionProvider>(MockBehavior.Strict); mockParentProvider .Setup(p => p.GetFullComponentName(component)) .Returns(result) .Verifiable(); var provider = new SubTypeDescriptionProvider(mockParentProvider.Object); Assert.Same(result, provider.GetFullComponentName(component)); mockParentProvider.Verify(p => p.GetFullComponentName(component), Times.Once()); // Call again. Assert.Same(result, provider.GetFullComponentName(component)); mockParentProvider.Verify(p => p.GetFullComponentName(component), Times.Exactly(2)); }
public void GetExtenderProviders_InvokeWithParent_ReturnsExpected(object instance, IExtenderProvider[] result) { var mockParentProvider = new Mock <TypeDescriptionProvider>(MockBehavior.Strict); mockParentProvider .Protected() .Setup <IExtenderProvider[]>("GetExtenderProviders", instance ?? ItExpr.IsNull <object>()) .Returns(result) .Verifiable(); var provider = new SubTypeDescriptionProvider(mockParentProvider.Object); Assert.Same(result, provider.GetExtenderProviders(instance)); mockParentProvider.Protected().Verify("GetExtenderProviders", Times.Once(), instance ?? ItExpr.IsNull <object>()); // Call again. Assert.Same(result, provider.GetExtenderProviders(instance)); mockParentProvider.Protected().Verify("GetExtenderProviders", Times.Exactly(2), instance ?? ItExpr.IsNull <object>()); }
public void IsSupportedType_NullType_ThrowsArgumentNullException() { var provider = new SubTypeDescriptionProvider(); AssertExtensions.Throws <ArgumentNullException>("type", () => provider.IsSupportedType(null)); }
public void GetTypeDescriptor_NullInstance_ThrowsArgumentNullException() { var provider = new SubTypeDescriptionProvider(); AssertExtensions.Throws <ArgumentNullException>("instance", () => provider.GetTypeDescriptor((object)null)); }
public void CreateInstance_NullObjectType_ThrowsArgumentNullException() { var provider = new SubTypeDescriptionProvider(); AssertExtensions.Throws <ArgumentNullException>("objectType", () => provider.CreateInstance(null, null, null, null)); }
public void GetRuntimeType_NullReflectionType_ThrowsArgumentNullException() { var provider = new SubTypeDescriptionProvider(); AssertExtensions.Throws <ArgumentNullException>("reflectionType", () => provider.GetRuntimeType(null)); }
public void GetFullComponentName_NullComponent_ReturnsNull() { var provider = new SubTypeDescriptionProvider(); AssertExtensions.Throws <ArgumentNullException>("instance", () => provider.GetFullComponentName(null)); }