summaryrefslogtreecommitdiff
path: root/tests/lint.scm
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lint.scm')
-rw-r--r--tests/lint.scm48
1 files changed, 40 insertions, 8 deletions
diff --git a/tests/lint.scm b/tests/lint.scm
index e96265a55a..76c2a70b3a 100644
--- a/tests/lint.scm
+++ b/tests/lint.scm
@@ -107,7 +107,7 @@
"Texinfo markup in description is invalid"
(single-lint-warning-message
(check-description-style
- (dummy-package "x" (description "f{oo}b@r")))))
+ (dummy-package "x" (description (identity "f{oo}b@r"))))))
(test-equal "description: does not start with an upper-case letter"
"description should start with an upper-case letter or digit"
@@ -177,6 +177,20 @@
(description "Whitespace. "))))
(check-description-style pkg))))
+(test-equal "description: pluralized 'This package'"
+ "description contains typo 'This packages', should be 'This package'"
+ (single-lint-warning-message
+ (let ((pkg (dummy-package "x"
+ (description "This packages is a typo."))))
+ (check-description-style pkg))))
+
+(test-equal "description: grammar 'allows to'"
+ "description contains typo 'allows to'"
+ (single-lint-warning-message
+ (let ((pkg (dummy-package "x"
+ (description "This package allows to do stuff."))))
+ (check-description-style pkg))))
+
(test-equal "synopsis: not a string"
"invalid synopsis: #f"
(single-lint-warning-message
@@ -195,7 +209,7 @@
"Texinfo markup in synopsis is invalid"
(single-lint-warning-message
(check-synopsis-style
- (dummy-package "x" (synopsis "Bad $@ texinfo")))))
+ (dummy-package "x" (synopsis (identity "Bad $@ texinfo"))))))
(test-equal "synopsis: does not start with an upper-case letter"
"synopsis should start with an upper-case letter or digit"
@@ -366,6 +380,20 @@
`(("python-setuptools" ,python-setuptools))))))
(check-inputs-should-not-be-an-input-at-all pkg))))
+(test-assert "input labels: no warnings"
+ (let ((pkg (dummy-package "x"
+ (inputs `(("glib" ,glib)
+ ("pkg-config" ,pkg-config))))))
+ (null? (check-input-labels pkg))))
+
+(test-equal "input labels: one warning"
+ "label 'pkgkonfig' does not match package name 'pkg-config'"
+ (single-lint-warning-message
+ (let ((pkg (dummy-package "x"
+ (inputs `(("glib" ,glib)
+ ("pkgkonfig" ,pkg-config))))))
+ (check-input-labels pkg))))
+
(test-equal "explicit #:sh argument to 'wrap-program' is acceptable"
'()
(let* ((phases
@@ -492,17 +520,17 @@
(file-name "x.patch")))))))))
(check-patch-file-names pkg)))
-(test-equal "patches: file name too long"
+(test-equal "patches: file name too long, which may break 'make dist'"
(string-append "x-"
- (make-string 100 #\a)
- ".patch: file name is too long")
+ (make-string 152 #\a)
+ ".patch: file name is too long, which may break 'make dist'")
(single-lint-warning-message
(let ((pkg (dummy-package
"x"
(source
(dummy-origin
(patches (list (string-append "x-"
- (make-string 100 #\a)
+ (make-string 152 #\a)
".patch"))))))))
(check-patch-file-names pkg))))
@@ -572,7 +600,7 @@
(single-lint-warning-message (check-patch-headers pkg)))))
(test-equal "derivation: invalid arguments"
- "failed to create x86_64-linux derivation: (wrong-type-arg \"map\" \"Wrong type argument: ~S\" (invalid-module) ())"
+ "failed to create x86_64-linux derivation: (match-error \"match\" \"no matching pattern\" invalid-module)"
(match (let ((pkg (dummy-package "x"
(arguments
'(#:imported-modules (invalid-module))))))
@@ -1319,7 +1347,11 @@
(let* ((stackage (string-append "{ \"packages\": [{"
" \"name\":\"pandoc\","
" \"synopsis\":\"synopsis\","
- " \"version\":\"1.0\" }]}"))
+ " \"version\":\"1.0\" }],"
+ " \"snapshot\": {"
+ " \"ghc\": \"8.6.5\","
+ " \"name\": \"lts-14.27\""
+ " }}"))
(packages (map (lambda (version)
(dummy-package
"ghc-pandoc"