D
Daniel Berger
Hi all,
Ruby 1.8.x
I've got a few tests where I'm looking for expected errors. These are
various system call errors. The problem is that the exact Errno is
different from platform to platform, so I end up writing stuff like
this:
assert_raises(Errno::EACCES, Errno::ENOTEMPTY){ Dir.unlink('some_dir')
}
This isn't very robust, since a new platform might fail with a
different kind of Errno. What I would like is a way to have this test
succeed:
assert_raises(SystemCallError){ Dir.unlink('some_dir') }
The problem is that assert_raises looks for a specific error class. Is
there a way to tell TestUnit to expect any error that's a subclass of
SystemCallError?
Thanks,
Dan
PS - I see from the documentation that assert_raise is deprecated in
1.9. What's replacing it?
Ruby 1.8.x
I've got a few tests where I'm looking for expected errors. These are
various system call errors. The problem is that the exact Errno is
different from platform to platform, so I end up writing stuff like
this:
assert_raises(Errno::EACCES, Errno::ENOTEMPTY){ Dir.unlink('some_dir')
}
This isn't very robust, since a new platform might fail with a
different kind of Errno. What I would like is a way to have this test
succeed:
assert_raises(SystemCallError){ Dir.unlink('some_dir') }
The problem is that assert_raises looks for a specific error class. Is
there a way to tell TestUnit to expect any error that's a subclass of
SystemCallError?
Thanks,
Dan
PS - I see from the documentation that assert_raise is deprecated in
1.9. What's replacing it?