[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/assess 29e80b7540 65/95: Ensure capture function return
From: |
ELPA Syncer |
Subject: |
[elpa] externals/assess 29e80b7540 65/95: Ensure capture function returns correct value |
Date: |
Tue, 19 Jul 2022 15:57:34 -0400 (EDT) |
branch: externals/assess
commit 29e80b7540edb1a570b43a3b39b3e0643a9d56b5
Author: Phillip Lord <phillip.lord@russet.org.uk>
Commit: Phillip Lord <phillip.lord@russet.org.uk>
Ensure capture function returns correct value
Previously, assess-call-capture was forcing the return of internal data
structures from the captured function. It now does not affect the return
value at all.
---
assess-call.el | 3 ++-
test/assess-call-test.el | 18 ++++++++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/assess-call.el b/assess-call.el
index dc30978852..78d61740a7 100644
--- a/assess-call.el
+++ b/assess-call.el
@@ -63,7 +63,8 @@ values of FN are returned instead."
(let ((rtn (apply fn args)))
(setq capture-store
(cons (cons args rtn)
- capture-store)))))))
+ capture-store))
+ rtn)))))
(defun assess-call-capture (sym-fn fn)
"Trace all calls to SYM-FN when FN is called with no args.
diff --git a/test/assess-call-test.el b/test/assess-call-test.el
index 46e9cf953e..66da692039 100644
--- a/test/assess-call-test.el
+++ b/test/assess-call-test.el
@@ -137,5 +137,23 @@
(assess-deliberate-error
(not assess-call-test-hook)))))
+
+(ert-deftest assess-call-return-value ()
+ "Test that return of the instrumented form is not affected.
+
+The form that we are capturing should return the same value that
+it would were it not instrumented, which was not true with
+earlier versions of this library."
+ (should
+ (= 4
+ (let ((rtn-from-form))
+ (assess-call-capture
+ #'assess-call-capture-multiply
+ (lambda ()
+ (setq rtn-from-form
+ (assess-call-capture-multiply 2 2))))
+ rtn-from-form))))
+
+
(provide 'assess-call-test)
;;; assess-call-test ends here
- [elpa] externals/assess 979c26b3b7 73/95: Add assess-with-filesystem, (continued)
- [elpa] externals/assess 979c26b3b7 73/95: Add assess-with-filesystem, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 190eab03d7 74/95: Fix debug declation in -with-temp-buffers, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 1c34f2bc14 79/95: Fix error symbol declaration, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 1b1ac33709 87/95: Fix travis build, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 29950d8964 90/95: Merge pull request #18 from DamienCassou/typos, ELPA Syncer, 2022/07/19
- [elpa] externals/assess cb2c0361a7 91/95: Add expected failure, ELPA Syncer, 2022/07/19
- [elpa] externals/assess be539d6447 92/95: Update test framework, drop early 24, ELPA Syncer, 2022/07/19
- [elpa] externals/assess cd394f309f 49/95: Add documentation for assess-call, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 38084cff73 60/95: v0.3 release, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 4a5eee8ba9 62/95: Fix version number, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 29e80b7540 65/95: Ensure capture function returns correct value,
ELPA Syncer <=
- [elpa] externals/assess 9374be7b98 72/95: Add initial lentic support to assess-discover, ELPA Syncer, 2022/07/19
- [elpa] externals/assess e57945bb84 75/95: Merge pull request #9 from DamienCassou/typos, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 63e934c6f2 76/95: State that text properties are ignored, ELPA Syncer, 2022/07/19
- [elpa] externals/assess deb6e4cb23 80/95: Remove direct dash dependency, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 1ef6760358 82/95: Add Emacs24.1 to multi-test target, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 83fddff944 83/95: Update README, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 87118057b3 84/95: v0.4 Release, ELPA Syncer, 2022/07/19
- [elpa] externals/assess de3fa56c9b 89/95: Fix typos, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 7a83677f3e 93/95: Update travis recipe, ELPA Syncer, 2022/07/19
- [elpa] externals/assess 44083d94fe 95/95: Minor adjustments while preparing for GNU ELPA, ELPA Syncer, 2022/07/19