Revision: 2949
Author: janne.t.harkonen
Date: Tue Apr 13 03:20:16 2010
Log: forgot one file
http://code.google.com/p/robotframework/source/detail?r=2949
Added:
/trunk/atest/testdata/keywords/user_keyword_arguments.txt
=======================================
--- /dev/null
+++ /trunk/atest/testdata/keywords/user_keyword_arguments.txt Tue Apr 13
03:20:16 2010
@@ -0,0 +1,158 @@
+*** Settings ***
+
+*** Variables ***
+${VAR} Variable value
+
+*** Test Cases ***
+Correct Number Of Arguments When No Defaults Or Varargs
+ ${ret} = A 0
+ Equals ${ret} a_0
+ ${ret} = A 0 B
+ Equals ${ret} a_0_b
+ ${ret} = A 1 my arg
+ Equals ${ret} a_1: my arg
+ ${ret} = A 3 a1 a2 a3
+ Equals ${ret} a_3: a1 a2 a3
+
+Too Few Arguments When No Defaults Or Varargs 1
+ [Documentation] FAIL Keyword 'A 1' expected 1 argument, got 0.
+ A 1
+
+Too Few Arguments When No Defaults Or Varargs 2
+ [Documentation] FAIL Keyword 'A 3' expected 3 arguments, got 2.
+ A 3 a1 a2
+
+Too Many Arguments When No Defaults Or Varargs 1
+ [Documentation] FAIL Keyword 'A 0' expected 0 arguments, got 10.
+ A 0 This is too much ! Really way
+ ... too much !!!!!
+
+Too Many Arguments When No Defaults Or Varargs 2
+ [Documentation] FAIL Keyword 'A 1' expected 1 argument, got 2.
+ A 1 Too much
+
+Too Many Arguments When No Defaults Or Varargs 3
+ [Documentation] FAIL Keyword 'A 3' expected 3 arguments, got 4.
+ A 3 a1 a2 a3 a4
+
+Correct Number Of Arguments With Defaults
+ ${ret} = A 0 1
+ Equals ${ret} a_0_1: default
+ ${ret} = A 0 1 This works too
+ Equals ${ret} a_0_1: This works too
+ ${ret} = A 1 3 My argument
+ Equals ${ret} a_1_3: My argument default default
+ ${ret} = A 1 3 My argument My argument 2
+ Equals ${ret} a_1_3: My argument My argument 2 default
+ ${ret} = A 1 3 My argument My argument 2 My argument 3
+ Equals ${ret} a_1_3: My argument My argument 2 My argument 3
+
+Too Few Arguments With Defaults
+ [Documentation] FAIL Keyword 'A 1 3' expected 1 to 3 arguments, got 0.
+ A 1 3
+
+Too Many Arguments With Defaults 1
+ [Documentation] FAIL Keyword 'A 0 1' expected 0 to 1 arguments, got 2.
+ A 0 1 Too much
+
+Too Many Arguments With Defaults 2
+ [Documentation] FAIL Keyword 'A 1 3' expected 1 to 3 arguments, got 4.
+ A 1 3 This is too much
+
+Correct Number Of Arguments With Varargs
+ ${ret} = A 0 N
+ Equals ${ret} a_0_n: \
+ ${ret} = A 0 N My arg
+ Equals ${ret} a_0_n: My arg
+ ${ret} = A 0 N 1 2 3 4
+ Equals ${ret} a_0_n: 1 2 3 4
+ ${ret} = A 1 N Required arg
+ Equals ${ret} a_1_n: Required arg \
+ ${ret} = A 1 N 1 (req) 2 3 4 5 6
+ ... 7 8 9
+ Equals ${ret} a_1_n: 1 (req) 2 3 4 5 6 7 8 9
+
+Too Few Arguments With Varargs
+ [Documentation] FAIL Keyword 'A 1 N' expected at least 1 argument,
got 0.
+ A 1 N
+
+Correct Number Of Arguments With Defaults And Varargs
+ ${ret} = A 1 2 N Required arg
+ Equals ${ret} a_1_2_n: Required arg default \
+ ${ret} = A 1 2 N one (req) two three four
+ Equals ${ret} a_1_2_n: one (req) two three four
+
+Too Few Arguments With Defaults And Varargs
+ [Documentation] FAIL Keyword 'A 1 2 N' expected at least 1 argument,
got 0.
+ A 1 2 N
+
+Default With Variable
+ ${ret} = Default With Variable Given value
+ Should Be Equal ${ret} Given value
+ ${ret} = Default With Variable
+ Should Be Equal ${ret} Variable value
+
+Default With Automatic Variable
+ ${ret} = Default With None Variable
+ Should Be Equal ${ret} ${None}
+ ${ret} = Default With Number Variable
+ Should Be Equal ${ret} ${1000}
+
+Default With Extended Variable Syntax
+ ${ret} = Default With Extended Variable Syntax
+ Should Be Equal ${ret} VARIABLE VALUE
+
+*** Keywords ***
+A 0
+ [Return] a_0
+
+A 0 B
+ [Return] a_0_b
+
+A 1
+ [Arguments] ${arg}
+ [Return] a_1: ${arg}
+
+A 3
+ [Arguments] ${arg1} ${arg2} ${arg3}
+ [Return] a_3: ${arg1} ${arg2} ${arg3}
+
+A 0 1
+ [Arguments] ${arg}=default
+ [Return] a_0_1: ${arg}
+
+A 1 3
+ [Arguments] ${arg1} ${arg2}=default ${arg3}=default
+ [Return] a_1_3: ${arg1} ${arg2} ${arg3}
+
+A 0 N
+ [Arguments] @{args}
+ ${ret} = Catenate @{args}
+ [Return] a_0_n: ${ret}
+
+A 1 N
+ [Arguments] ${arg} @{args}
+ ${ret} = Catenate @{args}
+ [Return] a_1_n: ${arg} ${ret}
+
+A 1 2 N
+ [Arguments] ${arg1} ${arg2}=default @{args}
+ ${ret} = Catenate @{args}
+ [Return] a_1_2_n: ${arg1} ${arg2} ${ret}
+
+Default With Variable
+ [Arguments] ${arg}=${VAR}
+ [Return] ${arg}
+
+Default With None Variable
+ [Arguments] ${arg}=${None}
+ [Return] ${arg}
+
+Default With Number Variable
+ [Arguments] ${arg}=${1e3}
+ [Return] ${arg}
+
+Default With Extended Variable Syntax
+ [Arguments] ${arg}=${VAR.upper()}
+ [Return] ${arg}
+
--
To unsubscribe, reply using "remove me" as the subject.