summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-06-24 14:48:07 +0200
committerLudovic Courtès <ludo@gnu.org>2020-06-25 01:20:31 +0200
commita18d02def9862dfb9b7a5e3d5aa3b541b066d198 (patch)
tree9c9667226fd65c55f30dcb798590be7a894a0d4d
parent1ad332b367347bbd91f8a4527e271945f2c45ae6 (diff)
downloadguix-a18d02def9862dfb9b7a5e3d5aa3b541b066d198.tar.gz
channels: Fix test for introductory commit signer.
Until now the test would always succeed because it would return
'failed, which has truth value.  The exercise
'verify-introductory-commit', we need to add a second commit beyond the
introductory commit, which is what we do here.

* tests/channels.scm ("authenticate-channel, wrong first commit
signer"): Add a second commit and authenticate up to that one.  Change
'message?' to 'message-condition?'.
-rw-r--r--tests/channels.scm11
1 files changed, 8 insertions, 3 deletions
diff --git a/tests/channels.scm b/tests/channels.scm
index 5f13a48ec1..3a2c1d429b 100644
--- a/tests/channels.scm
+++ b/tests/channels.scm
@@ -403,7 +403,8 @@
                     '(#f "tag-for-first-news-entry")))))))
 
 (unless (gpg+git-available?) (test-skip 1))
-(test-assert "authenticate-channel, wrong first commit signer"
+(test-equal "authenticate-channel, wrong first commit signer"
+  #t
   (with-fresh-gnupg-setup (list %ed25519-public-key-file
                                 %ed25519-secret-key-file
                                 %ed25519bis-public-key-file
@@ -422,9 +423,13 @@
           (add "signer.key" ,(call-with-input-file %ed25519-public-key-file
                                get-string-all))
           (commit "first commit"
+                  (signer ,(key-fingerprint %ed25519-public-key-file)))
+          (add "random" ,(random-text))
+          (commit "second commit"
                   (signer ,(key-fingerprint %ed25519-public-key-file))))
       (with-repository directory repository
         (let* ((commit1 (find-commit repository "first"))
+               (commit2 (find-commit repository "second"))
                (intro   ((@@ (guix channels) make-channel-introduction)
                          (commit-id-string commit1)
                          (openpgp-public-key-fingerprint
@@ -434,11 +439,11 @@
                (channel (channel (name 'example)
                                  (url (string-append "file://" directory))
                                  (introduction intro))))
-          (guard (c ((message? c)
+          (guard (c ((message-condition? c)
                      (->bool (string-contains (condition-message c)
                                               "initial commit"))))
             (authenticate-channel channel directory
-                                  (commit-id-string commit1)
+                                  (commit-id-string commit2)
                                   #:keyring-reference-prefix "")
             'failed))))))