]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.bin/locale/tests/locale_test.sh
MFV r362143:
[FreeBSD/FreeBSD.git] / usr.bin / locale / tests / locale_test.sh
1 #
2 # SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 #
4 # Copyright 2019 Yuri Pankov
5 #
6 # Redistribution and use in source and binary forms, with or without
7 # modification, are permitted provided that the following conditions
8 # are met:
9 # 1. Redistributions of source code must retain the above copyright
10 #    notice, this list of conditions and the following disclaimer.
11 # 2. Redistributions in binary form must reproduce the above copyright
12 #    notice, this list of conditions and the following disclaimer in the
13 #    documentation and/or other materials provided with the distribution.
14 #
15 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 # ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 # SUCH DAMAGE.
26 #
27 # $FreeBSD$
28
29 atf_test_case k_flag_posix
30 k_flag_posix_head()
31 {
32         atf_set "descr" \
33             "Verify output of 'locale -k' for all POSIX specified keywords"
34 }
35 k_flag_posix_body()
36 {
37         export LC_ALL="C"
38
39         # LC_MONETARY
40         atf_check -o file:"$(atf_get_srcdir)/k_flag_posix_monetary.out" \
41             locale -k \
42             int_curr_symbol \
43             currency_symbol \
44             mon_decimal_point \
45             mon_thousands_sep \
46             mon_grouping \
47             positive_sign \
48             negative_sign \
49             int_frac_digits \
50             frac_digits \
51             p_cs_precedes \
52             p_sep_by_space \
53             n_cs_precedes \
54             n_sep_by_space \
55             p_sign_posn \
56             n_sign_posn \
57             int_p_cs_precedes \
58             int_n_cs_precedes \
59             int_p_sep_by_space \
60             int_n_sep_by_space \
61             int_p_sign_posn \
62             int_n_sign_posn
63
64         # LC_NUMERIC
65         atf_check -o file:"$(atf_get_srcdir)/k_flag_posix_numeric.out" \
66             locale -k \
67             decimal_point \
68             thousands_sep \
69             grouping
70
71         # LC_TIME
72         atf_check -o file:"$(atf_get_srcdir)/k_flag_posix_time.out" \
73             locale -k \
74             abday \
75             day \
76             abmon \
77             mon \
78             d_t_fmt \
79             d_fmt \
80             t_fmt \
81             am_pm \
82             t_fmt_ampm \
83             era \
84             era_d_fmt \
85             era_t_fmt \
86             era_d_t_fmt \
87             alt_digits
88
89         # LC_MESSAGES
90         atf_check -o file:"$(atf_get_srcdir)/k_flag_posix_messages.out" \
91             locale -k \
92             yesexpr \
93             noexpr
94 }
95
96 atf_test_case no_flags_posix
97 no_flags_posix_head()
98 {
99         atf_set "descr" \
100             "Verify output of 'locale' for all POSIX specified keywords"
101 }
102 no_flags_posix_body()
103 {
104         export LC_ALL="C"
105
106         # LC_MONETARY
107         atf_check -o file:"$(atf_get_srcdir)/no_flags_posix_monetary.out" \
108             locale \
109             int_curr_symbol \
110             currency_symbol \
111             mon_decimal_point \
112             mon_thousands_sep \
113             mon_grouping \
114             positive_sign \
115             negative_sign \
116             int_frac_digits \
117             frac_digits \
118             p_cs_precedes \
119             p_sep_by_space \
120             n_cs_precedes \
121             n_sep_by_space \
122             p_sign_posn \
123             n_sign_posn \
124             int_p_cs_precedes \
125             int_n_cs_precedes \
126             int_p_sep_by_space \
127             int_n_sep_by_space \
128             int_p_sign_posn \
129             int_n_sign_posn
130
131         # LC_NUMERIC
132         atf_check -o file:"$(atf_get_srcdir)/no_flags_posix_numeric.out" \
133             locale \
134             decimal_point \
135             thousands_sep \
136             grouping
137
138         # LC_TIME
139         atf_check -o file:"$(atf_get_srcdir)/no_flags_posix_time.out" \
140             locale \
141             abday \
142             day \
143             abmon \
144             mon \
145             d_t_fmt \
146             d_fmt \
147             t_fmt \
148             am_pm \
149             t_fmt_ampm \
150             era \
151             era_d_fmt \
152             era_t_fmt \
153             era_d_t_fmt \
154             alt_digits
155
156         # LC_MESSAGES
157         atf_check -o file:"$(atf_get_srcdir)/no_flags_posix_messages.out" \
158             locale \
159             yesexpr \
160             noexpr
161 }
162
163 atf_init_test_cases()
164 {
165         atf_add_test_case k_flag_posix
166         atf_add_test_case no_flags_posix
167 }