blob: 68feb1aced1f9412866005240210f125edd997ec (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
;;; Commentary:
;; Checks that parameters (1) are correctly parsed and stored.
;; (1): 'A', and 'B' in the line "KEY;A=1;B=2:Some text"
;;; Code:
(define-module (test param)
:use-module (srfi srfi-64)
:use-module (srfi srfi-64 test-error)
:use-module (srfi srfi-88)
:use-module ((vcomponent base)
:select (param prop* parameters prop vline?))
:use-module ((vcomponent) :select (vcomponent properties set-properties))
:use-module ((vcomponent create) :select (vcomponent with-parameters))
:use-module ((hnh util) :select (sort* set!))
:use-module ((ice-9 ports) :select (call-with-input-string))
)
(define v
(vcomponent 'DUMMY
x-key: (with-parameters a: "1" b: "2"
"Some text")))
(test-equal '("1") (param (prop* v 'X-KEY) 'A))
(test-equal '("2") (param (prop* v 'X-KEY) 'B))
(test-equal #f (param (prop* v 'X-KEY) 'C))
(test-group "Properties"
(let ((p (properties v)))
(test-assert (list? p))
(test-eqv 1 (length p))
(test-eq 'X-KEY (caar p))
(test-assert (vline? (cadar p)))))
'((vcomponent base))
|