Revision: 2838
Author: KariHusa
Date: Tue Apr  6 03:35:22 2010
Log: Initial tests for kwarg support, issue 215.
http://code.google.com/p/robotframework/source/detail?r=2838

Added:
 /trunk/atest/robot/core/keywords/kwargs.txt
 /trunk/atest/testdata/core/keywords/kwargs.txt
 /trunk/atest/testresources/testlibs/KwargsLibrary.py

=======================================
--- /dev/null
+++ /trunk/atest/robot/core/keywords/kwargs.txt Tue Apr  6 03:35:22 2010
@@ -0,0 +1,22 @@
+*** Settings ***
+Suite Setup     Run Tests  ${EMPTY}  core/keywords/kwargs.txt
+Force Tags      regression  pybot  jybot
+Resource        ../../../resources/resource.txt
+
+*** Test Cases ***
+
+Simple Kwarg
+    Check Test Case  ${TESTNAME}
+
+Substitution Starts From The End
+    Check Test Case  ${TESTNAME}
+
+Equals Sign In Kwarg Value
+    Check Test Case  ${TESTNAME}
+
+Using non-existing kwarg
+    Check Test Case  ${TESTNAME}
+
+Escaping Kwarg
+    Check Test Case  ${TESTNAME}
+
=======================================
--- /dev/null
+++ /trunk/atest/testdata/core/keywords/kwargs.txt      Tue Apr  6 03:35:22 2010
@@ -0,0 +1,39 @@
+*** Settings ***
+Library  KwargsLibrary
+
+*** Test Cases ***
+Simple Kwarg
+    ${ret}=  one kw arg  foo=bar
+    should be equal  ${ret}  foo=bar
+    ${ret}=  Two Kw Args  fst=bar  snd=quux
+    Should Be Equal  ${ret}  fst=bar, snd=quux
+    ${ret}=  Two Kw Args  snd=quux  fst=bar
+    Should Be Equal  ${ret}  fst=bar, snd=quux
+
+Substitution Starts From The End
+    ${ret}=  Four Kw Args  a=foo  bar  d=quux
+    Should Be Equal  ${ret}  a=a=foo, b=bar, c=None, d=quux
+
+Equals Sign In Kwarg Value
+    ${ret}=  one kw arg  foo=bar=quux
+    should be equal  ${ret}  foo=bar=quux
+
+Using non-existing kwarg
+    ${ret}=  one kw arg  keijo=not kwarg
+    should be equal  ${ret}  foo=keijo=not kwarg
+
+Escaping Kwarg
+    ${ret}=  one kw arg  foo=bar\\=quux
+    should be equal  ${ret}  foo=bar\\=quux
+    ${ret}=  one kw arg  foo\\=bar
+    should be equal  ${ret}  foo=foo=bar
+
+Kwargs in User Keyword
+    ${ret}=  Uk With Kwargs  ukfoo=foo  ukbar=Bar
+    Should Be Equal  ${ret}  ukfoo=foo, ukbar=Bar
+
+*** Keywords ***
+Uk With Kwargs
+    [arguments]  ${ukfoo}=  ${ukbar}=
+    [return]  ukfoo=${ukfoo}, ukbar=${ukbar}
+
=======================================
--- /dev/null
+++ /trunk/atest/testresources/testlibs/KwargsLibrary.py Tue Apr 6 03:35:22 2010
@@ -0,0 +1,11 @@
+class KwargsLibrary(object):
+
+    def onekwarg(self, foo=None):
+        return 'foo=%s' % foo
+
+    def twokwargs(self, fst=None, snd=None):
+        return 'fst=%s, snd=%s' % (fst, snd)
+
+    def fourkwargs(self, a=None, b=None, c=None, d=None):
+        return 'a=%s, b=%s, c=%s, d=%s' % (a, b, c, d)
+

Reply via email to