/test/language/unclassified/test_standard_clone.e

http://github.com/tybor/Liberty · Specman e · 66 lines · 36 code · 9 blank · 21 comment · 0 complexity · 91371859ad7f2470ee897ba34f423640 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_STANDARD_CLONE
  5. insert
  6. EIFFELTEST_TOOLS
  7. create {}
  8. make
  9. feature {ANY}
  10. s1, s2: STRING
  11. a1, a2: ANIMAL
  12. ai1, ai2: ARRAY[INTEGER]
  13. p1, p2: LIB_TEST_POINT
  14. t1, t2: TRIANGLE
  15. make
  16. do
  17. s1 := "foo"
  18. s2 := s1.standard_twin
  19. assert(s1 /= s2)
  20. assert(s1.standard_is_equal(s2))
  21. assert(s1.is_equal(s2))
  22. create {CAT} a1
  23. a2 := a1.standard_twin
  24. assert(a1 /= a2)
  25. assert(a1.is_equal(a2))
  26. assert(a1.standard_is_equal(a2))
  27. ai1 := {ARRAY[INTEGER] 1, << 1, 2, 3 >> }
  28. ai2 := ai1.standard_twin
  29. assert(ai1.is_equal(ai2))
  30. assert(ai1.standard_is_equal(ai2))
  31. assert(ai1 /= ai2)
  32. create p1.make(1, 2)
  33. p2 := p1.standard_twin
  34. assert(p1 /= p2)
  35. assert(p1.x = p2.x)
  36. assert(p1.y = p2.y)
  37. assert(p1.same_dynamic_type(p2))
  38. end
  39. end -- class TEST_STANDARD_CLONE
  40. --
  41. -- ------------------------------------------------------------------------------------------------------------------------------
  42. -- Copyright notice below. Please read.
  43. --
  44. -- SmartEiffel is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License,
  45. -- as published by the Free Software Foundation; either version 2, or (at your option) any later version.
  46. -- SmartEiffel is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty
  47. -- of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have
  48. -- received a copy of the GNU General Public License along with SmartEiffel; see the file COPYING. If not, write to the Free
  49. -- Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
  50. --
  51. -- Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P. - University of Nancy 1 - FRANCE
  52. -- Copyright(C) 2003-2006: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne - University of Nancy 2 - FRANCE
  53. --
  54. -- Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, Frederic MERIZEN
  55. --
  56. -- http://SmartEiffel.loria.fr - SmartEiffel@loria.fr
  57. -- ------------------------------------------------------------------------------------------------------------------------------