@@ -13,18 +13,103 @@ AdminClient Topic Creation
13
13
END
14
14
15
15
${admin_client_id } = Create Admin Client
16
- Create Topics group_id=${admin_client_id } new_topics=${topics }
16
+ ${results } = Create Topics group_id=${admin_client_id } new_topics=${topics }
17
+ Log ${results }
17
18
${topics } = List Topics ${admin_client_id }
18
19
FOR ${topic } IN @{topic_names }
19
20
List Should Contain Value ${topics } ${topic }
20
21
END
21
22
[Teardown] Delete Topics ${admin_client_id } ${topic_names }
22
23
23
- AdminClient List Groups
24
- [Documentation] If you run this test as first switch to Should Be Empty keyword.
24
+ AdminClient List Consumer Groups
25
+ ${producer_group_id } = Create Producer
26
+ Produce ${producer_group_id } topic=adminlisttest value=Hello partition=${0 }
27
+ Wait Until Keyword Succeeds 10x 0.5s All Messages Are Delivered ${producer_group_id }
28
+
29
+ ${group_id } = Create Consumer auto_offset_reset=earliest
30
+ Subscribe Topic ${group_id } topics=adminlisttest
31
+ Sleep 2s # Wait for subscription
32
+
25
33
${admin_client_id } = Create Admin Client
26
- ${groups } = List Groups ${admin_client_id }
27
- Should Not Be Empty ${groups }
34
+ ${states } = Create List ${CONSUMER_GROUP_STATE_STABLE }
35
+ ${groups } = List Groups ${admin_client_id } states=${states }
36
+ Log ${groups }
37
+ Log ${groups.valid }
38
+ FOR ${group } IN @{groups.valid }
39
+ Log ${group.group_id }
40
+ IF "${group_id } " == "${group.group_id } "
41
+ Log ${group.group_id }
42
+ Log ${group.state }
43
+ Pass Execution "Consumer found in list"
44
+ END
45
+ END
46
+ Fail
47
+ [Teardown] Basic Teardown ${group_id }
48
+
49
+ AdminClient Describe Consumer Groups
50
+ [Documentation] Finish the test with memebers + verification
51
+ ${producer_group_id } = Create Producer
52
+ Produce ${producer_group_id } topic=admindescribetest value=Hello partition=${0 }
53
+ Wait Until Keyword Succeeds 10x 0.5s All Messages Are Delivered ${producer_group_id }
54
+
55
+ ${group_id } = Create Consumer auto_offset_reset=earliest
56
+ Subscribe Topic ${group_id } topics=admindescribetest
57
+ Sleep 2s # Wait for subscription
58
+ ${group2_id } = Create Consumer auto_offset_reset=earliest
59
+ Subscribe Topic ${group2_id } topics=admindescribetest
60
+ Sleep 2s # Wait for subscription
61
+ ${groups } = Create List ${group_id } ${group2_id }
62
+
63
+ ${admin_client_id } = Create Admin Client
64
+ ${described_groups } = Describe Groups ${admin_client_id } group_ids=${groups }
65
+ Log ${described_groups }
66
+
67
+ FOR ${member } IN @{described_groups["${group_id }"].members }
68
+ Log ${member }
69
+ END
70
+ Log ${described_groups["${group_id }"].state }
71
+ Log ${described_groups["${group2_id }"].state }
72
+
73
+ [Teardown] Run Keywords Basic Teardown ${group_id } AND
74
+ ... Basic Teardown ${group2_id }
75
+
76
+ AdminClient Delete Consumer Groups
77
+ ${producer_group_id } = Create Producer
78
+ Produce ${producer_group_id } topic=admindeltest value=Hello partition=${0 }
79
+ Wait Until Keyword Succeeds 10x 0.5s All Messages Are Delivered ${producer_group_id }
80
+
81
+ ${group_id } = Create Consumer auto_offset_reset=earliest
82
+ Subscribe Topic ${group_id } topics=admindeltest
83
+ Sleep 2s # Wait for subscription
84
+ ${group2_id } = Create Consumer auto_offset_reset=earliest
85
+ Subscribe Topic ${group2_id } topics=admindeltest
86
+ Sleep 2s # Wait for subscription
87
+ ${groups } = Create List ${group2_id }
88
+ ${messages } = Poll group_id=${group2_id } max_records=5
89
+ Sleep 1s
90
+ Unsubscribe ${group2_id }
91
+ Close Consumer ${group2_id }
92
+
93
+ ${admin_client_id } = Create Admin Client
94
+ ${deletion } = Delete Groups ${admin_client_id } group_ids=${groups }
95
+ Should Be Equal ${deletion["${group2_id }"] } ${None }
96
+
97
+ ${current_groups } = List Groups ${admin_client_id }
98
+ Log ${current_groups.valid }
99
+ FOR ${group } IN @{current_groups.valid }
100
+ Log ${group.group_id }
101
+ IF "${group_id } " == "${group.group_id } "
102
+ Log ${group.group_id }
103
+ Log ${group.state }
104
+ Log "Consumer found in list"
105
+ END
106
+ IF "${group2_id } " == "${group.group_id } "
107
+ Log ${group.group_id }
108
+ Log ${group.state }
109
+ Fail "Group 1 consumer was not removed!"
110
+ END
111
+ END
112
+ [Teardown] Basic Teardown ${group_id }
28
113
29
114
AdminClient New Partitions
30
115
${topic_name } = Set Variable admin_testing_partition
@@ -33,17 +118,20 @@ AdminClient New Partitions
33
118
Create Topics group_id=${admin_client_id } new_topics=${topic }
34
119
35
120
${new_parts } = New Partitions ${topic_name } new_total_count=${2 }
36
- Create Partitions group_id=${admin_client_id } new_partitions=${new_parts }
121
+ ${resp } = Create Partitions group_id=${admin_client_id } new_partitions=${new_parts }
122
+ Log ${resp }
37
123
[Teardown] Delete Topics ${admin_client_id } ${topic_name }
38
124
39
125
AdminClient Describe Configs
40
126
${resource } = Config Resource ${ADMIN_RESOURCE_BROKER } 1
127
+ Log ${resource.name }
41
128
${admin_client_id } = Create Admin Client
42
129
${config } = Describe Configs ${admin_client_id } ${resource }
130
+ Log ${config }
43
131
44
132
Should Not Be Empty ${config }
45
- ${name } = Set Variable ${config['offsets.commit.timeout.ms'].name }
46
- ${value } = Set Variable ${config['offsets.commit.timeout.ms'].value }
133
+ ${name } = Set Variable ${config["${ resource.name }"][ 'offsets.commit.timeout.ms'].name }
134
+ ${value } = Set Variable ${config["${ resource.name }"][ 'offsets.commit.timeout.ms'].value }
47
135
Should Be Equal As Strings ${name } offsets.commit.timeout.ms
48
136
Should Be Equal As Integers ${value } ${5000 }
49
137
@@ -53,7 +141,24 @@ AdminClient Alter Configs
53
141
${resource } = Config Resource ${ADMIN_RESOURCE_BROKER } 1 set_config=${data }
54
142
${admin_client_id } = Create Admin Client
55
143
56
- Alter Configs ${admin_client_id } ${resource }
144
+ ${resp } = Alter Configs ${admin_client_id } ${resource }
145
+ Log ${resp }
57
146
Sleep 1s
58
147
${config } = Describe Configs ${admin_client_id } ${resource }
59
- Should Be Equal As Integers ${54321 } ${config['log.retention.ms'].value }
148
+ Should Be Equal As Integers ${54321 } ${config["${resource.name }"]['log.retention.ms'].value }
149
+
150
+
151
+ *** Keywords ***
152
+ All Messages Are Delivered
153
+ [Arguments] ${producer_id }
154
+ ${count } = Flush ${producer_id }
155
+ Log Reaming messages to be delivered: ${count }
156
+ Should Be Equal As Integers ${count } 0
157
+
158
+ Basic Teardown
159
+ [Arguments] ${group_id }
160
+ Unsubscribe ${group_id }
161
+ Close Consumer ${group_id }
162
+ ${groups } = Create List ${group_id }
163
+ ${admin_client_id } = Create Admin Client
164
+ Delete Groups ${admin_client_id } group_ids=${groups }
0 commit comments