private static TypeDeclarationSyntax GetOrCreateTargetType(SyntaxNode sourceSymbol, SyntaxNode targetNamespace, IFrameworkSet frameworkSet, ClassModel classModel, out TypeDeclarationSyntax originalTargetType) { TypeDeclarationSyntax targetType = null; originalTargetType = null; if (targetNamespace != null && sourceSymbol != null) { var types = TestableItemExtractor.GetTypeDeclarations(targetNamespace); var targetClassName = frameworkSet.GetTargetTypeName(classModel, true); originalTargetType = targetType = types.FirstOrDefault(x => string.Equals(x.GetClassName(), targetClassName, StringComparison.OrdinalIgnoreCase)); if (originalTargetType == null) { targetClassName = frameworkSet.GetTargetTypeName(classModel, false); originalTargetType = targetType = types.FirstOrDefault(x => string.Equals(x.GetClassName(), targetClassName, StringComparison.OrdinalIgnoreCase)); } } if (targetType == null) { targetType = new ClassGenerationStrategyFactory(frameworkSet).CreateFor(classModel); } else { targetType = EnsureAllConstructorParametersHaveFields(frameworkSet, classModel, targetType); } return(targetType); }
public void CanConstruct() { var instance = new ClassGenerationStrategyFactory(_frameworkSet); Assert.That(instance, Is.Not.Null); }
public void SetUp() { _frameworkSet = Substitute.For <IFrameworkSet>(); _testClass = new ClassGenerationStrategyFactory(_frameworkSet); }