Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: newnames
Fetching contributors…

Cannot retrieve contributors at this time

79 lines (68 sloc) 2.751 kb
;; test_exceptions.nu
;; tests for Nu exception handling.
;;
;; Copyright (c) 2007 Tim Burks, Neon Design Technology, Inc.
(class TestExceptions is NuTestCase
(- (id) testRangeException is
(set name nil)
(set before nil)
(set after nil)
(set z nil)
(try
(set before "this should always be set")
((NSArray array) objectAtIndex:1)
(set after "this should never be set")
(catch (exception) (set name (exception name)))
(finally (set z 99)))
(assert_equal "this should always be set" before)
(assert_equal nil after)
(assert_equal "NSRangeException" name)
(assert_equal 99 z))
(- (id) testUserRaisedException is
(set name nil)
(set before nil)
(set after nil)
(set z nil)
(try
(set before "this should always be set")
(((NSException alloc) initWithName:"UserException" reason:"" userInfo:nil) raise)
(set after "this should never be set")
(catch (exception) (set name (exception name)))
(finally (set z 99)))
(assert_equal "this should always be set" before)
(assert_equal nil after)
(assert_equal "UserException" name)
(assert_equal 99 z))
(if (eq (uname) "Darwin")
(- (id) testUserThrownException is
(set name nil)
(set before nil)
(set after nil)
(set z nil)
(try
(set before "this should always be set")
(throw ((NSException alloc) initWithName:"UserException" reason:"" userInfo:nil))
(set after "this should never be set")
(catch (exception) (set name (exception name)))
(finally (set z 99)))
(assert_equal "this should always be set" before)
(assert_equal nil after)
(assert_equal "UserException" name)
(assert_equal 99 z))
(- (id) testUserThrownObject is
(set object nil)
(set before nil)
(set after nil)
(set z nil)
(try
(set before "this should always be set")
(throw 99)
(catch (thrown) (set object thrown))
(finally (set z 99)))
(assert_equal "this should always be set" before)
(assert_equal nil after)
(assert_equal 99 object)
(assert_equal 99 z))
(- (id) testAssertThrown is
(assert_throws "UserException"
(do () (throw ((NSException alloc) initWithName:"UserException" reason:"" userInfo:nil)))))))
Jump to Line
Something went wrong with that request. Please try again.