public BridgeType AddBridgeType(BridgeTypes bridgeTypes, TypeDescriptor typeDescriptor) { var type = SubstituteType(typeDescriptor); var key = type.FullName; var bridgeType = Substitute.For <BridgeType>(key); bridgeType.Type.Returns(type); if (typeDescriptor.InThisAssembly) { var typeInfo = Substitute.For <ITypeInfo>(); typeInfo.Name.Returns(type.Name); typeInfo.Namespace.Returns(type.Namespace); typeInfo.Key.Returns(key); bridgeType.TypeInfo.Returns(typeInfo); } else { ITypeInfo typeInfo = null; bridgeType.TypeInfo.Returns(typeInfo); } bridgeTypes.Add(key, bridgeType); return(bridgeType); }