summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/guix-lint.sh20
1 files changed, 18 insertions, 2 deletions
diff --git a/tests/guix-lint.sh b/tests/guix-lint.sh
index 97c2ea83fef..4a77315b3a2 100644
--- a/tests/guix-lint.sh
+++ b/tests/guix-lint.sh
@@ -1,5 +1,6 @@
1# GNU Guix --- Functional package management for GNU 1# GNU Guix --- Functional package management for GNU
2# Copyright © 2014 Cyril Roelandt <tipecaml@gmail.com> 2# Copyright © 2014 Cyril Roelandt <tipecaml@gmail.com>
3# Copyright © 2026 Herman Rimm <herman@rimm.ee>
3# 4#
4# This file is part of GNU Guix. 5# This file is part of GNU Guix.
5# 6#
@@ -35,12 +36,20 @@ cat > "$module_dir/foo.scm"<<EOF
35 #:use-module (guix packages) 36 #:use-module (guix packages)
36 #:use-module (gnu packages base)) 37 #:use-module (gnu packages base))
37 38
39;; This definition uses (the line number of) the hello package location
40;; instead of generating a new one.
41(define-public hi hello)
42
38(define-public dummy 43(define-public dummy
39 (package (inherit hello) 44 (package (inherit hello)
40 (name "dummy") 45 (name "dummy")
41 (version "42") 46 (version "42")
42 (synopsis "dummy package") 47 (synopsis "dummy package")
43 (description "dummy package. Only used for testing purposes."))) 48 (description "dummy package. Only used for testing purposes.")))
49
50(define-public bar
51 (package (inherit dummy)
52 (name "bar")))
44EOF 53EOF
45 54
46GUIX_PACKAGE_PATH="$module_dir" 55GUIX_PACKAGE_PATH="$module_dir"
@@ -52,10 +61,11 @@ grep_warning ()
52 echo $res 61 echo $res
53} 62}
54 63
55# Three issues with the dummy package: 64# Issues with the dummy package:
56# 1) the synopsis starts with the package name; 65# 1) the synopsis starts with the package name;
57# 2) the synopsis starts with a lower-case letter; 66# 2) the synopsis starts with a lower-case letter;
58# 3) the description has a single space following the end-of-sentence period. 67# 3) the description has a single space following the end-of-sentence period;
68# 4) the alphabetically lesser bar package succeeds it.
59 69
60out=`guix lint -c synopsis,description dummy 2>&1` 70out=`guix lint -c synopsis,description dummy 2>&1`
61test `grep_warning "$out"` -eq 3 71test `grep_warning "$out"` -eq 3
@@ -69,6 +79,12 @@ test `grep_warning "$out"` -eq 1
69out=`guix lint -c description,synopsis dummy 2>&1` 79out=`guix lint -c description,synopsis dummy 2>&1`
70test `grep_warning "$out"` -eq 3 80test `grep_warning "$out"` -eq 3
71 81
82working_dir="$(pwd)"
83cd "$module_dir"
84out=`guix lint -c name -f foo.scm 2>&1`
85cd "$working_dir"
86test `echo "$out" | grep -E -c "breaks from alphabetical order"` -eq 1
87
72guix lint -c synopsis,invalid-checker dummy 2>&1 | \ 88guix lint -c synopsis,invalid-checker dummy 2>&1 | \
73 grep -q 'invalid-checker: invalid checker' 89 grep -q 'invalid-checker: invalid checker'
74 90