| Index: grit/node/message_unittest.py
|
| ===================================================================
|
| --- grit/node/message_unittest.py (revision 0)
|
| +++ grit/node/message_unittest.py (revision 0)
|
| @@ -0,0 +1,62 @@
|
| +#!/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.node.message'''
|
| +
|
| +
|
| +import os
|
| +import sys
|
| +if __name__ == '__main__':
|
| + sys.path.append(os.path.join(os.path.dirname(sys.argv[0]), '../..'))
|
| +
|
| +import unittest
|
| +import StringIO
|
| +
|
| +from grit.node import message
|
| +from grit import grd_reader
|
| +from grit import tclib
|
| +
|
| +class MessageUnittest(unittest.TestCase):
|
| + def testMessage(self):
|
| + buf = StringIO.StringIO('''<message name="IDS_GREETING"
|
| + desc="Printed to greet the currently logged in user">
|
| + Hello <ph name="USERNAME">%s<ex>Joi</ex></ph>, how are you doing today?
|
| + </message>''')
|
| + res = grd_reader.Parse(buf, flexible_root = True)
|
| + cliques = res.GetCliques()
|
| + content = cliques[0].GetMessage().GetPresentableContent()
|
| + self.failUnless(content == 'Hello USERNAME, how are you doing today?')
|
| +
|
| + def testMessageWithWhitespace(self):
|
| + buf = StringIO.StringIO('<message name="IDS_BLA" desc="">'
|
| + '\'\'\' Hello there <ph name="USERNAME">%s</ph> \'\'\''
|
| + '</message>')
|
| + res = grd_reader.Parse(buf, flexible_root = True)
|
| + content = res.GetCliques()[0].GetMessage().GetPresentableContent()
|
| + self.failUnless(content == 'Hello there USERNAME')
|
| + self.failUnless(res.ws_at_start == ' ')
|
| + self.failUnless(res.ws_at_end == ' ')
|
| +
|
| + def testConstruct(self):
|
| + msg = tclib.Message(text=" Hello USERNAME, how are you? BINGO\t\t",
|
| + placeholders=[tclib.Placeholder('USERNAME', '%s', 'Joi'),
|
| + tclib.Placeholder('BINGO', '%d', '11')])
|
| + msg_node = message.MessageNode.Construct(None, msg, 'BINGOBONGO')
|
| + self.failUnless(msg_node.children[0].name == 'ph')
|
| + self.failUnless(msg_node.children[0].children[0].name == 'ex')
|
| + self.failUnless(msg_node.children[0].children[0].GetCdata() == 'Joi')
|
| + self.failUnless(msg_node.children[1].children[0].GetCdata() == '11')
|
| + self.failUnless(msg_node.ws_at_start == ' ')
|
| + self.failUnless(msg_node.ws_at_end == '\t\t')
|
| +
|
| + def testUnicodeConstruct(self):
|
| + text = u'Howdie \u00fe'
|
| + msg = tclib.Message(text=text)
|
| + msg_node = message.MessageNode.Construct(None, msg, 'BINGOBONGO')
|
| + msg_from_node = msg_node.GetCdata()
|
| + self.failUnless(msg_from_node == text)
|
| +
|
| +if __name__ == '__main__':
|
| + unittest.main()
|
|
|
| Property changes on: grit/node/message_unittest.py
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|