Changeset 181
- Timestamp:
- 11/17/04 21:49:51 (4 years ago)
- Location:
- branches/simplest-thing
- Files:
-
- 2 modified
-
lib/fm/verb.rb (modified) (1 diff)
-
tests/verb.tests.rb (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/simplest-thing/lib/fm/verb.rb
r180 r181 39 39 40 40 41 ################################################################# 42 ### I N S T A N C E M E T H O D S 43 ################################################################# 44 45 ### Event interface: "run" the verb, generating the event/s necessary to 46 ### express the action in the game world. The given +instigator+ and 47 ### +origin+ will be used when building event/s. See FaerieMUD::Event::new 48 ### for definitions 49 def happen( instigator, origin ) 50 raise NotImplementedError, 51 "Required method #happen not implemented in %s" % 52 [self.class.name] 53 end 54 55 41 56 end # class FaerieMUD::Verb 42 57 -
branches/simplest-thing/tests/verb.tests.rb
r180 r181 24 24 class FaerieMUD::VerbTestCase < FaerieMUD::TestCase 25 25 26 class TestInstigator < FaerieMUD::GameObject; end 27 class TestOrigin < FaerieMUD::Locus; end 28 29 def setup 30 @instigator = TestInstigator::new 31 @origin = TestOrigin::new 32 end 33 26 34 27 35 ################################################################# … … 41 49 } 42 50 assert_instance_of FaerieMUD::Verb, rval 51 end 43 52 53 54 ### Event-generation interface 55 def test_50_happen 56 printTestHeader "FaerieMUD::Verb: Event-generation interface" 57 rval = nil 58 59 derivClass = Class::new( FaerieMUD::Verb ) 60 derivObj = derivClass::new 61 62 # Should require an instigator and an origin 63 assert_raises( ArgumentError ) { derivObj.happen } 64 assert_raises( ArgumentError ) { derivObj.happen(@instigator) } 65 66 # Derivative classes should override #happen 67 assert_raises( NotImplementedError ) { 68 derivObj.happen( @instigator, @origin ) 69 } 44 70 end 45 46 71 end 47 72
