phodal/chapi

View on GitHub
chapi-domain/src/test/kotlin/chapi/domain/core/CodeMemberTest.kt

Summary

Maintainability
B
5 hrs
Test Coverage
package chapi.domain.core

import org.junit.jupiter.api.Assertions.*
import org.junit.jupiter.api.Test

internal class CodeMemberTest {
    @Test
    internal fun shouldBuildMemberId_WhenDefaultNode() {
        var nodes: List<CodeFunction> = listOf()
        val codeFunction = CodeFunction(Name = "Builder", IsConstructor = false)
        nodes += codeFunction
        val codeMember = CodeMember(
            DataStructID = "default",
            FunctionNodes = nodes,
            AliasPackage = "alias"
        )

        codeMember.buildMemberId()

        assertEquals(codeMember.ID, "alias:Builder")
    }

    @Test
    internal fun shouldBuildMemberId_WhenNormalNode() {
        var nodes: List<CodeFunction> = listOf()
        val codeFunction = CodeFunction(Name = "Builder", IsConstructor = false)
        nodes += codeFunction
        val codeMember = CodeMember(
            FileID = "fileId",
            DataStructID = "builder",
            FunctionNodes = nodes,
            AliasPackage = "alias"
        )

        codeMember.buildMemberId()

        assertEquals(codeMember.ID, "fileId|alias::builder")
    }

    @Test
    internal fun shouldBuildMemberId_WhenSameFileIdPackageName() {
        var nodes: List<CodeFunction> = listOf()
        val codeFunction = CodeFunction(Name = "Builder", IsConstructor = false)
        nodes += codeFunction
        val codeMember = CodeMember(
            FileID = "Builder",
            DataStructID = "builder",
            FunctionNodes = nodes,
            AliasPackage = "alias"
        )

        codeMember.buildMemberId()

        assertEquals(codeMember.ID, "Builder|alias::builder")
    }
}