Skip to content

Commit 195b17d

Browse files
authored
Add condition to the templateArg of BucketLevelTrigger (opensearch-project#576)
* Add condition to templateArg of BucketLevelTrigger Signed-off-by: Chase Engelbrecht <[email protected]> * Remove debug println Signed-off-by: Chase Engelbrecht <[email protected]> --------- Signed-off-by: Chase Engelbrecht <[email protected]>
1 parent 2ff995b commit 195b17d

File tree

2 files changed

+27
-1
lines changed

2 files changed

+27
-1
lines changed

src/main/kotlin/org/opensearch/commons/alerting/model/BucketLevelTrigger.kt

+6-1
Original file line numberDiff line numberDiff line change
@@ -69,14 +69,19 @@ data class BucketLevelTrigger(
6969
NAME_FIELD to name,
7070
SEVERITY_FIELD to severity,
7171
ACTIONS_FIELD to actions.map { it.asTemplateArg() },
72-
PARENT_BUCKET_PATH to getParentBucketPath()
72+
PARENT_BUCKET_PATH to getParentBucketPath(),
73+
CONDITION_FIELD to getCondition()
7374
)
7475
}
7576

7677
fun getParentBucketPath(): String {
7778
return bucketSelector.parentBucketPath
7879
}
7980

81+
fun getCondition(): String {
82+
return bucketSelector.script.idOrCode
83+
}
84+
8085
companion object {
8186
const val BUCKET_LEVEL_TRIGGER_FIELD = "bucket_level_trigger"
8287
const val CONDITION_FIELD = "condition"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package org.opensearch.commons.alerting.model
2+
3+
import org.junit.jupiter.api.Test
4+
import org.opensearch.commons.alerting.randomBucketLevelTrigger
5+
import kotlin.test.assertEquals
6+
7+
class BucketLevelTriggerTests {
8+
9+
@Test
10+
fun `test asTemplateArgs returns expected values`() {
11+
val bucketLevelTrigger = randomBucketLevelTrigger()
12+
val templateArg = bucketLevelTrigger.asTemplateArg()
13+
14+
assertEquals(templateArg[Trigger.ID_FIELD], bucketLevelTrigger.id)
15+
assertEquals(templateArg[Trigger.NAME_FIELD], bucketLevelTrigger.name)
16+
assertEquals(templateArg[Trigger.SEVERITY_FIELD], bucketLevelTrigger.severity)
17+
assertEquals(templateArg[Trigger.ACTIONS_FIELD], bucketLevelTrigger.actions.map { it.asTemplateArg() })
18+
assertEquals(templateArg[BucketLevelTrigger.PARENT_BUCKET_PATH], bucketLevelTrigger.bucketSelector.parentBucketPath)
19+
assertEquals(templateArg[BucketLevelTrigger.CONDITION_FIELD], bucketLevelTrigger.bucketSelector.script.idOrCode)
20+
}
21+
}

0 commit comments

Comments
 (0)