| source check.vim |
| CheckNotMac |
| CheckFeature gettext |
| |
| " Test for package translation Makefile |
| func Test_gettext_makefile() |
| cd ../po |
| if has('win32') |
| if getenv('GETTEXT_PATH') == v:null |
| throw 'Skipped: %GETTEXT_PATH% is not set.' |
| endif |
| call system('nmake.exe -f Make_mvc.mak "VIMPROG=' .. getenv('VIMPROG') .. |
| \ '" "GETTEXT_PATH=' .. getenv('GETTEXT_PATH') .. |
| \ '" PLUGPACKAGE=test_gettext |
| \ "PO_PLUG_INPUTLIST=..\testdir\test_gettext_makefile_in1.vim |
| \ ..\testdir\test_gettext_makefile_in2.vim |
| \ ..\testdir\test_gettext_makefile_in3.vim |
| \ ..\testdir\test_gettext_makefile_in4.vim" test_gettext.pot') |
| else |
| " Will it work on macOS? |
| CheckExecutable xgettext |
| call system("make -f Makefile PLUGPACKAGE=test_gettext |
| \ PO_PLUG_INPUTLIST=\"../testdir/test_gettext_makefile_in1.vim |
| \ ../testdir/test_gettext_makefile_in2.vim |
| \ ../testdir/test_gettext_makefile_in3.vim |
| \ ../testdir/test_gettext_makefile_in4.vim\" test_gettext.pot") |
| endif |
| if v:shell_error != 0 |
| throw 'Fail to create test_gettext.pot. Error code: ' .. v:shell_error |
| endif |
| let expected =<< trim END |
| # SOME DESCRIPTIVE TITLE. |
| # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER |
| # This file is distributed under the same license as the test_gettext package. |
| # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. |
| # |
| #, fuzzy |
| msgid "" |
| msgstr "" |
| "Project-Id-Version: test_gettext\n" |
| "Report-Msgid-Bugs-To: \n" |
| "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
| "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
| "Language-Team: LANGUAGE <LL@li.org>\n" |
| "Language: \n" |
| "MIME-Version: 1.0\n" |
| "Content-Type: text/plain; charset=CHARSET\n" |
| "Content-Transfer-Encoding: 8bit\n" |
| |
| #: ../testdir/test_gettext_makefile_in1.vim:4 ../testdir/test_gettext_makefile_in1.vim:6 |
| #: ../testdir/test_gettext_makefile_in2.vim:5 ../testdir/test_gettext_makefile_in4.vim:4 |
| msgid "This is a test" |
| msgstr "" |
| |
| #: ../testdir/test_gettext_makefile_in1.vim:5 |
| msgid "This is another test" |
| msgstr "" |
| |
| #: ../testdir/test_gettext_makefile_in2.vim:4 |
| msgid "This is a test from the second file" |
| msgstr "" |
| |
| #: ../testdir/test_gettext_makefile_in4.vim:5 |
| msgid "This is a fourth test" |
| msgstr "" |
| END |
| let potfile = filter(readfile("test_gettext.pot"), 'v:val !~ "POT-Creation-Date"') |
| call assert_equal(expected, potfile) |
| call delete('test_gettext.pot') |
| cd - |
| endfunc |
| |
| " vim: shiftwidth=2 sts=2 expandtab |