@@ -80,6 +80,26 @@ func TestAccTencentCloudTeoRuleEngine_basic(t *testing.T) {
80
80
resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "tags.#" , "2" ),
81
81
),
82
82
},
83
+ {
84
+ Config : testAccTeoRuleEngineActionUp ,
85
+ Check : resource .ComposeTestCheckFunc (
86
+ testAccCheckRuleEngineExists ("tencentcloud_teo_rule_engine.basic" ),
87
+ resource .TestCheckResourceAttrSet ("tencentcloud_teo_rule_engine.basic" , "zone_id" ),
88
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rule_name" , "rule-up" ),
89
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "status" , "enable" ),
90
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.#" , "1" ),
91
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.or.#" , "1" ),
92
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.sub_rules.#" , "1" ),
93
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.sub_rules.0.tags.#" , "1" ),
94
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.sub_rules.0.rules.0.or.#" , "1" ),
95
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.sub_rules.0.rules.0.or.0.and.#" , "1" ),
96
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.sub_rules.0.rules.0.or.0.and.0.operator" , "equal" ),
97
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.sub_rules.0.rules.0.or.0.and.0.target" , "filename" ),
98
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.sub_rules.0.rules.0.or.0.and.0.ignore_case" , "false" ),
99
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "rules.0.sub_rules.0.rules.0.or.0.and.0.values.#" , "1" ),
100
+ resource .TestCheckResourceAttr ("tencentcloud_teo_rule_engine.basic" , "tags.#" , "2" ),
101
+ ),
102
+ },
83
103
},
84
104
})
85
105
}
@@ -139,12 +159,18 @@ func testAccCheckRuleEngineExists(r string) resource.TestCheckFunc {
139
159
}
140
160
}
141
161
142
- const testAccTeoRuleEngine = testAccTeoZone + `
162
+ const testAccZoneVar = `
163
+ variable "zone_id" {
164
+ default = "zone-2qtuhspy7cr6"
165
+ }
166
+ `
167
+
168
+ const testAccTeoRuleEngine = testAccZoneVar + `
143
169
144
170
resource "tencentcloud_teo_rule_engine" "basic" {
145
171
rule_name = "rule-1"
146
172
status = "enable"
147
- zone_id = tencentcloud_teo_zone.basic.id
173
+ zone_id = var.zone_id
148
174
149
175
rules {
150
176
actions {
@@ -197,12 +223,12 @@ resource "tencentcloud_teo_rule_engine" "basic" {
197
223
}
198
224
`
199
225
200
- const testAccTeoRuleEngineUp = testAccTeoZone + `
226
+ const testAccTeoRuleEngineUp = testAccZoneVar + `
201
227
202
228
resource "tencentcloud_teo_rule_engine" "basic" {
203
229
rule_name = "rule-up"
204
230
status = "enable"
205
- zone_id = tencentcloud_teo_zone.basic.id
231
+ zone_id = var.zone_id
206
232
207
233
tags = ["keep-test-np1", "keep-test-np2"]
208
234
@@ -256,3 +282,48 @@ resource "tencentcloud_teo_rule_engine" "basic" {
256
282
}
257
283
}
258
284
`
285
+
286
+ const testAccTeoRuleEngineActionUp = testAccZoneVar + `
287
+
288
+ resource "tencentcloud_teo_rule_engine" "basic" {
289
+ rule_name = "rule-up"
290
+ status = "enable"
291
+ zone_id = var.zone_id
292
+
293
+ tags = ["keep-test-np1", "keep-test-np2"]
294
+
295
+ rules {
296
+ or {
297
+ and {
298
+ operator = "equal"
299
+ target = "extension"
300
+ values = [
301
+ "11",
302
+ ]
303
+ }
304
+ }
305
+ sub_rules {
306
+ tags = ["test-tag",]
307
+ rules {
308
+ or {
309
+ and {
310
+ operator = "equal"
311
+ target = "filename"
312
+ ignore_case = false
313
+ values = ["test.txt"]
314
+ }
315
+ }
316
+ actions {
317
+ normal_action {
318
+ action = "HostHeader"
319
+ parameters {
320
+ name = "ServerName"
321
+ values = ["terraform-test.com"]
322
+ }
323
+ }
324
+ }
325
+ }
326
+ }
327
+ }
328
+ }
329
+ `
0 commit comments