diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/services.scm | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/tests/services.scm b/tests/services.scm index e64b3e8de8a..8e35758209c 100644 --- a/tests/services.scm +++ b/tests/services.scm | |||
| @@ -30,8 +30,10 @@ | |||
| 30 | 30 | ||
| 31 | (test-equal "services, default value" | 31 | (test-equal "services, default value" |
| 32 | '(42 123 234 error) | 32 | '(42 123 234 error) |
| 33 | (let* ((t1 (service-type (name 't1) (extensions '()))) | 33 | (let* ((t1 (service-type (name 't1) (extensions '()) |
| 34 | (description ""))) | ||
| 34 | (t2 (service-type (name 't2) (extensions '()) | 35 | (t2 (service-type (name 't2) (extensions '()) |
| 36 | (description "") | ||
| 35 | (default-value 42)))) | 37 | (default-value 42)))) |
| 36 | (list (service-value (service t2)) | 38 | (list (service-value (service t2)) |
| 37 | (service-value (service t2 123)) | 39 | (service-value (service t2 123)) |
| @@ -40,13 +42,13 @@ | |||
| 40 | (service t1))))) | 42 | (service t1))))) |
| 41 | 43 | ||
| 42 | (test-assert "service-back-edges" | 44 | (test-assert "service-back-edges" |
| 43 | (let* ((t1 (service-type (name 't1) (extensions '()) | 45 | (let* ((t1 (service-type (name 't1) (extensions '()) (description "") |
| 44 | (compose +) (extend *))) | 46 | (compose +) (extend *))) |
| 45 | (t2 (service-type (name 't2) | 47 | (t2 (service-type (name 't2) (description "") |
| 46 | (extensions | 48 | (extensions |
| 47 | (list (service-extension t1 (const '())))) | 49 | (list (service-extension t1 (const '())))) |
| 48 | (compose +) (extend *))) | 50 | (compose +) (extend *))) |
| 49 | (t3 (service-type (name 't3) | 51 | (t3 (service-type (name 't3) (description "") |
| 50 | (extensions | 52 | (extensions |
| 51 | (list (service-extension t2 identity) | 53 | (list (service-extension t2 identity) |
| 52 | (service-extension t1 list))))) | 54 | (service-extension t1 list))))) |
| @@ -63,16 +65,16 @@ | |||
| 63 | ;; from services of type T3; 'xyz 60' comes from the service of type T2, | 65 | ;; from services of type T3; 'xyz 60' comes from the service of type T2, |
| 64 | ;; where 60 = 15 × 4 = (1 + 2 + 3 + 4 + 5) × 4. | 66 | ;; where 60 = 15 × 4 = (1 + 2 + 3 + 4 + 5) × 4. |
| 65 | '(initial-value 5 4 3 2 1 xyz 60) | 67 | '(initial-value 5 4 3 2 1 xyz 60) |
| 66 | (let* ((t1 (service-type (name 't1) (extensions '()) | 68 | (let* ((t1 (service-type (name 't1) (extensions '()) (description "") |
| 67 | (compose concatenate) | 69 | (compose concatenate) |
| 68 | (extend cons))) | 70 | (extend cons))) |
| 69 | (t2 (service-type (name 't2) | 71 | (t2 (service-type (name 't2) (description "") |
| 70 | (extensions | 72 | (extensions |
| 71 | (list (service-extension t1 | 73 | (list (service-extension t1 |
| 72 | (cut list 'xyz <>)))) | 74 | (cut list 'xyz <>)))) |
| 73 | (compose (cut reduce + 0 <>)) | 75 | (compose (cut reduce + 0 <>)) |
| 74 | (extend *))) | 76 | (extend *))) |
| 75 | (t3 (service-type (name 't3) | 77 | (t3 (service-type (name 't3) (description "") |
| 76 | (extensions | 78 | (extensions |
| 77 | (list (service-extension t2 identity) | 79 | (list (service-extension t2 identity) |
| 78 | (service-extension t1 list))))) | 80 | (service-extension t1 list))))) |
| @@ -86,10 +88,10 @@ | |||
| 86 | (service-value r)))) | 88 | (service-value r)))) |
| 87 | 89 | ||
| 88 | (test-assert "fold-services, ambiguity" | 90 | (test-assert "fold-services, ambiguity" |
| 89 | (let* ((t1 (service-type (name 't1) (extensions '()) | 91 | (let* ((t1 (service-type (name 't1) (extensions '()) (description "") |
| 90 | (compose concatenate) | 92 | (compose concatenate) |
| 91 | (extend cons))) | 93 | (extend cons))) |
| 92 | (t2 (service-type (name 't2) | 94 | (t2 (service-type (name 't2) (description "") |
| 93 | (extensions | 95 | (extensions |
| 94 | (list (service-extension t1 list))))) | 96 | (list (service-extension t1 list))))) |
| 95 | (s (service t2 42))) | 97 | (s (service t2 42))) |
| @@ -105,8 +107,8 @@ | |||
| 105 | #f))) | 107 | #f))) |
| 106 | 108 | ||
| 107 | (test-assert "fold-services, missing target" | 109 | (test-assert "fold-services, missing target" |
| 108 | (let* ((t1 (service-type (name 't1) (extensions '()))) | 110 | (let* ((t1 (service-type (name 't1) (extensions '()) (description ""))) |
| 109 | (t2 (service-type (name 't2) | 111 | (t2 (service-type (name 't2) (description "") |
| 110 | (extensions | 112 | (extensions |
| 111 | (list (service-extension t1 list))))) | 113 | (list (service-extension t1 list))))) |
| 112 | (s (service t2 42))) | 114 | (s (service t2 42))) |
| @@ -119,11 +121,11 @@ | |||
| 119 | #f))) | 121 | #f))) |
| 120 | 122 | ||
| 121 | (test-assert "instantiate-missing-services" | 123 | (test-assert "instantiate-missing-services" |
| 122 | (let* ((t1 (service-type (name 't1) (extensions '()) | 124 | (let* ((t1 (service-type (name 't1) (extensions '()) (description "") |
| 123 | (default-value 'dflt) | 125 | (default-value 'dflt) |
| 124 | (compose concatenate) | 126 | (compose concatenate) |
| 125 | (extend cons))) | 127 | (extend cons))) |
| 126 | (t2 (service-type (name 't2) | 128 | (t2 (service-type (name 't2) (description "") |
| 127 | (extensions | 129 | (extensions |
| 128 | (list (service-extension t1 list))))) | 130 | (list (service-extension t1 list))))) |
| 129 | (s1 (service t1 'hey!)) | 131 | (s1 (service t1 'hey!)) |
| @@ -135,17 +137,17 @@ | |||
| 135 | (instantiate-missing-services (list s1 s2)))))) | 137 | (instantiate-missing-services (list s1 s2)))))) |
| 136 | 138 | ||
| 137 | (test-assert "instantiate-missing-services, indirect" | 139 | (test-assert "instantiate-missing-services, indirect" |
| 138 | (let* ((t1 (service-type (name 't1) (extensions '()) | 140 | (let* ((t1 (service-type (name 't1) (extensions '()) (description "") |
| 139 | (default-value 'dflt) | 141 | (default-value 'dflt) |
| 140 | (compose concatenate) | 142 | (compose concatenate) |
| 141 | (extend cons))) | 143 | (extend cons))) |
| 142 | (t2 (service-type (name 't2) | 144 | (t2 (service-type (name 't2) (description "") |
| 143 | (default-value 'dflt2) | 145 | (default-value 'dflt2) |
| 144 | (compose concatenate) | 146 | (compose concatenate) |
| 145 | (extend cons) | 147 | (extend cons) |
| 146 | (extensions | 148 | (extensions |
| 147 | (list (service-extension t1 list))))) | 149 | (list (service-extension t1 list))))) |
| 148 | (t3 (service-type (name 't3) | 150 | (t3 (service-type (name 't3) (description "") |
| 149 | (extensions | 151 | (extensions |
| 150 | (list (service-extension t2 list))))) | 152 | (list (service-extension t2 list))))) |
| 151 | (s1 (service t1)) | 153 | (s1 (service t1)) |
| @@ -160,8 +162,8 @@ | |||
| 160 | (instantiate-missing-services (list s2 s3)))))) | 162 | (instantiate-missing-services (list s2 s3)))))) |
| 161 | 163 | ||
| 162 | (test-assert "instantiate-missing-services, no default value" | 164 | (test-assert "instantiate-missing-services, no default value" |
| 163 | (let* ((t1 (service-type (name 't1) (extensions '()))) | 165 | (let* ((t1 (service-type (name 't1) (extensions '()) (description ""))) |
| 164 | (t2 (service-type (name 't2) | 166 | (t2 (service-type (name 't2) (description "") |
| 165 | (extensions | 167 | (extensions |
| 166 | (list (service-extension t1 list))))) | 168 | (list (service-extension t1 list))))) |
| 167 | (s (service t2 42))) | 169 | (s (service t2 42))) |
