summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/gettext/tests/gettext_basic-enus.phpt28
-rw-r--r--ext/gettext/tests/gettext_bind_textdomain_codeset-retval.phpt22
-rw-r--r--ext/gettext/tests/gettext_bind_textdomain_codeset-wrongparams.phpt23
-rw-r--r--ext/gettext/tests/gettext_bindtextdomain-cwd.phpt27
-rw-r--r--ext/gettext/tests/gettext_bindtextdomain-emptydomain.phpt16
-rw-r--r--ext/gettext/tests/gettext_bindtextdomain-path.phpt16
-rw-r--r--ext/gettext/tests/gettext_bindtextdomain-wrongparams.phpt19
-rw-r--r--ext/gettext/tests/gettext_dcgettext-wrongparams.phpt16
-rw-r--r--ext/gettext/tests/gettext_dcgettext.phpt25
-rw-r--r--ext/gettext/tests/gettext_dgettext.phpt30
-rw-r--r--ext/gettext/tests/gettext_dgettext_error_wrongparams.phpt34
-rw-r--r--ext/gettext/tests/gettext_dngettext-plural.phpt24
-rw-r--r--ext/gettext/tests/gettext_dngettext-wrongparams.phpt23
-rw-r--r--ext/gettext/tests/gettext_gettext_error_wrongparams.phpt17
-rw-r--r--ext/gettext/tests/gettext_ngettext-wrongparams.phpt33
-rw-r--r--ext/gettext/tests/gettext_ngettext.phpt26
-rw-r--r--ext/gettext/tests/gettext_phpinfo.phpt19
-rw-r--r--ext/gettext/tests/gettext_textdomain-retval.phpt29
-rw-r--r--ext/gettext/tests/gettext_textdomain-wrongparams.phpt25
-rw-r--r--ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest.mobin0 -> 84 bytes
-rw-r--r--ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest.po4
-rw-r--r--ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switch.mobin0 -> 102 bytes
-rw-r--r--ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switch.po4
-rw-r--r--ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switched.po2
-rw-r--r--ext/gettext/tests/locale/en/LC_CTYPE/dngettextTest.mobin0 -> 86 bytes
-rw-r--r--ext/gettext/tests/locale/en/LC_CTYPE/dngettextTest.po4
-rw-r--r--ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest.mobin0 -> 84 bytes
-rw-r--r--ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest.po4
-rw-r--r--ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest_switch.mobin0 -> 102 bytes
-rw-r--r--ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest_switch.po4
-rw-r--r--ext/gettext/tests/locale/en/LC_MESSAGES/dngettextTest.mobin0 -> 84 bytes
-rw-r--r--ext/gettext/tests/locale/en/LC_MESSAGES/dngettextTest.po4
-rw-r--r--ext/gettext/tests/locale/en/LC_MESSAGES/messages.mobin0 -> 201 bytes
-rw-r--r--ext/gettext/tests/locale/en/LC_MESSAGES/messages.po15
34 files changed, 493 insertions, 0 deletions
diff --git a/ext/gettext/tests/gettext_basic-enus.phpt b/ext/gettext/tests/gettext_basic-enus.phpt
new file mode 100644
index 0000000000..4691d77f83
--- /dev/null
+++ b/ext/gettext/tests/gettext_basic-enus.phpt
@@ -0,0 +1,28 @@
+--TEST--
+Gettext basic test with en_US locale that should be on nearly every system
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("skip\n");
+ }
+ if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("skip en_US.UTF-8 locale not supported.");
+ }
+?>
+--FILE--
+<?php
+
+chdir(dirname(__FILE__));
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain ("messages", "./locale");
+textdomain ("messages");
+echo gettext("Basic test"), "\n";
+echo _("Basic test"), "\n";
+
+?>
+--EXPECT--
+A basic test
+A basic test
+--CREDITS--
+Christian Weiske, cweiske@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_bind_textdomain_codeset-retval.phpt b/ext/gettext/tests/gettext_bind_textdomain_codeset-retval.phpt
new file mode 100644
index 0000000000..2c8e5612fe
--- /dev/null
+++ b/ext/gettext/tests/gettext_bind_textdomain_codeset-retval.phpt
@@ -0,0 +1,22 @@
+--TEST--
+test if bind_textdomain_codeset() returns correct value
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("skip");
+ }
+?>
+--FILE--
+<?php
+ var_dump(bind_textdomain_codeset(false,false));
+ var_dump(bind_textdomain_codeset('messages', "UTF-8"));
+
+ echo "Done\n";
+?>
+--EXPECTF--
+bool(false)
+string(5) "UTF-8"
+Done
+--CREDITS--
+Florian Holzhauer fh-pt@fholzhauer.de
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_bind_textdomain_codeset-wrongparams.phpt b/ext/gettext/tests/gettext_bind_textdomain_codeset-wrongparams.phpt
new file mode 100644
index 0000000000..eb50c5d6e5
--- /dev/null
+++ b/ext/gettext/tests/gettext_bind_textdomain_codeset-wrongparams.phpt
@@ -0,0 +1,23 @@
+--TEST--
+test if bind_textdomain_codeset() fails on wrong param count
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("skip");
+ }
+?>
+--FILE--
+<?php
+ bind_textdomain_codeset('messages');
+ bind_textdomain_codeset('messages','foo','bar');
+
+ echo "Done\n";
+?>
+--EXPECTF--
+Warning: bind_textdomain_codeset() expects exactly 2 parameters, 1 given in %s on line %d
+
+Warning: bind_textdomain_codeset() expects exactly 2 parameters, 3 given in %s on line %d
+Done
+--CREDITS--
+Florian Holzhauer fh-pt@fholzhauer.de
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_bindtextdomain-cwd.phpt b/ext/gettext/tests/gettext_bindtextdomain-cwd.phpt
new file mode 100644
index 0000000000..375e5fba4c
--- /dev/null
+++ b/ext/gettext/tests/gettext_bindtextdomain-cwd.phpt
@@ -0,0 +1,27 @@
+--TEST--
+Test if bindtextdomain() returns string id if no directory path is set(if directory path is 'null')
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("skip gettext extension is not loaded.\n");
+}
+if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("skip en_US.UTF-8 locale not supported.");
+}
+--FILE--
+<?php
+$base_dir = dirname(__FILE__);
+chdir($base_dir);
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain('messages',null);
+var_dump(gettext('Basic test'));
+bindtextdomain('messages', './locale');
+var_dump(gettext('Basic test'));
+
+?>
+--EXPECTF--
+string(10) "Basic test"
+string(12) "A basic test"
+--CREDIT--
+Moritz Neuhaeuser, info@xcompile.net
+PHP Testfest Berlin 2009-05-09
diff --git a/ext/gettext/tests/gettext_bindtextdomain-emptydomain.phpt b/ext/gettext/tests/gettext_bindtextdomain-emptydomain.phpt
new file mode 100644
index 0000000000..0ebe66e9fd
--- /dev/null
+++ b/ext/gettext/tests/gettext_bindtextdomain-emptydomain.phpt
@@ -0,0 +1,16 @@
+--TEST--
+Test if bindtextdomain() errors if the domain is empty.
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("skip gettext extension is not loaded.\n");
+}
+--FILE--
+<?php
+chdir(dirname(__FILE__));
+bindtextdomain('', 'foobar');
+--EXPECTF--
+Warning: The first parameter of bindtextdomain must not be empty in %s on line %d
+--CREDITS--
+Till Klampaeckel, till@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_bindtextdomain-path.phpt b/ext/gettext/tests/gettext_bindtextdomain-path.phpt
new file mode 100644
index 0000000000..45349b4379
--- /dev/null
+++ b/ext/gettext/tests/gettext_bindtextdomain-path.phpt
@@ -0,0 +1,16 @@
+--TEST--
+Test if bindtextdomain() returns false if path does not exist.
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("skip gettext extension is not loaded.\n");
+}
+--FILE--
+<?php
+chdir(dirname(__FILE__));
+var_dump(bindtextdomain('example.org', 'foobar'));
+--EXPECTF--
+bool(false)
+--CREDITS--
+Till Klampaeckel, till@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_bindtextdomain-wrongparams.phpt b/ext/gettext/tests/gettext_bindtextdomain-wrongparams.phpt
new file mode 100644
index 0000000000..97939a469d
--- /dev/null
+++ b/ext/gettext/tests/gettext_bindtextdomain-wrongparams.phpt
@@ -0,0 +1,19 @@
+--TEST--
+Test if bindtextdomain() errors if you don't supply enough parameters.
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("skip gettext extension is not loaded.\n");
+}
+--FILE--
+<?php
+chdir(dirname(__FILE__));
+bindtextdomain('foobar');
+bindtextdomain();
+--EXPECTF--
+Warning: bindtextdomain() expects exactly 2 parameters, 1 given in %s on line %d
+
+Warning: bindtextdomain() expects exactly 2 parameters, 0 given in %s on line %d
+--CREDITS--
+Till Klampaeckel, till@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_dcgettext-wrongparams.phpt b/ext/gettext/tests/gettext_dcgettext-wrongparams.phpt
new file mode 100644
index 0000000000..372a95740d
--- /dev/null
+++ b/ext/gettext/tests/gettext_dcgettext-wrongparams.phpt
@@ -0,0 +1,16 @@
+--TEST--
+Test if dcgettext() errors when you don't supply the correct params.
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("skip gettext extension is not loaded.\n");
+}
+--FILE--
+<?php
+var_dump(dcgettext('a', 'b'));
+--EXPECTF--
+Warning: dcgettext() expects exactly 3 parameters, 2 given in %s on line %d
+NULL
+--CREDITS--
+Christian Weiske, cweiske@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_dcgettext.phpt b/ext/gettext/tests/gettext_dcgettext.phpt
new file mode 100644
index 0000000000..24b558ebf6
--- /dev/null
+++ b/ext/gettext/tests/gettext_dcgettext.phpt
@@ -0,0 +1,25 @@
+--TEST--
+Test dcgettext() functionality
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("skip gettext extension is not loaded.\n");
+}
+if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("skip en_US.UTF-8 locale not supported.");
+}
+--FILE--
+<?php
+chdir(dirname(__FILE__));
+setlocale(LC_MESSAGES, 'en_US.UTF-8');
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain('dngettextTest', './locale');
+
+var_dump(dcgettext('dngettextTest', 'item', LC_CTYPE));
+var_dump(dcgettext('dngettextTest', 'item', LC_MESSAGES));
+--EXPECTF--
+string(8) "cProdukt"
+string(7) "Produkt"
+--CREDITS--
+Christian Weiske, cweiske@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_dgettext.phpt b/ext/gettext/tests/gettext_dgettext.phpt
new file mode 100644
index 0000000000..a9a1337d64
--- /dev/null
+++ b/ext/gettext/tests/gettext_dgettext.phpt
@@ -0,0 +1,30 @@
+--TEST--
+Test dgettext() functionality
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("SKIP gettext extension is not loaded.\n");
+}
+if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("SKIP en_US.UTF-8 locale not supported.");
+}
+--FILE--
+<?php
+chdir(dirname(__FILE__));
+setlocale(LC_MESSAGES, 'en_US.UTF-8');
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain('dgettextTest', './locale');
+bindtextdomain('dgettextTest_switch', './locale');
+textdomain('dgettextTest');
+
+var_dump(gettext('item'));
+var_dump(dgettext('dgettextTest_switch', 'item'));
+var_dump(gettext('item'));
+?>
+--EXPECT--
+string(7) "Produkt"
+string(16) "Produkt_switched"
+string(7) "Produkt"
+--CREDITS--
+Moritz Neuhaeuser, info@xcompile.net
+PHP Testfest Berlin 2009-05-09
diff --git a/ext/gettext/tests/gettext_dgettext_error_wrongparams.phpt b/ext/gettext/tests/gettext_dgettext_error_wrongparams.phpt
new file mode 100644
index 0000000000..783935826c
--- /dev/null
+++ b/ext/gettext/tests/gettext_dgettext_error_wrongparams.phpt
@@ -0,0 +1,34 @@
+--TEST--
+Check how dgettext() with wrong parameter types and wrong parameter cou types and wrong parameter count behaves.
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("skip extension gettext not loaded\n");
+ }
+ if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("skip en_US.UTF-8 locale not supported.");
+ }
+
+?>
+--FILE--
+<?php
+ chdir(dirname(__FILE__));
+ setlocale(LC_ALL, 'en_US.UTF-8');
+ dgettext ('foo');
+ dgettext ();
+
+ dgettext(array(), 'foo');
+ dgettext('foo', array());
+
+?>
+--EXPECTF--
+Warning: dgettext() expects exactly 2 parameters, 1 given in %s.php on line %d
+
+Warning: dgettext() expects exactly 2 parameters, 0 given in %s.php on line %d
+
+Warning: dgettext() expects parameter 1 to be string, array given in %s.php on line %d
+
+Warning: dgettext() expects parameter 2 to be string, array given in %s.php on line %d
+--CREDITS--
+Moritz Neuhaeuser, info@xcompile.net
+PHP Testfest Berlin 2009-05-09
diff --git a/ext/gettext/tests/gettext_dngettext-plural.phpt b/ext/gettext/tests/gettext_dngettext-plural.phpt
new file mode 100644
index 0000000000..0417c0ed52
--- /dev/null
+++ b/ext/gettext/tests/gettext_dngettext-plural.phpt
@@ -0,0 +1,24 @@
+--TEST--
+Test if dngettext() returns the correct translations (optionally plural).
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("skip gettext extension is not loaded.\n");
+}
+if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("skip en_US.UTF-8 locale not supported.");
+}
+--FILE--
+<?php
+chdir(dirname(__FILE__));
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain('dngettextTest', './locale');
+
+var_dump(dngettext('dngettextTest', 'item', 'items', 1));
+var_dump(dngettext('dngettextTest', 'item', 'items', 2));
+--EXPECT--
+string(7) "Produkt"
+string(8) "Produkte"
+--CREDITS--
+Till Klampaeckel, till@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_dngettext-wrongparams.phpt b/ext/gettext/tests/gettext_dngettext-wrongparams.phpt
new file mode 100644
index 0000000000..4bcf0930b0
--- /dev/null
+++ b/ext/gettext/tests/gettext_dngettext-wrongparams.phpt
@@ -0,0 +1,23 @@
+--TEST--
+Test if dngettext() errors when you don't supply the correct params.
+--SKIPIF--
+<?php
+if (!extension_loaded("gettext")) {
+ die("skip gettext extension is not loaded.\n");
+}
+if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("skip en_US.UTF-8 locale not supported.");
+}
+--FILE--
+<?php
+chdir(dirname(__FILE__));
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain('dngettextTest', './locale');
+
+var_dump(dngettext('dngettextTest', 'item', 'items'));
+--EXPECTF--
+Warning: dngettext() expects exactly 4 parameters, 3 given in %s on line %d
+NULL
+--CREDITS--
+Till Klampaeckel, till@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_gettext_error_wrongparams.phpt b/ext/gettext/tests/gettext_gettext_error_wrongparams.phpt
new file mode 100644
index 0000000000..a90109053c
--- /dev/null
+++ b/ext/gettext/tests/gettext_gettext_error_wrongparams.phpt
@@ -0,0 +1,17 @@
+--TEST--
+Check how gettext() with wrong parameters behaves.
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("skip extension gettext not loaded\n");
+ }
+?>
+--FILE--
+<?php
+gettext (array());
+?>
+--EXPECTF--
+Warning: gettext() expects parameter 1 to be string, array given in %s on line 2
+--CREDITS--
+Moritz Neuhaeuser, info@xcompile.net
+PHP Testfest Berlin 2009-05-09
diff --git a/ext/gettext/tests/gettext_ngettext-wrongparams.phpt b/ext/gettext/tests/gettext_ngettext-wrongparams.phpt
new file mode 100644
index 0000000000..9003aefcfe
--- /dev/null
+++ b/ext/gettext/tests/gettext_ngettext-wrongparams.phpt
@@ -0,0 +1,33 @@
+--TEST--
+Check how ngettext() with wrong parameters behaves.
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("SKIP extension gettext not loaded\n");
+ }
+
+?>
+--FILE--
+<?php
+ngettext(array(), "", 1);
+ngettext("", array(), 1);
+ngettext("", "", array());
+ngettext();
+ngettext("");
+ngettext("", "");
+?>
+--EXPECTF--
+Warning: ngettext() expects parameter 1 to be string, array given in %s on line 2
+
+Warning: ngettext() expects parameter 2 to be string, array given in %s on line 3
+
+Warning: ngettext() expects parameter 3 to be long, array given in %s on line 4
+
+Warning: ngettext() expects exactly 3 parameters, 0 given in %s on line 5
+
+Warning: ngettext() expects exactly 3 parameters, 1 given in %s on line 6
+
+Warning: ngettext() expects exactly 3 parameters, 2 given in %s on line 7
+--CREDITS--
+Tim Eggert, tim@elbart.com
+PHP Testfest Berlin 2009-05-09
diff --git a/ext/gettext/tests/gettext_ngettext.phpt b/ext/gettext/tests/gettext_ngettext.phpt
new file mode 100644
index 0000000000..d0f13020a1
--- /dev/null
+++ b/ext/gettext/tests/gettext_ngettext.phpt
@@ -0,0 +1,26 @@
+--TEST--
+Test ngettext() functionality
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("SKIP extension gettext not loaded\n");
+ }
+ if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("SKIP en_US.UTF-8 locale not supported.");
+ }
+?>
+--FILE--
+<?php // $Id$
+chdir(dirname(__FILE__));
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain('dngettextTest', './locale');
+textdomain('dngettextTest');
+var_dump(ngettext('item', 'items', 1));
+var_dump(ngettext('item', 'items', 2));
+?>
+--EXPECT--
+string(7) "Produkt"
+string(8) "Produkte"
+--CREDITS--
+Christian Weiske, cweiske@php.net
+PHP Testfest Berlin 2009-05-09
diff --git a/ext/gettext/tests/gettext_phpinfo.phpt b/ext/gettext/tests/gettext_phpinfo.phpt
new file mode 100644
index 0000000000..6a38943d10
--- /dev/null
+++ b/ext/gettext/tests/gettext_phpinfo.phpt
@@ -0,0 +1,19 @@
+--TEST--
+Test phpinfo() displays gettext support
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("SKIP extension gettext not loaded\n");
+ }
+?>
+--FILE--
+<?php
+phpinfo();
+?>
+--EXPECTF--
+%a
+%rGetText Support.*enabled%r
+%a
+--CREDITS--
+Tim Eggert, tim@elbart.com
+PHP Testfest Berlin 2009-05-09
diff --git a/ext/gettext/tests/gettext_textdomain-retval.phpt b/ext/gettext/tests/gettext_textdomain-retval.phpt
new file mode 100644
index 0000000000..3e82f6711a
--- /dev/null
+++ b/ext/gettext/tests/gettext_textdomain-retval.phpt
@@ -0,0 +1,29 @@
+--TEST--
+Check if textdomain() returns the new domain
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("skip\n");
+ }
+ if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("skip en_US.UTF-8 locale not supported.");
+ }
+?>
+--FILE--
+<?php
+
+chdir(dirname(__FILE__));
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain ("messages", "./locale");
+echo textdomain('test'), "\n";
+echo textdomain(null), "\n";
+echo textdomain('foo'), "\n";
+?>
+--EXPECT--
+
+test
+test
+foo
+--CREDITS--
+Christian Weiske, cweiske@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/gettext_textdomain-wrongparams.phpt b/ext/gettext/tests/gettext_textdomain-wrongparams.phpt
new file mode 100644
index 0000000000..251ee9a21b
--- /dev/null
+++ b/ext/gettext/tests/gettext_textdomain-wrongparams.phpt
@@ -0,0 +1,25 @@
+--TEST--
+Check how textdomain() with wrong parameters behaves.
+--SKIPIF--
+<?php
+ if (!extension_loaded("gettext")) {
+ die("skip\n");
+ }
+ if (!setlocale(LC_ALL, 'en_US.UTF-8')) {
+ die("skip en_US.UTF-8 locale not supported.");
+ }
+?>
+--FILE--
+<?php // $Id$
+
+chdir(dirname(__FILE__));
+setlocale(LC_ALL, 'en_US.UTF-8');
+bindtextdomain ("messages", "./locale");
+textdomain (array());
+
+?>
+--EXPECTF--
+Warning: textdomain() expects parameter 1 to be string, array given in %s on line 6
+--CREDITS--
+Christian Weiske, cweiske@php.net
+PHP Testfest Berlin 2009-05-09 \ No newline at end of file
diff --git a/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest.mo b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest.mo
new file mode 100644
index 0000000000..255e1e937a
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest.mo
Binary files differ
diff --git a/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest.po b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest.po
new file mode 100644
index 0000000000..159a90ffeb
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest.po
@@ -0,0 +1,4 @@
+msgid "item"
+msgid_plural "items"
+msgstr[0] "Produkt"
+msgstr[1] "Produkte"
diff --git a/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switch.mo b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switch.mo
new file mode 100644
index 0000000000..c2ab696a3e
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switch.mo
Binary files differ
diff --git a/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switch.po b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switch.po
new file mode 100644
index 0000000000..b56d1890e0
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switch.po
@@ -0,0 +1,4 @@
+msgid "item"
+msgid_plural "items"
+msgstr[0] "Produkt_switched"
+msgstr[1] "Produkte_switched"
diff --git a/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switched.po b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switched.po
new file mode 100644
index 0000000000..d6f6ea2369
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_CTYPE/dgettextTest_switched.po
@@ -0,0 +1,2 @@
+msgid "item"
+msgstr[0] "cProdukt_switched"
diff --git a/ext/gettext/tests/locale/en/LC_CTYPE/dngettextTest.mo b/ext/gettext/tests/locale/en/LC_CTYPE/dngettextTest.mo
new file mode 100644
index 0000000000..e9c63ef95f
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_CTYPE/dngettextTest.mo
Binary files differ
diff --git a/ext/gettext/tests/locale/en/LC_CTYPE/dngettextTest.po b/ext/gettext/tests/locale/en/LC_CTYPE/dngettextTest.po
new file mode 100644
index 0000000000..863e83cfd9
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_CTYPE/dngettextTest.po
@@ -0,0 +1,4 @@
+msgid "item"
+msgid_plural "items"
+msgstr[0] "cProdukt"
+msgstr[1] "cProdukte"
diff --git a/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest.mo b/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest.mo
new file mode 100644
index 0000000000..255e1e937a
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest.mo
Binary files differ
diff --git a/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest.po b/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest.po
new file mode 100644
index 0000000000..159a90ffeb
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest.po
@@ -0,0 +1,4 @@
+msgid "item"
+msgid_plural "items"
+msgstr[0] "Produkt"
+msgstr[1] "Produkte"
diff --git a/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest_switch.mo b/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest_switch.mo
new file mode 100644
index 0000000000..c2ab696a3e
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest_switch.mo
Binary files differ
diff --git a/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest_switch.po b/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest_switch.po
new file mode 100644
index 0000000000..b56d1890e0
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_MESSAGES/dgettextTest_switch.po
@@ -0,0 +1,4 @@
+msgid "item"
+msgid_plural "items"
+msgstr[0] "Produkt_switched"
+msgstr[1] "Produkte_switched"
diff --git a/ext/gettext/tests/locale/en/LC_MESSAGES/dngettextTest.mo b/ext/gettext/tests/locale/en/LC_MESSAGES/dngettextTest.mo
new file mode 100644
index 0000000000..255e1e937a
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_MESSAGES/dngettextTest.mo
Binary files differ
diff --git a/ext/gettext/tests/locale/en/LC_MESSAGES/dngettextTest.po b/ext/gettext/tests/locale/en/LC_MESSAGES/dngettextTest.po
new file mode 100644
index 0000000000..159a90ffeb
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_MESSAGES/dngettextTest.po
@@ -0,0 +1,4 @@
+msgid "item"
+msgid_plural "items"
+msgstr[0] "Produkt"
+msgstr[1] "Produkte"
diff --git a/ext/gettext/tests/locale/en/LC_MESSAGES/messages.mo b/ext/gettext/tests/locale/en/LC_MESSAGES/messages.mo
new file mode 100644
index 0000000000..335cbdde46
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/ext/gettext/tests/locale/en/LC_MESSAGES/messages.po b/ext/gettext/tests/locale/en/LC_MESSAGES/messages.po
new file mode 100644
index 0000000000..2faf01fc0f
--- /dev/null
+++ b/ext/gettext/tests/locale/en/LC_MESSAGES/messages.po
@@ -0,0 +1,15 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: gettext_basic.phpt:11
+msgid "Basic test"
+msgstr "A basic test"