diff options
Diffstat (limited to 'tests/machine/hetzner/http.scm')
| -rw-r--r-- | tests/machine/hetzner/http.scm | 35 |
1 files changed, 20 insertions, 15 deletions
diff --git a/tests/machine/hetzner/http.scm b/tests/machine/hetzner/http.scm index bd516db023b..2e7d140c7f9 100644 --- a/tests/machine/hetzner/http.scm +++ b/tests/machine/hetzner/http.scm | |||
| @@ -24,7 +24,8 @@ | |||
| 24 | #:use-module (srfi srfi-1) | 24 | #:use-module (srfi srfi-1) |
| 25 | #:use-module (srfi srfi-34) | 25 | #:use-module (srfi srfi-34) |
| 26 | #:use-module (srfi srfi-64) | 26 | #:use-module (srfi srfi-64) |
| 27 | #:use-module (ssh key)) | 27 | #:use-module (ssh key) |
| 28 | #:use-module (ice-9 match)) | ||
| 28 | 29 | ||
| 29 | ;; Unit and integration tests the (gnu machine hetzner http) module. | 30 | ;; Unit and integration tests the (gnu machine hetzner http) module. |
| 30 | 31 | ||
| @@ -371,20 +372,24 @@ | |||
| 371 | server-x86 | 372 | server-x86 |
| 372 | (mock ((gnu machine hetzner http) hetzner-api-request-send | 373 | (mock ((gnu machine hetzner http) hetzner-api-request-send |
| 373 | (lambda* (request #:key expected) | 374 | (lambda* (request #:key expected) |
| 374 | (cond | 375 | (match (list (hetzner-api-request-method request) |
| 375 | ((equal? "https://api.hetzner.cloud/v1/servers" | 376 | (hetzner-api-request-url request)) |
| 376 | (hetzner-api-request-url request)) | 377 | (('GET "https://api.hetzner.cloud/v1/images") |
| 377 | (assert (equal? 'POST (hetzner-api-request-method request))) | 378 | (hetzner-api-response |
| 378 | (hetzner-api-response | 379 | (body `(("images" |
| 379 | (body `(("action" . ,action-create-server-alist) | 380 | . #((("id" . 123) |
| 380 | ("server" . ,server-x86-alist))))) | 381 | ("created_from" . null) |
| 381 | ((equal? "https://api.hetzner.cloud/v1/actions" | 382 | ("protection" . (("delete" . #t))) |
| 382 | (hetzner-api-request-url request)) | 383 | ("os_flavor" . "debian")))))))) |
| 383 | (assert (equal? 'GET (hetzner-api-request-method request))) | 384 | (('POST "https://api.hetzner.cloud/v1/servers") |
| 384 | (hetzner-api-response | 385 | (hetzner-api-response |
| 385 | (body `(("actions" . ,(vector (cons `("status" . "success") | 386 | (body `(("action" . ,action-create-server-alist) |
| 386 | action-create-server-alist))) | 387 | ("server" . ,server-x86-alist))))) |
| 387 | ("meta" . ,meta-page-alist)))))))) | 388 | (('GET "https://api.hetzner.cloud/v1/actions") |
| 389 | (hetzner-api-response | ||
| 390 | (body `(("actions" . ,(vector (cons `("status" . "success") | ||
| 391 | action-create-server-alist))) | ||
| 392 | ("meta" . ,meta-page-alist)))))))) | ||
| 388 | (hetzner-api-server-create (hetzner-api) %server-name | 393 | (hetzner-api-server-create (hetzner-api) %server-name |
| 389 | #:ssh-keys (list ssh-key-root)))) | 394 | #:ssh-keys (list ssh-key-root)))) |
| 390 | 395 | ||
