X-Git-Url: https://git.draconx.ca/gitweb/dxcommon.git/blobdiff_plain/c2c6b8f8e7a8d4edfd45f09855444bca51488a9f..e218d4445fa5a2015163cf50d847980ff3240b36:/tests/macros.at diff --git a/tests/macros.at b/tests/macros.at index 3b851fc..f746e54 100644 --- a/tests/macros.at +++ b/tests/macros.at @@ -1,4 +1,4 @@ -dnl Copyright © 2014-2015, 2018 Nick Bowler +dnl Copyright © 2014-2015, 2018-2019, 2021 Nick Bowler dnl dnl License WTFPL2: Do What The Fuck You Want To Public License, version 2. dnl This is free software: you are free to do what the fuck you want to. @@ -43,8 +43,8 @@ AC_CONFIG_FILES([test]) TEST_AUTORECONF TEST_CONFIGURE -printf '%s\n' "$srcdir" | sed -e 's:/\./:/:g' -e 's:/\.$::g' \ - -e 's:\(.\)//*:\1/:g' >expout +printf '${top_srcdir}/%s\n' "$srcdir" | sed -e 's:/\./:/:g' -e 's:/\.$::g' \ + -e 's:\(.\)//*:\1/:g' >expout AT_CHECK([cat test], [0], [expout]) AT_CLEANUP @@ -109,3 +109,160 @@ AT_CHECK([cat test.out], [0], [[FOOFOOFOO ]]) AT_CLEANUP + +AT_SETUP([DX_LINGUAS unused country variants]) +AT_KEYWORDS([DX_LINGUAS macro]) + +echo : >config.rpath +chmod +x config.rpath + +mkdir po +AT_DATA([po/LINGUAS], [[en +]]) + +AT_DATA([test.in], [[POFILES = @POFILES@ +MOFILES = @MOFILES@ +]]) + +TEST_CONFIGURE_AC( +[[m4@&t@_traceoff([AM_GNU_GETTEXT]) +AM_GNU_GETTEXT([external]) +DX_LINGUAS +AC_CONFIG_FILES([test]) +]]) + +TEST_AUTORECONF +LINGUAS='en_CA en'; export LINGUAS; TEST_CONFIGURE + +AT_CHECK([cat test], [0], [[POFILES = po/en.po +MOFILES = po/en.mo +]]) + +AT_CLEANUP + +AT_SETUP([DX_LINGUAS default install all]) +AT_KEYWORDS([DX_LINGUAS macro]) + +AS_UNSET([LINGUAS]) +AT_SKIP_IF([test ${LINGUAS+y}]) + +echo : >config.rpath +chmod +x config.rpath + +mkdir po +AT_DATA([po/LINGUAS], [[en ja # a comment ko +zh +]]) + +AT_DATA([test.in], [[POFILES = @POFILES@ +MOFILES = @MOFILES@ +]]) + +TEST_CONFIGURE_AC( +[[m4@&t@_traceoff([AM_GNU_GETTEXT]) +AM_GNU_GETTEXT([external]) +DX_LINGUAS +AC_CONFIG_FILES([test]) +]]) + +TEST_AUTORECONF +TEST_CONFIGURE + +AT_CHECK([cat test], [0], +[[POFILES = po/en.po po/ja.po po/zh.po +MOFILES = po/en.mo po/ja.mo po/zh.mo +]]) + +AT_CLEANUP + +AT_SETUP([DX_LINGUAS selections]) +AT_KEYWORDS([DX_LINGUAS macro]) + +echo : >config.rpath +chmod +x config.rpath + +mkdir po +AT_DATA([po/LINGUAS], [[en ja # a comment ko +zh en_US +]]) + +AT_DATA([test.in], [[POFILES = @POFILES@ +MOFILES = @MOFILES@ +]]) + +TEST_CONFIGURE_AC( +[[m4@&t@_traceoff([AM_GNU_GETTEXT]) +AM_GNU_GETTEXT([external]) +DX_LINGUAS +AC_CONFIG_FILES([test]) +]]) +TEST_AUTORECONF + +LINGUAS='en'; export LINGUAS; TEST_CONFIGURE +AT_CHECK([cat test], [0], +[[POFILES = po/en.po po/en_US.po po/ja.po po/zh.po +MOFILES = po/en.mo +]]) + +LINGUAS='en_US'; export LINGUAS; TEST_CONFIGURE +AT_CHECK([cat test], [0], +[[POFILES = po/en.po po/en_US.po po/ja.po po/zh.po +MOFILES = po/en.mo po/en_US.mo +]]) + +LINGUAS='en_CA'; export LINGUAS; TEST_CONFIGURE +AT_CHECK([cat test], [0], +[[POFILES = po/en.po po/en_US.po po/ja.po po/zh.po +MOFILES = po/en.mo +]]) + +LINGUAS='ja ko'; export LINGUAS; TEST_CONFIGURE +AT_CHECK([cat test], [0], +[[POFILES = po/en.po po/en_US.po po/ja.po po/zh.po +MOFILES = po/ja.mo +]]) + +LINGUAS='ja_JP ko_KR'; export LINGUAS; TEST_CONFIGURE +AT_CHECK([cat test], [0], +[[POFILES = po/en.po po/en_US.po po/ja.po po/zh.po +MOFILES = po/ja.mo +]]) + +LINGUAS=''; export LINGUAS; TEST_CONFIGURE +AT_CHECK([cat test], [0], +[[POFILES = po/en.po po/en_US.po po/ja.po po/zh.po +MOFILES = @&t@ +]]) + +AT_CLEANUP + +AT_SETUP([DX_BASENAME]) +AT_KEYWORDS([DX_BASENAME macro]) + +AT_DATA([test.in], [[@base0@ +@base1@ +@base2@ +@base3@ +]]) + +TEST_CONFIGURE_AC( +[[DX_BASENAME([base0], ["hello"]) +DX_BASENAME([base1], ["foo/bar"]) +DX_BASENAME([base2], ["/foo/bar/baz"]) +DX_BASENAME([base3], ["hello world"]) +AC_SUBST([base0]) +AC_SUBST([base1]) +AC_SUBST([base2]) +AC_SUBST([base3]) +AC_CONFIG_FILES([test]) +]]) +TEST_AUTORECONF + +TEST_CONFIGURE +AT_CHECK([cat test], [0], [hello +bar +baz +hello world +]) + +AT_CLEANUP