private static bool HasIncompatiblePrefixes(ConstraintPartExpression constraintPartExpression) { // Currently only 'Not' suffix supported, as all other suffixes change actual type for constraint // (e.g. All, Some, Property, Count, etc.) return(constraintPartExpression.GetPrefixesNames().Any(s => s != NunitFrameworkConstants.NameOfIsNot)); }
private static ITypeSymbol?GetExpectedTypeSymbol(ConstraintPartExpression constraintPart, SyntaxNodeAnalysisContext context) { var expectedArgument = constraintPart.GetExpectedArgumentExpression(); if (expectedArgument == null) { return(null); } var expectedType = context.SemanticModel.GetTypeInfo(expectedArgument).Type; if (expectedType == null || expectedType is IErrorTypeSymbol) { return(null); } return(expectedType); }
private static bool HasCustomEqualityComparer(ConstraintPartExpression constraintPartExpression) { return(constraintPartExpression.GetSuffixesNames().Any(s => s == NunitFrameworkConstants.NameOfUsing)); }
private static bool IsContainsItem(ConstraintPartExpression constraintPart) { return(constraintPart.GetHelperClassName() == NunitFrameworkConstants.NameOfContains && constraintPart.GetConstraintName() == NunitFrameworkConstants.NameOfContainsItem); }
private static bool IsDoesContain(ConstraintPartExpression constraintPart) { return(constraintPart.GetConstraintName() == NunitFrameworkConstants.NameOfDoesContain); }
private static string ConstraintDiagnosticDescription(ConstraintPartExpression constraintPart) { return(constraintPart.GetHelperClassName() != null ? $"{constraintPart.GetHelperClassName()}.{constraintPart.GetConstraintName()}" : (constraintPart.GetConstraintName() ?? "")); }
private static bool HasIncompatibleOperators(ConstraintPartExpression constraintPart) { return(constraintPart.GetPrefixesNames().Any(p => p != NunitFrameworkConstants.NameOfDoesNot)); }