2 Documentation This Resource contains list of Keywords Set_Variable_If_At_Least*, Set_Variable_If_At_Most,
3 ... Run_Keyword_If_At_Least*, Run_Keyword_If_At_Most*,
4 ... Run_Keyword_If_More_Than*, Run_Keyword_If_Less_Than*,
5 ... for comparison ${ODL_STREAM} to the given ${lower_bound},
6 ... in order to replace ad-hoc conditional execution in suites.
11 &{Stream_dict} carbon=${6} nitrogen=${7} oxygen=${8} fluorine=${9} neon=${10} sodium=${11}
14 Set_Variable_If_At_Least
15 [Arguments] ${lower_bound} ${value_if_true} ${value_if_false}
16 [Documentation] Compare ${lower_bound} to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at least ${lower_bound},
17 ... return ${value_if_false} otherwise.
18 BuiltIn.Run_Keyword_And_Return BuiltIn.Set_Variable_If &{Stream_dict}[${ODL_STREAM}] >= &{Stream_dict}[${lower_bound}] ${value_if_true} ${value_if_false}
20 Set_Variable_If_At_Most
21 [Arguments] ${upper_bound} ${value_if_true} ${value_if_false}
22 [Documentation] Compare ${upper_bound} to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at most ${upper_bound},
23 ... return ${value_if_false} otherwise.
24 BuiltIn.Run_Keyword_And_Return BuiltIn.Set_Variable_If &{Stream_dict}[${ODL_STREAM}] <= &{Stream_dict}[${upper_bound}] ${value_if_true} ${value_if_false}
26 Set_Variable_If_At_Least_Carbon
27 [Arguments] ${value_if_true} ${value_if_false}
28 [Documentation] Compare carbon to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at least carbon,
29 ... return ${value_if_false} otherwise.
30 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Least carbon ${value_if_true} ${value_if_false}
32 Set_Variable_If_At_Least_Nitrogen
33 [Arguments] ${value_if_true} ${value_if_false}
34 [Documentation] Compare nitrogen to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at least nitrogen,
35 ... return ${value_if_false} otherwise.
36 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Least nitrogen ${value_if_true} ${value_if_false}
38 Set_Variable_If_At_Least_Oxygen
39 [Arguments] ${value_if_true} ${value_if_false}
40 [Documentation] Compare oxygen to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at least oxygen,
41 ... return ${value_if_false} otherwise.
42 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Least oxygen ${value_if_true} ${value_if_false}
44 Set_Variable_If_At_Least_Fluorine
45 [Arguments] ${value_if_true} ${value_if_false}
46 [Documentation] Compare fluorine to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at least fluorine,
47 ... return ${value_if_false} otherwise.
48 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Least fluorine ${value_if_true} ${value_if_false}
50 Set_Variable_If_At_Least_Neon
51 [Arguments] ${value_if_true} ${value_if_false}
52 [Documentation] Compare neon to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at least neon,
53 ... return ${value_if_false} otherwise.
54 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Least neon ${value_if_true} ${value_if_false}
56 Set_Variable_If_At_Most_Carbon
57 [Arguments] ${value_if_true} ${value_if_false}
58 [Documentation] Compare carbon to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at most carbon,
59 ... return ${value_if_false} otherwise.
60 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Most carbon ${value_if_true} ${value_if_false}
62 Set_Variable_If_At_Most_Nitrogen
63 [Arguments] ${value_if_true} ${value_if_false}
64 [Documentation] Compare nitrogen to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at most nitrogen,
65 ... return ${value_if_false} otherwise.
66 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Most nitrogen ${value_if_true} ${value_if_false}
68 Set_Variable_If_At_Most_Oxygen
69 [Arguments] ${value_if_true} ${value_if_false}
70 [Documentation] Compare oxygen to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at most oxygen,
71 ... return ${value_if_false} otherwise.
72 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Most oxygen ${value_if_true} ${value_if_false}
74 Set_Variable_If_At_Most_Fluorine
75 [Arguments] ${value_if_true} ${value_if_false}
76 [Documentation] Compare fluorine to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at most fluorine,
77 ... return ${value_if_false} otherwise.
78 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Most fluorine ${value_if_true} ${value_if_false}
80 Set_Variable_If_At_Most_Neon
81 [Arguments] ${value_if_true} ${value_if_false}
82 [Documentation] Compare neon to ${ODL_STREAM} and return ${value_if_true} if ${ODL_STREAM} is at most neon,
83 ... return ${value_if_false} otherwise.
84 BuiltIn.Run_Keyword_And_Return Set_Variable_If_At_Most neon ${value_if_true} ${value_if_false}
86 CompareStream__Convert_Input
87 [Arguments] @{arguments}
88 [Documentation] Splits arguments into args and kwargs is used in Run_Keyword_If_At_Least_Else and Run_Keyword_If_At_Most_Else.
89 ... The problem is, when the string contains =, but it is not a named argument (name=value). There can be many values containing =, but
90 ... for sure it is present in xmls. If the string starts with "<" it will be treated as it is xml and splitting for
91 ... name and value will not be executed.
92 ... If named argument is passed into this kw, only string data are supported e.g. name=string. Complex variables such as lists or dictionaries
93 ... are not supported.
94 ${args} BuiltIn.Create_List
95 ${kwargs} BuiltIn.Create_Dictionary
96 : FOR ${arg} IN @{arguments}
97 \ ${arg} BuiltIn.Convert_To_String ${arg}
98 \ ${removed} String.Remove_String ${arg} \n ${Space} \t
100 \ ${splitted} BuiltIn.Run_Keyword_If "${removed[0]}" == "<" BuiltIn.Create List ${arg}
101 \ ... ELSE String.Split_String ${arg} separator== max_split=1
102 \ ${len} BuiltIn.Get_Length ${splitted}
103 \ Run Keyword If ${len}==1 Collections.Append_To_List ${args} @{splitted}[0]
104 \ ... ELSE Collections.Set_To_Dictionary ${kwargs} @{splitted}
105 BuiltIn.Return_From_Keyword ${args} ${kwargs}
107 Run_Keyword_If_At_Least
108 [Arguments] ${lower_bound} ${kw_name} @{varargs} &{kwargs}
109 [Documentation] Compare ${lower_bound} to ${ODL_STREAM} and in case ${ODL_STREAM} is at least ${lower_bound},
110 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
111 BuiltIn.Run_Keyword_And_Return_If &{Stream_dict}[${ODL_STREAM}] >= &{Stream_dict}[${lower_bound}] ${kw_name} @{varargs} &{kwargs}
113 Run_Keyword_If_At_Least_Else
114 [Arguments] ${lower_bound} @{varargs}
115 [Documentation] Compare ${lower_bound} to ${ODL_STREAM} and in case ${ODL_STREAM} is at least ${lower_bound},
116 ... run keyword defined before ELSE statement otherwise run keyword defined after ELSE statement and return its value.
117 ${position} Collections.Get_Index_From_List ${varargs} \ELSE
118 BuiltIn.Run_Keyword_If "${position}" == "-1" BuiltIn.Fail Missing else statement in defined expresion
119 ${varargs_if} Collections.Get_Slice_From_List ${varargs} 0 ${position}
120 ${varargs_else} Collections.Get_Slice_From_List ${varargs} ${position+1}
121 ${args_if} ${kwargs_if} CompareStream__Convert_Input @{varargs_if}
122 ${args_else} ${kwargs_else} CompareStream__Convert_Input @{varargs_else}
123 ${resp} BuiltIn.Run_Keyword_If &{Stream_dict}[${ODL_STREAM}] >= &{Stream_dict}[${lower_bound}] @{args_if} &{kwargs_if}
124 ... ELSE @{args_else} &{kwargs_else}
127 Run_Keyword_If_At_Most
128 [Arguments] ${upper_bound} ${kw_name} @{varargs} &{kwargs}
129 [Documentation] Compare ${upper_bound} to ${ODL_STREAM} and in case ${ODL_STREAM} is at most ${upper_bound},
130 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
131 BuiltIn.Run_Keyword_And_Return_If &{Stream_dict}[${ODL_STREAM}] <= &{Stream_dict}[${upper_bound}] ${kw_name} @{varargs} &{kwargs}
133 Run_Keyword_If_At_Most_Else
134 [Arguments] ${upper_bound} @{varargs}
135 [Documentation] Compare ${upper_bound} to ${ODL_STREAM} and in case ${ODL_STREAM} is at most ${upper_bound},
136 ... run keyword defined before ELSE statement otherwise run keyword defined after ELSE statement and return its value.
137 ${position} Collections.Get_Index_From_List ${varargs} \ELSE
138 BuiltIn.Run_Keyword_If "${position}" == "-1" BuiltIn.Fail Missing else statement in defined expresion
139 ${varargs_if} Collections.Get_Slice_From_List ${varargs} 0 ${position}
140 ${varargs_else} Collections.Get_Slice_From_List ${varargs} ${position+1}
141 ${args_if} ${kwargs_if} CompareStream__Convert_Input @{varargs_if}
142 ${args_else} ${kwargs_else} CompareStream__Convert_Input @{varargs_else}
143 ${resp} BuiltIn.Run_Keyword_If &{Stream_dict}[${ODL_STREAM}] >= &{Stream_dict}[${lower_bound}] @{args_if} &{kwargs_if}
144 ... ELSE @{args_else} &{kwargs_else}
147 Run_Keyword_If_More_Than
148 [Arguments] ${lower_bound} ${kw_name} @{varargs} &{kwargs}
149 [Documentation] Compare ${lower_bound} to ${ODL_STREAM} and in case ${ODL_STREAM} is more than ${lower_bound},
150 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
151 BuiltIn.Run_Keyword_And_Return_If &{Stream_dict}[${ODL_STREAM}] > &{Stream_dict}[${lower_bound}] ${kw_name} @{varargs} &{kwargs}
153 Run_Keyword_If_Equals
154 [Arguments] ${stream} ${kw_name} @{varargs} &{kwargs}
155 [Documentation] Compare ${stream} to ${ODL_STREAM} and in case ${ODL_STREAM} equals ${stream},
156 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
157 BuiltIn.Run_Keyword_And_Return_If &{Stream_dict}[${ODL_STREAM}] == &{Stream_dict}[${stream}] ${kw_name} @{varargs} &{kwargs}
159 Run_Keyword_If_Equals_Else
160 [Arguments] ${stream} @{varargs}
161 [Documentation] Compare ${stream} to ${ODL_STREAM} and in case ${ODL_STREAM} equals ${stream},
162 ... run keyword defined before ELSE statement otherwise run keyword defined after ELSE statement and return its value.
163 ${position} Collections.Get_Index_From_List ${varargs} \ELSE
164 BuiltIn.Run_Keyword_If "${position}" == "-1" BuiltIn.Fail Missing else statement in defined expresion
165 ${varargs_if} Collections.Get_Slice_From_List ${varargs} 0 ${position}
166 ${varargs_else} Collections.Get_Slice_From_List ${varargs} ${position+1}
167 ${args_if} ${kwargs_if} CompareStream__Convert_Input @{varargs_if}
168 ${args_else} ${kwargs_else} CompareStream__Convert_Input @{varargs_else}
169 ${resp} BuiltIn.Run_Keyword_If &{Stream_dict}[${ODL_STREAM}] == &{Stream_dict}[${stream}] @{args_if} &{kwargs_if}
170 ... ELSE @{args_else} &{kwargs_else}
173 Run_Keyword_If_Less_Than
174 [Arguments] ${lower_bound} ${kw_name} @{varargs} &{kwargs}
175 [Documentation] Compare ${lower_bound} to ${ODL_STREAM} and in case ${ODL_STREAM} is less than ${lower_bound},
176 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
177 BuiltIn.Run_Keyword_And_Return_If &{Stream_dict}[${ODL_STREAM}] < &{Stream_dict}[${lower_bound}] ${kw_name} @{varargs} &{kwargs}
179 Run_Keyword_If_At_Least_Carbon
180 [Arguments] ${kw_name} @{varargs} &{kwargs}
181 [Documentation] Compare carbon to ${ODL_STREAM} and in case ${ODL_STREAM} is at least carbon,
182 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
183 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Least carbon ${kw_name} @{varargs} &{kwargs}
185 Run_Keyword_If_At_Least_Nitrogen
186 [Arguments] ${kw_name} @{varargs} &{kwargs}
187 [Documentation] Compare nitrogen to ${ODL_STREAM} and in case ${ODL_STREAM} is at least nitrogen,
188 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
189 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Least nitrogen ${kw_name} @{varargs} &{kwargs}
191 Run_Keyword_If_At_Least_Oxygen
192 [Arguments] ${kw_name} @{varargs} &{kwargs}
193 [Documentation] Compare oxygen to ${ODL_STREAM} and in case ${ODL_STREAM} is at least oxygen,
194 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
195 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Least oxygen ${kw_name} @{varargs} &{kwargs}
197 Run_Keyword_If_At_Least_Fluorine
198 [Arguments] ${kw_name} @{varargs} &{kwargs}
199 [Documentation] Compare fluorine to ${ODL_STREAM} and in case ${ODL_STREAM} is at least fluorine,
200 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
201 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Least fluorine ${kw_name} @{varargs} &{kwargs}
203 Run_Keyword_If_At_Least_Neon
204 [Arguments] ${kw_name} @{varargs} &{kwargs}
205 [Documentation] Compare neon to ${ODL_STREAM} and in case ${ODL_STREAM} is at least neon,
206 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
207 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Least neon ${kw_name} @{varargs} &{kwargs}
209 Run_Keyword_If_At_Most_Carbon
210 [Arguments] ${kw_name} @{varargs} &{kwargs}
211 [Documentation] Compare carbon to ${ODL_STREAM} and in case ${ODL_STREAM} is at most carbon,
212 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
213 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Most carbon ${kw_name} @{varargs} &{kwargs}
215 Run_Keyword_If_At_Most_Nitrogen
216 [Arguments] ${kw_name} @{varargs} &{kwargs}
217 [Documentation] Compare nitrogen to ${ODL_STREAM} and in case ${ODL_STREAM} is at most nitrogen,
218 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
219 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Most nitrogen ${kw_name} @{varargs} &{kwargs}
221 Run_Keyword_If_At_Most_Oxygen
222 [Arguments] ${kw_name} @{varargs} &{kwargs}
223 [Documentation] Compare oxygen to ${ODL_STREAM} and in case ${ODL_STREAM} is at most oxygen,
224 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
225 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Most oxygen ${kw_name} @{varargs} &{kwargs}
227 Run_Keyword_If_At_Most_Fluorine
228 [Arguments] ${kw_name} @{varargs} &{kwargs}
229 [Documentation] Compare fluorine to ${ODL_STREAM} and in case ${ODL_STREAM} is at most fluroine,
230 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
231 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Most fluorine ${kw_name} @{varargs} &{kwargs}
233 Run_Keyword_If_At_Most_Neon
234 [Arguments] ${kw_name} @{varargs} &{kwargs}
235 [Documentation] Compare neon to ${ODL_STREAM} and in case ${ODL_STREAM} is at most neon,
236 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
237 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_At_Most neon ${kw_name} @{varargs} &{kwargs}
239 Run_Keyword_If_More_Than_Carbon
240 [Arguments] ${kw_name} @{varargs} &{kwargs}
241 [Documentation] Compare carbon to ${ODL_STREAM} and in case ${ODL_STREAM} is more than carbon,
242 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
243 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_More_Than carbon ${kw_name} @{varargs} &{kwargs}
245 Run_Keyword_If_More_Than_Nitrogen
246 [Arguments] ${kw_name} @{varargs} &{kwargs}
247 [Documentation] Compare nitrogen to ${ODL_STREAM} and in case ${ODL_STREAM} is more than nitrogen,
248 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
249 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_More_Than nitrogen ${kw_name} @{varargs} &{kwargs}
251 Run_Keyword_If_More_Than_Oxygen
252 [Arguments] ${kw_name} @{varargs} &{kwargs}
253 [Documentation] Compare oxygen to ${ODL_STREAM} and in case ${ODL_STREAM} is more than oxygen,
254 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
255 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_More_Than oxygen ${kw_name} @{varargs} &{kwargs}
257 Run_Keyword_If_More_Than_Fluorine
258 [Arguments] ${kw_name} @{varargs} &{kwargs}
259 [Documentation] Compare fluorine to ${ODL_STREAM} and in case ${ODL_STREAM} is more than fluorine,
260 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
261 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_More_Than fluorine ${kw_name} @{varargs} &{kwargs}
263 Run_Keyword_If_More_Than_Neon
264 [Arguments] ${kw_name} @{varargs} &{kwargs}
265 [Documentation] Compare fluorine to ${ODL_STREAM} and in case ${ODL_STREAM} is more than neon,
266 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
267 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_More_Than neon ${kw_name} @{varargs} &{kwargs}
269 Run_Keyword_If_Less_Than_Carbon
270 [Arguments] ${kw_name} @{varargs} &{kwargs}
271 [Documentation] Compare carbon to ${ODL_STREAM} and in case ${ODL_STREAM} is less than carbon,
272 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
273 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_Less_Than carbon ${kw_name} @{varargs} &{kwargs}
275 Run_Keyword_If_Less_Than_Nitrogen
276 [Arguments] ${kw_name} @{varargs} &{kwargs}
277 [Documentation] Compare nitrogen to ${ODL_STREAM} and in case ${ODL_STREAM} is less than nitrogen,
278 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
279 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_Less_Than nitrogen ${kw_name} @{varargs} &{kwargs}
281 Run_Keyword_If_Less_Than_Oxygen
282 [Arguments] ${kw_name} @{varargs} &{kwargs}
283 [Documentation] Compare oxygen to ${ODL_STREAM} and in case ${ODL_STREAM} is less than oxygen,
284 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
285 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_Less_Than oxygen ${kw_name} @{varargs} &{kwargs}
287 Run_Keyword_If_Less_Than_Fluorine
288 [Arguments] ${kw_name} @{varargs} &{kwargs}
289 [Documentation] Compare fluorine to ${ODL_STREAM} and in case ${ODL_STREAM} is less than fluorine,
290 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
291 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_Less_Than fluorine ${kw_name} @{varargs} &{kwargs}
293 Run_Keyword_If_Less_Than_Neon
294 [Arguments] ${kw_name} @{varargs} &{kwargs}
295 [Documentation] Compare fluorine to ${ODL_STREAM} and in case ${ODL_STREAM} is less than neon,
296 ... run ${kw_name} @{varargs} &{kwargs} and return its value.
297 BuiltIn.Run_Keyword_And_Return Run_Keyword_If_Less_Than neon ${kw_name} @{varargs} &{kwargs}