summaryrefslogtreecommitdiffstats
path: root/src/php-gettext/tests/ParsingTest.php
diff options
context:
space:
mode:
authorChristian Weiske <cweiske@cweiske.de>2011-04-06 19:13:19 +0200
committerChristian Weiske <cweiske@cweiske.de>2011-04-06 19:13:19 +0200
commit7379805565815c576723b888a20af080248222da (patch)
tree498c98e8b6c43c2729349b7680c6a20efcfb98f3 /src/php-gettext/tests/ParsingTest.php
parent1e3cd8bf6ee636a5af692b57906612d6109849cb (diff)
parent12c77161aca2c7d76fa5154fa1f4e214106d834b (diff)
downloadSemanticScuttle-origin/quickform.zip
SemanticScuttle-origin/quickform.tar.gz
SemanticScuttle-origin/quickform.tar.bz2
Merge branch 'master' into quickformorigin/quickform
Conflicts: data/templates/bookmarks.tpl.php data/templates/sidebar.block.search.php data/templates/top.inc.php doc/developers/TODO src/SemanticScuttle/header.php
Diffstat (limited to 'src/php-gettext/tests/ParsingTest.php')
-rw-r--r--src/php-gettext/tests/ParsingTest.php43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/php-gettext/tests/ParsingTest.php b/src/php-gettext/tests/ParsingTest.php
new file mode 100644
index 0000000..9b350b2
--- /dev/null
+++ b/src/php-gettext/tests/ParsingTest.php
@@ -0,0 +1,43 @@
+<?php
+require_once('PHPUnit/Framework.php');
+//require_once('gettext.php');
+
+class ParsingTest extends PHPUnit_Framework_TestCase
+{
+ public function test_extract_plural_forms_header_from_po_header()
+ {
+ $parser = new gettext_reader(NULL);
+ // It defaults to a "Western-style" plural header.
+ $this->assertEquals(
+ 'nplurals=2; plural=n == 1 ? 0 : 1;',
+ $parser->extract_plural_forms_header_from_po_header(""));
+
+ // Extracting it from the middle of the header works.
+ $this->assertEquals(
+ 'nplurals=1; plural=0;',
+ $parser->extract_plural_forms_header_from_po_header(
+ "Content-type: text/html; charset=UTF-8\n"
+ ."Plural-Forms: nplurals=1; plural=0;\n"
+ ."Last-Translator: nobody\n"
+ ));
+
+ // It's also case-insensitive.
+ $this->assertEquals(
+ 'nplurals=1; plural=0;',
+ $parser->extract_plural_forms_header_from_po_header(
+ "PLURAL-forms: nplurals=1; plural=0;\n"
+ ));
+
+ // It falls back to default if it's not on a separate line.
+ $this->assertEquals(
+ 'nplurals=2; plural=n == 1 ? 0 : 1;',
+ $parser->extract_plural_forms_header_from_po_header(
+ "Content-type: text/html; charset=UTF-8" // note the missing \n here
+ ."Plural-Forms: nplurals=1; plural=0;\n"
+ ."Last-Translator: nobody\n"
+ ));
+
+ }
+
+}
+?>