diff options
author | zimoun <zimon.toutoune@gmail.com> | 2021-01-19 22:28:08 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2021-02-03 12:41:28 +0100 |
commit | 9505b54a4f9f0265c9d8be53763f0c59d6f62a44 (patch) | |
tree | ac6e41db124f60baa4ddae929f407cd343fdb8a8 /tests | |
parent | e55f1ac7773841838f82ac10f3bf8cde514ca4dd (diff) | |
download | guix-9505b54a4f9f0265c9d8be53763f0c59d6f62a44.tar guix-9505b54a4f9f0265c9d8be53763f0c59d6f62a44.tar.gz |
utils: Add string distance.
* guix/utils.scm (string-distance): New procedure.
(string-closest): New procedure.
* tests/utils.scm ("string-distance", "string-closest"): New tests.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/utils.scm | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/utils.scm b/tests/utils.scm index 62ec7e8b4c..7fcbb25552 100644 --- a/tests/utils.scm +++ b/tests/utils.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> +;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -271,6 +272,23 @@ skip these tests." string-reverse) (call-with-input-file temp-file get-string-all))) +(test-equal "string-distance" + '(0 1 1 5 5) + (list + (string-distance "hello" "hello") + (string-distance "hello" "helo") + (string-distance "helo" "hello") + (string-distance "" "hello") + (string-distance "hello" ""))) + +(test-equal "string-closest" + '("hello" "hello" "helo" #f) + (list + (string-closest "hello" '("hello")) + (string-closest "hello" '("helo" "hello" "halo")) + (string-closest "hello" '("kikoo" "helo" "hihihi" "halo")) + (string-closest "hello" '("aaaaa" "12345" "hellohello" "h")))) + (test-end) (false-if-exception (delete-file temp-file)) |