diff options
| author | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2019-09-03 10:14:59 +0900 |
|---|---|---|
| committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2019-09-08 23:15:31 +0900 |
| commit | 5658ae8a0ad5d988765944b7e783b2bdc23a7f48 (patch) | |
| tree | 248c98abc9237379c917d94fec50d7f18ed366a6 /tests/networking.scm | |
| parent | ac73f504cf997559869f67a6c308cf3b19d253ea (diff) | |
services: ntp: Support different NTP server types and options.
* gnu/services/networking.scm (ntp-server-types): New enum.
(<ntp-server>): New record type.
(ntp-server->string): New procedure.
(%ntp-servers): Define in terms of <htp-server> records. Use the first
entrypoint server as a pool instead of a list of static servers. This is more
resilient since a new server of the pool can be interrogated on every
request. Add the 'iburst' options.
(ntp-configuration-servers): Define a custom accessor that warns but honors
the now deprecated server format.
(<ntp-configuration>): Use it.
(%openntpd-servers): New variable,
(<openntpd-configuration>): Use it, as a pool ('servers' field) instead of a
regular server.
* tests/networking.scm: New file.
* Makefile.am (SCM_TESTS): Register it.
* doc/guix.texi: Update documentation.
Diffstat (limited to 'tests/networking.scm')
| -rw-r--r-- | tests/networking.scm | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/networking.scm b/tests/networking.scm new file mode 100644 index 00000000000..001d7df74dd --- /dev/null +++ b/tests/networking.scm | |||
| @@ -0,0 +1,50 @@ | |||
| 1 | ;;; GNU Guix --- Functional package management for GNU | ||
| 2 | ;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> | ||
| 3 | ;;; | ||
| 4 | ;;; This file is part of GNU Guix. | ||
| 5 | ;;; | ||
| 6 | ;;; GNU Guix is free software; you can redistribute it and/or modify it | ||
| 7 | ;;; under the terms of the GNU General Public License as published by | ||
| 8 | ;;; the Free Software Foundation; either version 3 of the License, or (at | ||
| 9 | ;;; your option) any later version. | ||
| 10 | ;;; | ||
| 11 | ;;; GNU Guix is distributed in the hope that it will be useful, but | ||
| 12 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 14 | ;;; GNU General Public License for more details. | ||
| 15 | ;;; | ||
| 16 | ;;; You should have received a copy of the GNU General Public License | ||
| 17 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | ||
| 18 | |||
| 19 | (define-module (tests networking) | ||
| 20 | #:use-module (gnu services networking) | ||
| 21 | #:use-module (srfi srfi-64)) | ||
| 22 | |||
| 23 | ;;; Tests for the (gnu services networking) module. | ||
| 24 | |||
| 25 | (define ntp-server->string (@@ (gnu services networking) ntp-server->string)) | ||
| 26 | |||
| 27 | (define %ntp-server-sample | ||
| 28 | (ntp-server | ||
| 29 | (type 'server) | ||
| 30 | (address "some.ntp.server.org") | ||
| 31 | (options `(iburst (version 3) (maxpoll 16) prefer)))) | ||
| 32 | |||
| 33 | (test-begin "networking") | ||
| 34 | |||
| 35 | (test-equal "ntp-server->string" | ||
| 36 | (ntp-server->string %ntp-server-sample) | ||
| 37 | "server some.ntp.server.org iburst version 3 maxpoll 16 prefer") | ||
| 38 | |||
| 39 | (test-equal "ntp configuration servers deprecated form" | ||
| 40 | (ntp-configuration-servers | ||
| 41 | (ntp-configuration | ||
| 42 | (servers (list (ntp-server | ||
| 43 | (type 'server) | ||
| 44 | (address "example.pool.ntp.org") | ||
| 45 | (options '())))))) | ||
| 46 | (ntp-configuration-servers | ||
| 47 | (ntp-configuration | ||
| 48 | (servers (list "example.pool.ntp.org"))))) | ||
| 49 | |||
| 50 | (test-end "networking") | ||
