/trunk/Examples/test-suite/python/kwargs_feature_runme.py

# · Python · 67 lines · 37 code · 26 blank · 4 comment · 15 complexity · 15dd4deff2a2ac4d8743e0a644dc0b92 MD5 · raw file

  1. from kwargs_feature import *
  2. class MyFoo(Foo):
  3. def __init__(self, a , b = 0):
  4. Foo.__init__(self, a, b)
  5. # Simple class
  6. f1 = MyFoo(2)
  7. f = Foo(b=2,a=1)
  8. if f.foo(b=1,a=2) != 3:
  9. raise RuntimeError
  10. if Foo_statfoo(b=2) != 3:
  11. raise RuntimeError
  12. if f.efoo(b=2) != 3:
  13. raise RuntimeError
  14. if Foo_sfoo(b=2) != 3:
  15. raise RuntimeError
  16. # Templated class
  17. b = BarInt(b=2,a=1)
  18. if b.bar(b=1,a=2) != 3:
  19. raise RuntimeError
  20. if BarInt_statbar(b=2) != 3:
  21. raise RuntimeError
  22. if b.ebar(b=2) != 3:
  23. raise RuntimeError
  24. if BarInt_sbar(b=2) != 3:
  25. raise RuntimeError
  26. # Functions
  27. if templatedfunction(b=2) != 3:
  28. raise RuntimeError
  29. if foo(a=1,b=2) != 3:
  30. raise RuntimeError
  31. if foo(b=2) != 3:
  32. raise RuntimeError
  33. #Funtions with keywords
  34. if foo_kw(_from=2) != 4:
  35. raise RuntimeError
  36. if foo_nu(_from=2, arg2=3) != 2:
  37. raise RuntimeError
  38. if foo_mm(min=2) != 4:
  39. raise RuntimeError
  40. if foo_mm(max=3) != 4:
  41. raise RuntimeError