mirror of
https://github.com/AdrianKuta/Tree-Data-Structure.git
synced 2026-06-19 19:00:14 +02:00
Release 3.1.5: remove debug println, drop worksheet leftover, modernize CI
- Remove stray println(child.value) from TreeNode.removeChild()
- Add regression test for removeChild() return value
- Delete leftover ExampleUnitTest.kt template test
- Remove Example.ws.kts worksheet and kotlin("script-runtime") from jvmMain
- Bump actions/checkout v2 -> v4 in CI workflows
- Update README install snippets to 3.1.5
- Bump version to 3.1.5
This commit is contained in:
2
.github/workflows/publishRelease.yml
vendored
2
.github/workflows/publishRelease.yml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v4
|
||||
- name: Set up JDK 21
|
||||
uses: actions/setup-java@v4
|
||||
with:
|
||||
|
||||
2
.github/workflows/test.yml
vendored
2
.github/workflows/test.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v4
|
||||
- name: Set up JDK 21
|
||||
uses: actions/setup-java@v4
|
||||
with:
|
||||
|
||||
@@ -16,14 +16,14 @@ Gradle (Kotlin DSL):
|
||||
```kotlin
|
||||
// commonMain for KMP projects, or any sourceSet/module where you need it
|
||||
dependencies {
|
||||
implementation("com.github.adriankuta:tree-structure:3.1.1") // see badge above for the latest version
|
||||
implementation("com.github.adriankuta:tree-structure:3.1.5") // see badge above for the latest version
|
||||
}
|
||||
```
|
||||
|
||||
Gradle (Groovy):
|
||||
```groovy
|
||||
dependencies {
|
||||
implementation "com.github.adriankuta:tree-structure:3.1.1" // see badge above for the latest
|
||||
implementation "com.github.adriankuta:tree-structure:3.1.5" // see badge above for the latest
|
||||
}
|
||||
```
|
||||
|
||||
@@ -32,7 +32,7 @@ Maven:
|
||||
<dependency>
|
||||
<groupId>com.github.adriankuta</groupId>
|
||||
<artifactId>tree-structure</artifactId>
|
||||
<version>3.1.1</version>
|
||||
<version>3.1.5</version>
|
||||
</dependency>
|
||||
```
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ plugins {
|
||||
|
||||
val PUBLISH_GROUP_ID = "com.github.adriankuta"
|
||||
val PUBLISH_ARTIFACT_ID = "tree-structure" // base artifact; KMP will add -jvm, -ios*, etc.
|
||||
val PUBLISH_VERSION = "3.1.4"
|
||||
val PUBLISH_VERSION = "3.1.5"
|
||||
|
||||
val snapshot: String? by project
|
||||
|
||||
@@ -119,7 +119,7 @@ kotlin {
|
||||
sourceSets {
|
||||
val commonMain by getting
|
||||
val commonTest by getting { dependencies { implementation(kotlin("test")) } }
|
||||
val jvmMain by getting { dependencies { implementation(kotlin("script-runtime")) } }
|
||||
val jvmMain by getting
|
||||
val jvmTest by getting
|
||||
val jsMain by getting
|
||||
val jsTest by getting
|
||||
|
||||
@@ -62,7 +62,6 @@ open class TreeNode<T>(val value: T, var treeIterator: TreeNodeIterators = PreOr
|
||||
* @return `true` if the node has been successfully removed; `false` if it was not present in the tree.
|
||||
*/
|
||||
fun removeChild(child: TreeNode<T>): Boolean {
|
||||
println(child.value)
|
||||
val removed = child._parent?._children?.remove(child)
|
||||
child._parent = null
|
||||
return removed ?: false
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
package com.github.adriankuta.datastructure.tree
|
||||
|
||||
import kotlin.test.Test
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
/**
|
||||
* Example local unit test, which will execute on the development machine (host).
|
||||
*
|
||||
* See [testing documentation](http://d.android.com/tools/testing).
|
||||
*/
|
||||
class ExampleUnitTest {
|
||||
@Test
|
||||
fun addition_isCorrect() {
|
||||
assertEquals(4, 2 + 2)
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,9 @@ import com.github.adriankuta.datastructure.tree.iterators.TreeNodeIterators
|
||||
import kotlin.test.Test
|
||||
import kotlin.test.assertContentEquals
|
||||
import kotlin.test.assertEquals
|
||||
import kotlin.test.assertFalse
|
||||
import kotlin.test.assertNull
|
||||
import kotlin.test.assertTrue
|
||||
|
||||
class TreeNodeTest {
|
||||
|
||||
@@ -62,6 +64,18 @@ class TreeNodeTest {
|
||||
)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun removeChildReturnsTrueWhenPresentFalseOtherwise() {
|
||||
val root = TreeNode("Root")
|
||||
val child = TreeNode("Child")
|
||||
root.addChild(child)
|
||||
|
||||
assertTrue(root.removeChild(child), "Removing a present child returns true")
|
||||
assertFalse(root.removeChild(child), "Removing an already-removed child returns false")
|
||||
assertNull(child.parent, "Removed child is detached from its parent")
|
||||
assertEquals(emptyList(), root.children)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun clearTest() {
|
||||
val root = TreeNode("Root")
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
import com.github.adriankuta.datastructure.tree.tree
|
||||
|
||||
val root =
|
||||
tree("World") {
|
||||
child("North America") {
|
||||
child("USA")
|
||||
}
|
||||
child("Europe") {
|
||||
child("Poland")
|
||||
child("Germany")
|
||||
}
|
||||
}
|
||||
|
||||
print(root.prettyString())
|
||||
Reference in New Issue
Block a user