def test_dump_nplurals(self):
        po_file = PoFile()
        entry = po_file.add_entry("message", "plural")
        entry.add_location("filename.py", 42)
        self.assertEqual("""msgid "message"
msgid_plural "plural"
msgstr[0] ""
msgstr[1] ""
""", po_file.dumps(include_locations=False, prune_obsoletes=False))
        po_file.add_header_field("Plural-Forms", "nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;")
        self.assertEqual("""msgid ""
msgstr ""
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\\n"

msgid "message"
msgid_plural "plural"
msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
""", po_file.dumps(include_locations=False, prune_obsoletes=False))
    def test_dump_nplurals(self):
        po_file = PoFile()
        entry = po_file.add_entry("message", "plural")
        entry.add_location("filename.py", 42)
        self.assertEqual(
            """msgid "message"
msgid_plural "plural"
msgstr[0] ""
msgstr[1] ""
""", po_file.dumps(include_locations=False, prune_obsoletes=False))
        po_file.add_header_field(
            "Plural-Forms",
            "nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;")
        self.assertEqual(
            """msgid ""
msgstr ""
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\\n"

msgid "message"
msgid_plural "plural"
msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
""", po_file.dumps(include_locations=False, prune_obsoletes=False))
 def test_nplurals(self):
     po_file = PoFile()
     po_file.add_header_field("Plural-Forms", "nplurals=2; plural=(n > 1)")
     self.assertEqual(2, po_file.get_nplurals())
 def test_header_overwrite(self):
     po_file = PoFile()
     po_file.add_header_field("Language", "fr")
     po_file.add_header_field("Language", "en")
     self.assertEqual([("Language", "en")], po_file.header_fields)
 def test_header(self):
     po_file = PoFile()
     po_file.add_header_field("Language", "fr")
     po_file.add_header_field("MIME-Version", "1.0")
     self.assertEqual([("Language", "fr"), ("MIME-Version", "1.0")], po_file.header_fields)
 def test_nplurals(self):
     po_file = PoFile()
     po_file.add_header_field("Plural-Forms", "nplurals=2; plural=(n > 1)")
     self.assertEqual(2, po_file.get_nplurals())
 def test_header_overwrite(self):
     po_file = PoFile()
     po_file.add_header_field("Language", "fr")
     po_file.add_header_field("Language", "en")
     self.assertEqual([("Language", "en")], po_file.header_fields)
 def test_header(self):
     po_file = PoFile()
     po_file.add_header_field("Language", "fr")
     po_file.add_header_field("MIME-Version", "1.0")
     self.assertEqual([("Language", "fr"), ("MIME-Version", "1.0")],
                      po_file.header_fields)