| Index: grit/gather/muppet_strings_unittest.py
|
| ===================================================================
|
| --- grit/gather/muppet_strings_unittest.py (revision 0)
|
| +++ grit/gather/muppet_strings_unittest.py (revision 0)
|
| @@ -0,0 +1,66 @@
|
| +#!/usr/bin/python2.4
|
| +# Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +'''Unit tests for grit.gather.muppet_strings'''
|
| +
|
| +import os
|
| +import sys
|
| +if __name__ == '__main__':
|
| + sys.path.append(os.path.join(os.path.dirname(sys.argv[0]), '../..'))
|
| +
|
| +import unittest
|
| +
|
| +from grit.gather import muppet_strings
|
| +
|
| +class MuppetStringsUnittest(unittest.TestCase):
|
| + def testParsing(self):
|
| + original = '''<strings><BLA desc="Says hello">hello!</BLA><BINGO>YEEEESSS!!!</BINGO></strings>'''
|
| + gatherer = muppet_strings.MuppetStrings(original)
|
| + gatherer.Parse()
|
| + self.failUnless(len(gatherer.GetCliques()) == 2)
|
| + self.failUnless(gatherer.Translate('en').replace('\n', '') == original)
|
| +
|
| + def testEscapingAndLinebreaks(self):
|
| + original = ('''\
|
| +<strings>
|
| +<LINEBREAK desc="Howdie">Hello
|
| +there
|
| +how
|
| +are
|
| +you?</LINEBREAK> <ESCAPED meaning="bingo">4 < 6</ESCAPED>
|
| +</strings>''')
|
| + gatherer = muppet_strings.MuppetStrings(original)
|
| + gatherer.Parse()
|
| + self.failUnless(gatherer.GetCliques()[0].translateable)
|
| + self.failUnless(len(gatherer.GetCliques()) == 2)
|
| + self.failUnless(gatherer.GetCliques()[0].GetMessage().GetRealContent() ==
|
| + 'Hello\nthere\nhow\nare\nyou?')
|
| + self.failUnless(gatherer.GetCliques()[0].GetMessage().GetDescription() == 'Howdie')
|
| + self.failUnless(gatherer.GetCliques()[1].GetMessage().GetRealContent() ==
|
| + '4 < 6')
|
| + self.failUnless(gatherer.GetCliques()[1].GetMessage().GetMeaning() == 'bingo')
|
| +
|
| + def testPlaceholders(self):
|
| + original = "<strings><MESSAGE translateable='True'>Hello [![USER]!] how are you? [![HOUR]!]:[![MINUTE]!]</MESSAGE></strings>"
|
| + gatherer = muppet_strings.MuppetStrings(original)
|
| + gatherer.Parse()
|
| + self.failUnless(gatherer.GetCliques()[0].translateable)
|
| + msg = gatherer.GetCliques()[0].GetMessage()
|
| + self.failUnless(len(msg.GetPlaceholders()) == 3)
|
| + ph = msg.GetPlaceholders()[0]
|
| + self.failUnless(ph.GetOriginal() == '[![USER]!]')
|
| + self.failUnless(ph.GetPresentation() == 'USER')
|
| +
|
| + def testTranslateable(self):
|
| + original = "<strings><BINGO translateable='false'>Yo yo hi there</BINGO></strings>"
|
| + gatherer = muppet_strings.MuppetStrings(original)
|
| + gatherer.Parse()
|
| + msg = gatherer.GetCliques()[0].GetMessage()
|
| + self.failUnless(msg.GetRealContent() == "Yo yo hi there")
|
| + self.failUnless(not gatherer.GetCliques()[0].translateable)
|
| +
|
| +if __name__ == '__main__':
|
| + unittest.main()
|
| +
|
|
|
| Property changes on: grit/gather/muppet_strings_unittest.py
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|