Skip to content

Instantly share code, notes, and snippets.

@willnet
Created December 21, 2016 02:51
Show Gist options
  • Save willnet/20141843b38443e5f67b823ff687f6d5 to your computer and use it in GitHub Desktop.
Save willnet/20141843b38443e5f67b823ff687f6d5 to your computer and use it in GitHub Desktop.
require 'test/unit'
class Person
include CheckedAttributes
attr_checked :age do |v|
v >= 18
end
end
class TestCheckedAttribute < Test::Unit::TestCase
def setup
@bob = Person.new
end
def test_accepts_valid_values
@bob.age = 20
assert_equal 20, @bob.age
end
def test_refuses_invalid_values
assert_raises RuntimeError, 'Invalid attribute' do
@bob.age = 17
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment