mockingbird
mockingbird copied to clipboard
Mocking functions defined in flet() or labels()
Mockingbird is a big help, but it only seems to allow me to mock a function that's been defined with defun(). Is it possible to mock a function that was defined (or overridden) in an flet() or labels()? When I try to do it, I see a message saying "does not have a defined original."
Thanks, Rick
----------- Stack trace follows -------------
UNDEFINED-STUB-FUNCTION: The defined stub function for TOURETZKY::INSTANT-LOSS-P does not have a defined original.
1: ((FLET "H0" :IN #:DROP-THRU-TAG-69) The defined stub function for TOURETZKY::INSTANT-LOSS-P does not have a defined original.)
2: (SB-KERNEL::%SIGNAL The defined stub function for TOURETZKY::INSTANT-LOSS-P does not have a defined original.)
3: (ERROR UNDEFINED-STUB-FUNCTION NAME INSTANT-LOSS-P)
4: (MOCKINGBIRD/SRC/FUNCTIONS:UNDEFINED-STUB-FUNCTION-ERROR INSTANT-LOSS-P)
5: (MOCKINGBIRD/SRC/FUNCTIONS::DEFINED-FNS-BOUND-P ((INSTANT-LOSS-P T)))
6: ((FLET "MAIN617" :IN #:DROP-THRU-TAG-69))
7: ((FLET "MAIN67" :IN #:DROP-THRU-TAG-69))
8: ((LAMBDA NIL :IN "/Users/rkawala/portacle/projects/touretzky/ch5-tests.lisp"))
9: (ROVE/CORE/SUITE/PACKAGE:RUN-SUITE #S(ROVE/CORE/SUITE/PACKAGE::SUITE :NAME TOURETZKY :SETUP NIL :TEARDOWN NIL :BEFORE-HOOKS NIL :AFTER-HOOKS NIL :TESTS (EX5.6 ARRAY-POSITION ARRAY-LENGTH EX2.32 EX2.31 EX2.29 SEC2.15 EX2.23 EX2.22 EX2.21 EX2.20 EX2.19 EX2.18 SEC2.11.1 EX2.17 SEC2.10.4 EX2.15 EX2.13 EX2.12 EX2.9 EX2.8 EX2.7)))
10: ((FLET "MAIN0" :IN ROVE/CORE/SUITE:RUN-SYSTEM-TESTS))
11: (ROVE/CORE/SUITE:RUN-SYSTEM-TESTS TOURETZKY)
12: (ROVE/MAIN:RUN TOURETZKY STYLE NIL ENV NIL)
13: (SB-INT:SIMPLE-EVAL-IN-LEXENV (RUN TOURETZKY) #<NULL-LEXENV>)
14: (SB-IMPL::SIMPLE-EVAL-PROGN-BODY ((RUN TOURETZKY) NIL) #<NULL-LEXENV>)
15: (SB-INT:SIMPLE-EVAL-IN-LEXENV (PROGN (RUN TOURETZKY) NIL) #<NULL-LEXENV>)