CodeAnalyzerTests

Public Methods

AnalyzeProjectAsync_ShouldReturnProjectStructure

public async Task AnalyzeProjectAsync_ShouldReturnProjectStructure()

Returns: Task

AnalyzeProjectAsync_ShouldCorrectlyIdentifyTypeKinds

public async Task AnalyzeProjectAsync_ShouldCorrectlyIdentifyTypeKinds()

Returns: Task

AnalyzeProjectAsync_ShouldCorrectlyParseNamespaces

public async Task AnalyzeProjectAsync_ShouldCorrectlyParseNamespaces()

Returns: Task

AnalyzeProjectAsync_ShouldParseClassMethods

public async Task AnalyzeProjectAsync_ShouldParseClassMethods()

Returns: Task

AnalyzeProjectAsync_ShouldParseClassProperties

public async Task AnalyzeProjectAsync_ShouldParseClassProperties()

Returns: Task

AnalyzeProjectAsync_ShouldParseClassFields

public async Task AnalyzeProjectAsync_ShouldParseClassFields()

Returns: Task

AnalyzeProjectAsync_ShouldParseEnumValues

public async Task AnalyzeProjectAsync_ShouldParseEnumValues()

Returns: Task

AnalyzeProjectAsync_ShouldParseInterfaceMethods

public async Task AnalyzeProjectAsync_ShouldParseInterfaceMethods()

Returns: Task

AnalyzeProjectAsync_ShouldParseRecordProperties

public async Task AnalyzeProjectAsync_ShouldParseRecordProperties()

Returns: Task

AnalyzeProjectAsync_ShouldParseStructMembers

public async Task AnalyzeProjectAsync_ShouldParseStructMembers()

Returns: Task

AnalyzeProjectAsync_ShouldSkipBinObjDirectories

public async Task AnalyzeProjectAsync_ShouldSkipBinObjDirectories()

Returns: Task

AnalyzeProjectAsync_ShouldHandleInvalidCSharpFiles

public async Task AnalyzeProjectAsync_ShouldHandleInvalidCSharpFiles()

Returns: Task

AnalyzeProjectAsync_ShouldCorrectlySetFullNames

public async Task AnalyzeProjectAsync_ShouldCorrectlySetFullNames()

// [Fact] // public async Task AnalyzeProjectAsync_ShouldHandleUnauthorizedAccessException() // { // // Arrange // var nonExistentPath = "/root/non-existent-directory"; // // Act & Assert - Should not throw exception // var result = await Analyzer.AnalyzeProjectAsync(nonExistentPath); // Assert.NotNull(result); // Assert.Empty(result.AllClasses); // }

Returns: Task

AnalyzeProjectAsync_ShouldSetCorrectSourceFileNames

public async Task AnalyzeProjectAsync_ShouldSetCorrectSourceFileNames()

Returns: Task

AnalyzeProjectAsync_ShouldCorrectlyIdentifySpecificTypeKinds

public async Task AnalyzeProjectAsync_ShouldCorrectlyIdentifySpecificTypeKinds(string typeName, string expectedKind)

Parameters:

  • typeName (string)
  • expectedKind (string)

Returns: Task

AnalyzeProjectAsync_ShouldFindExpectedType

public async Task AnalyzeProjectAsync_ShouldFindExpectedType(string expectedTypeName)

Parameters:

  • expectedTypeName (string)

Returns: Task

AnalyzeSourceCodeAsync_ShouldHandleEmptyFile

public async Task AnalyzeSourceCodeAsync_ShouldHandleEmptyFile()

Returns: Task

AnalyzeSourceCodeAsync_ShouldAnalyzeSingleClass

public async Task AnalyzeSourceCodeAsync_ShouldAnalyzeSingleClass()

Returns: Task

AnalyzeSourceCodeAsync_ShouldAnalyzeMultipleTypes

public async Task AnalyzeSourceCodeAsync_ShouldAnalyzeMultipleTypes()

Returns: Task

AnalyzeSourceCodeAsync_ShouldIdentifyTypeKind

public async Task AnalyzeSourceCodeAsync_ShouldIdentifyTypeKind(string expectedKind, string typeDeclaration)

Parameters:

  • expectedKind (string)
  • typeDeclaration (string)

Returns: Task

AnalyzeProjectAsync_ShouldLogCorrectNumberOfFiles

public async Task AnalyzeProjectAsync_ShouldLogCorrectNumberOfFiles()

Returns: Task

AnalyzeProjectAsync_ShouldLogAnalyzedTypes

public async Task AnalyzeProjectAsync_ShouldLogAnalyzedTypes()

Returns: Task