/test/language/exceptions/test_exceptions05.e

http://github.com/tybor/Liberty · Specman e · 65 lines · 37 code · 7 blank · 21 comment · 1 complexity · ecf4041450be4821dc2b019330bbb018 MD5 · raw file

  1. -- This file is part of SmartEiffel The GNU Eiffel Compiler Tools and Libraries.
  2. -- See the Copyright notice at the end of this file.
  3. --
  4. class TEST_EXCEPTIONS05
  5. insert
  6. EXCEPTIONS
  7. create {}
  8. make
  9. feature {ANY}
  10. loop_invariant: BOOLEAN
  11. make
  12. local
  13. i: INTEGER
  14. do
  15. from
  16. i := 2
  17. invariant
  18. loop_invariant
  19. until
  20. i = 0
  21. loop
  22. i := i - 1
  23. end
  24. rescue
  25. is_true(Loop_invariant = exception)
  26. loop_invariant := True
  27. retry
  28. end
  29. feature {}
  30. is_true (b: BOOLEAN)
  31. do
  32. cpt := cpt + 1
  33. if not b then
  34. std_output.put_string("TEST_EXCEPTION05: ERROR Test # ")
  35. std_output.put_integer(cpt)
  36. std_output.put_string("%N")
  37. end
  38. end
  39. cpt: INTEGER
  40. end -- class TEST_EXCEPTIONS05
  41. --
  42. -- ------------------------------------------------------------------------------------------------------------------------------
  43. -- Copyright notice below. Please read.
  44. --
  45. -- SmartEiffel is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License,
  46. -- as published by the Free Software Foundation; either version 2, or (at your option) any later version.
  47. -- SmartEiffel is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty
  48. -- of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have
  49. -- received a copy of the GNU General Public License along with SmartEiffel; see the file COPYING. If not, write to the Free
  50. -- Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
  51. --
  52. -- Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P. - University of Nancy 1 - FRANCE
  53. -- Copyright(C) 2003-2006: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne - University of Nancy 2 - FRANCE
  54. --
  55. -- Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, Frederic MERIZEN
  56. --
  57. -- http://SmartEiffel.loria.fr - SmartEiffel@loria.fr
  58. -- ------------------------------------------------------------------------------------------------------------------------------