Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(19)

Side by Side Diff: grit/node/io_unittest.py

Issue 9965022: Allow substitution of messages as variables in other messages. (Closed) Base URL: https://grit-i18n.googlecode.com/svn/trunk
Patch Set: Fix unit tests for policy writers. Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « grit/node/base.py ('k') | grit/node/message.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 '''Unit tests for io.FileNode''' 6 '''Unit tests for io.FileNode'''
7 7
8 import os 8 import os
9 import sys 9 import sys
10 if __name__ == '__main__': 10 if __name__ == '__main__':
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 </translations> 55 </translations>
56 <release seq="3"> 56 <release seq="3">
57 <messages> 57 <messages>
58 <message name="ID_HELLO">Hello!</message> 58 <message name="ID_HELLO">Hello!</message>
59 <message name="ID_HELLO_USER">Hello <ph name="USERNAME">%s<ex>Joi</e x></ph></message> 59 <message name="ID_HELLO_USER">Hello <ph name="USERNAME">%s<ex>Joi</e x></ph></message>
60 </messages> 60 </messages>
61 </release> 61 </release>
62 </grit>''' 62 </grit>'''
63 grd = grd_reader.Parse(StringIO.StringIO(xml), 63 grd = grd_reader.Parse(StringIO.StringIO(xml),
64 util.PathFromRoot('grit/testdata')) 64 util.PathFromRoot('grit/testdata'))
65 grd.SetOutputContext('en', {})
65 grd.RunGatherers(recursive=True) 66 grd.RunGatherers(recursive=True)
66 self.VerifyCliquesContainEnglishAndFrenchAndNothingElse(grd.GetCliques()) 67 self.VerifyCliquesContainEnglishAndFrenchAndNothingElse(grd.GetCliques())
67 68
68 def testIffyness(self): 69 def testIffyness(self):
69 grd = grd_reader.Parse(StringIO.StringIO('''<?xml version="1.0" encoding="UT F-8"?> 70 grd = grd_reader.Parse(StringIO.StringIO('''<?xml version="1.0" encoding="UT F-8"?>
70 <grit latest_public_release="2" source_lang_id="en-US" current_release="3" base_dir="."> 71 <grit latest_public_release="2" source_lang_id="en-US" current_release="3" base_dir=".">
71 <translations> 72 <translations>
72 <if expr="lang == 'fr'"> 73 <if expr="lang == 'fr'">
73 <file path="generated_resources_fr.xtb" lang="fr" /> 74 <file path="generated_resources_fr.xtb" lang="fr" />
74 </if> 75 </if>
(...skipping 26 matching lines...) Expand all
101 <release seq="3"> 102 <release seq="3">
102 <messages> 103 <messages>
103 <message name="ID_HELLO">Hello!</message> 104 <message name="ID_HELLO">Hello!</message>
104 <message name="ID_HELLO_USER">Hello <ph name="USERNAME">%s<ex> 105 <message name="ID_HELLO_USER">Hello <ph name="USERNAME">%s<ex>
105 Joi</ex></ph></message> 106 Joi</ex></ph></message>
106 </messages> 107 </messages>
107 </release> 108 </release>
108 </grit>''' 109 </grit>'''
109 grd = grd_reader.Parse(StringIO.StringIO(xml), 110 grd = grd_reader.Parse(StringIO.StringIO(xml),
110 util.PathFromRoot('grit/testdata')) 111 util.PathFromRoot('grit/testdata'))
112 grd.SetOutputContext('en', {})
111 grd.RunGatherers(recursive=True) 113 grd.RunGatherers(recursive=True)
112 self.VerifyCliquesContainEnglishAndFrenchAndNothingElse(grd.GetCliques()) 114 self.VerifyCliquesContainEnglishAndFrenchAndNothingElse(grd.GetCliques())
113 115
114 def testConditionalOutput(self): 116 def testConditionalOutput(self):
115 xml = '''<?xml version="1.0" encoding="UTF-8"?> 117 xml = '''<?xml version="1.0" encoding="UTF-8"?>
116 <grit latest_public_release="2" source_lang_id="en-US" current_release="3" 118 <grit latest_public_release="2" source_lang_id="en-US" current_release="3"
117 base_dir="."> 119 base_dir=".">
118 <outputs> 120 <outputs>
119 <output filename="resource.h" type="rc_header" /> 121 <output filename="resource.h" type="rc_header" />
120 <output filename="en/generated_resources.rc" type="rc_all" 122 <output filename="en/generated_resources.rc" type="rc_all"
121 lang="en" /> 123 lang="en" />
122 <if expr="pp_if('NOT_TRUE')"> 124 <if expr="pp_if('NOT_TRUE')">
123 <output filename="de/generated_resources.rc" type="rc_all" 125 <output filename="de/generated_resources.rc" type="rc_all"
124 lang="de" /> 126 lang="de" />
125 </if> 127 </if>
126 </outputs> 128 </outputs>
127 <release seq="3"> 129 <release seq="3">
128 <messages> 130 <messages>
129 <message name="ID_HELLO">Hello!</message> 131 <message name="ID_HELLO">Hello!</message>
130 </messages> 132 </messages>
131 </release> 133 </release>
132 </grit>''' 134 </grit>'''
133 grd = grd_reader.Parse(StringIO.StringIO(xml), 135 grd = grd_reader.Parse(StringIO.StringIO(xml),
134 util.PathFromRoot('grit/test/data')) 136 util.PathFromRoot('grit/test/data'))
137 grd.SetOutputContext('en', {})
135 grd.RunGatherers(recursive=True) 138 grd.RunGatherers(recursive=True)
136 outputs = grd.GetChildrenOfType(io.OutputNode) 139 outputs = grd.GetChildrenOfType(io.OutputNode)
137 self.failUnless(outputs[0].SatisfiesOutputCondition()) 140 self.failUnless(outputs[0].SatisfiesOutputCondition())
138 self.failUnless(outputs[0].GetType() == 'rc_header') 141 self.failUnless(outputs[0].GetType() == 'rc_header')
139 self.failUnless(outputs[1].SatisfiesOutputCondition()) 142 self.failUnless(outputs[1].SatisfiesOutputCondition())
140 self.failUnless(outputs[1].GetType() == 'rc_all') 143 self.failUnless(outputs[1].GetType() == 'rc_all')
141 self.failUnless(not outputs[2].SatisfiesOutputCondition()) 144 self.failUnless(not outputs[2].SatisfiesOutputCondition())
142 self.failUnless(outputs[2].GetType() == 145 self.failUnless(outputs[2].GetType() ==
143 'output_condition_not_satisfied_rc_all') 146 'output_condition_not_satisfied_rc_all')
144 147
145 148
146 if __name__ == '__main__': 149 if __name__ == '__main__':
147 unittest.main() 150 unittest.main()
OLDNEW
« no previous file with comments | « grit/node/base.py ('k') | grit/node/message.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698