/vendor/gems/facets-2.4.5/test/core/class/test_cattr.rb

https://bitbucket.org/mediashelf/fedora-migrator · Ruby · 47 lines · 40 code · 7 blank · 0 comment · 0 complexity · f4d0ced15650e26b4ef046b32e7e435b MD5 · raw file

  1. require 'facets/class/cattr.rb'
  2. require 'test/unit'
  3. class TCModule < Test::Unit::TestCase
  4. class MockObject
  5. def initialize
  6. @@a = 10
  7. end
  8. def b ; @@b ; end
  9. end
  10. def test_cattr
  11. assert_nothing_raised {
  12. MockObject.class_eval { cattr :a }
  13. }
  14. t = MockObject.new
  15. assert_equal( 10, t.a )
  16. end
  17. def test_cattr_reader
  18. assert_nothing_raised {
  19. MockObject.class_eval { cattr_reader :a }
  20. }
  21. t = MockObject.new
  22. assert_equal( 10, t.a )
  23. end
  24. def test_cattr_writer
  25. assert_nothing_raised {
  26. MockObject.class_eval { cattr_writer :b }
  27. }
  28. t = MockObject.new
  29. t.b = 5
  30. assert_equal( 5, t.b )
  31. end
  32. def test_cattr_accessor
  33. assert_nothing_raised {
  34. MockObject.class_eval { cattr_accessor :c }
  35. }
  36. t = MockObject.new
  37. t.c = 50
  38. assert_equal( 50, t.c )
  39. end
  40. end