v2 / vlib / net / urllib / values_test.v
40 lines · 36 sloc · 1.04 KB · 763f94388b1ceff59c3e68ebda2c9f57197f32a4
Raw
1// Copyright (c) 2019-2024 Alexander Medvednikov. All rights reserved.
2// Use of this source code is governed by an MIT license
3// that can be found in the LICENSE file.
4module urllib
5
6fn test_add_and_get_key_val() {
7 mut values := Values{}
8 values.add('key', 'value')
9 present_val := values.get('key') or { '' }
10 absent_val := values.get('key1') or { '' }
11 assert present_val == 'value'
12 assert absent_val == ''
13}
14
15fn test_get_all_with_key() {
16 mut values := Values{}
17 values.add('key', 'value1')
18 values.add('key', 'value2')
19 key_values := values.get_all('key')
20 assert key_values == ['value1', 'value2']
21}
22
23fn test_set_with_key() {
24 mut values := Values{}
25 values.add('key', 'value1')
26 values.add('key', 'value2')
27 values.add('key1', 'value2')
28 values.set('key1', 'vlang')
29 key_values := values.get_all('key')
30 key2_values := values.get_all('key1')
31 assert key_values == ['value1', 'value2']
32 assert key2_values == ['vlang']
33}
34
35fn test_set_missing_key() {
36 mut values := Values{}
37 values.set('err', 'err1')
38 vals := values.get_all('err')
39 assert vals == ['err1']
40}
41