mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
utils: Add find-definition-insertion-location procedure.
* guix/utils.scm (find-definition-insertion-location): Add and export
procedure.
* tests/utils.scm ("find-definition-insertion-location"): Add test.
Change-Id: Ie17e1b4a94790f58518ce121411a38d357f49feb
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
committed by
Ludovic Courtès
parent
babd39e843
commit
50e514c1bc
@@ -288,6 +288,20 @@ skip these tests."
|
||||
`(define-public package-1 'package))
|
||||
(call-with-input-file temp-file get-string-all)))
|
||||
|
||||
(test-equal "find-definition-insertion-location"
|
||||
(list `((filename . ,temp-file) (line . 0) (column . 0))
|
||||
`((filename . ,temp-file) (line . 5) (column . 0))
|
||||
#f)
|
||||
(begin
|
||||
(call-with-output-file temp-file
|
||||
(lambda (port)
|
||||
(display "(define-public package-1\n 'foo)\n\n" port)
|
||||
(display "(define foo 'bar)\n\n" port)
|
||||
(display "(define-public package-2\n 'baz)\n" port)))
|
||||
(map (lambda (term)
|
||||
(find-definition-insertion-location temp-file term))
|
||||
(list 'package 'package-1 'package-2))))
|
||||
|
||||
(test-equal "string-distance"
|
||||
'(0 1 1 5 5)
|
||||
(list
|
||||
|
||||
Reference in New Issue
Block a user