Files
openide/java/java-tests/testSrc/com/intellij/internal/statistic/libraryUsage/LibraryLayerTest.kt
Dmitry Gridin 62ea2bd6b1 [fus] implement library usage collector for Kotlin and Java
^KTIJ-956 Fixed
IJ-MR-16929

GitOrigin-RevId: a2f55b9fa88d0ebfea3f692f701da7a64c678ef8
2021-12-29 12:54:25 +00:00

30 lines
1.3 KiB
Kotlin

// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.internal.statistic.libraryUsage
import junit.framework.TestCase
class LibraryLayerTest : TestCase() {
fun test() {
val layer = LibraryLayer.create(
listOf(
createDescriptor("a"),
createDescriptor("a.b.c.d"),
createDescriptor("b.c.d"),
)
)
assertEquals("aLibrary", layer.findSuitableLibrary("a.Class"))
assertEquals("aLibrary", layer.findSuitableLibrary("a.foo.doo.F"))
assertEquals("aLibrary", layer.findSuitableLibrary("a.b.Moo"))
assertEquals("aLibrary", layer.findSuitableLibrary("a.b.c"))
assertEquals("aLibrary", layer.findSuitableLibrary("a.b.c.e"))
assertEquals("a.b.c.dLibrary", layer.findSuitableLibrary("a.b.c.d.*"))
assertEquals("a.b.c.dLibrary", layer.findSuitableLibrary("a.b.c.d"))
assertEquals("a.b.c.dLibrary", layer.findSuitableLibrary("a.b.c.d.fooo"))
assertEquals("b.c.dLibrary", layer.findSuitableLibrary("b.c.d.fooo"))
assertNull(layer.findSuitableLibrary("b.foo"))
assertNull(layer.findSuitableLibrary(""))
}
}
private fun createDescriptor(prefix: String) = LibraryDescriptor(libraryName = prefix + "Library", packagePrefix = prefix)