aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Simon South <simon@simonsouth.net>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (tests services file-sharing)
  #:use-module (gnu services file-sharing)
  #:use-module (srfi srfi-64))

;;; Tests for the (gnu services file-sharing) module.

(test-begin "file-sharing")


;;;
;;; Transmission Daemon.
;;;

(define %transmission-salt-length 8)

(define (valid-transmission-salt? salt)
    (and (string? salt)
         (eqv? (string-length salt) %transmission-salt-length)))

(test-assert "transmission-random-salt"
  (valid-transmission-salt? (transmission-random-salt)))

(test-equal "transmission-password-hash, typical values"
  "{ef6fba106cdef3aac64d1410090cae353cbecde53ceVVQO2"
  (transmission-password-hash "transmission" "3ceVVQO2"))

(test-equal "transmission-password-hash, empty password"
  "{820f816515d8969d058d07a1de018650619ee7ffCp.I5SWg"
  (transmission-password-hash "" "Cp.I5SWg"))

(test-error "transmission-password-hash, salt value too short"
            (transmission-password-hash
             "transmission"
             (make-string (- %transmission-salt-length 1) #\a)))

(test-error "transmission-password-hash, salt value too long"
            (transmission-password-hash
             "transmission"
             (make-string (+ %transmission-salt-length 1) #\a)))

(test-end "file-sharing")
xref translation....Julien Lepiller 2021-06-23build: Makefile splits Scheme compilation in four steps....Ludovic Courtès 2021-06-18build: Remove Guile 2.2 workaround....Ludovic Courtès 2021-05-11Merge branch 'version-1.3.0'Maxim Cournoyer 2021-05-10maint: update-NEWS: Sort packages prior writing to the data file....Maxim Cournoyer 2021-04-29download: Use Disarchive as a last resort....Timothy Sample 2021-04-25import: Remove Nix importer....Ludovic Courtès 2021-04-23build-aux: Relax the regexp used to match NEWS sections....Maxim Cournoyer 2021-04-20import: Remove Nix importer....Ludovic Courtès 2021-04-01build-self: Take care of the spinner in the parent process....Ludovic Courtès 2021-04-01build-self: Forward sub-process build output to (current-build-output-port)....Ludovic Courtès 2021-03-19build-self: Silent Guile warnings while computing the derivation....Ludovic Courtès 2021-03-10ci: Remove hydra support....Mathieu Othacehe 2021-02-04channels: Record 'guix' channel metadata in (guix config)....Ludovic Courtès 2021-02-02build: Add a --show-duration option to the SCM test-driver....Maxim Cournoyer 2021-02-01guix package: Add '--export-channels'....Ludovic Courtès 2021-01-31build: test-driver.scm: Allow running as a standalone script....Maxim Cournoyer 2021-01-31build: test-driver.scm: Add a new '--errors-only' option....Maxim Cournoyer 2021-01-31build: test-driver.scm: Add test cases filtering options....Maxim Cournoyer 2021-01-31build: test-driver.scm: Enable colored test results by default....Maxim Cournoyer 2021-01-31build: test-driver.scm: Make output redirection optional....Maxim Cournoyer 2020-11-12maint: update-guix-package: Optionally add sources to store....Maxim Cournoyer 2020-10-25maint: update-guix-package: Include the git.sv.gnu.org alias....Maxim Cournoyer 2020-10-19maint: update-guix-package: Prevent accidentally breaking guix pull....Maxim Cournoyer 2020-10-04cuirass: Add hurd-manifest....Jan (janneke) Nieuwenhuizen 2020-10-01ci: Add log and outputs keys....Mathieu Othacehe 2020-10-01ci: Add nix-name and system keys....Mathieu Othacehe 2020-08-29build: Remove references to the 'nix-hash' program....Ludovic Courtès 2020-08-24Use "guile-zlib" and "guile-lzlib" instead of (guix config)....Mathieu Othacehe 2020-07-11maint: Remove 'build-aux/git-authenticate.scm'....Ludovic Courtès 2020-06-16maint: "make authenticate" behaves like 'guix pull' by default....Ludovic Courtès 2020-06-16git-authenticate: Cache takes a key parameter....Ludovic Courtès 2020-06-05Add (guix git-authenticate)....Ludovic Courtès 2020-06-02git-authenticate: Rename '%committers' to '%historical-committers'....Ludovic Courtès 2020-05-28update-guix-package: Use 'origin-hash'....Vincent Legoll 2020-05-22maint: Add "make check-channel-news"....Ludovic Courtès 2020-05-08Merge branch 'core-updates'Marius Bakke 2020-05-07git-authenticate: Use the 'origin/keyring' branch by default....Ludovic Courtès