Index: tools/grit/grit/grd_reader_unittest.py |
diff --git a/tools/grit/grit/grd_reader_unittest.py b/tools/grit/grit/grd_reader_unittest.py |
index fd4d08bfbdc803820b8e0b291039f46c39d08dd1..c782d02df45f520f18b1f4204d80f6ef58205c16 100755 |
--- a/tools/grit/grit/grd_reader_unittest.py |
+++ b/tools/grit/grit/grd_reader_unittest.py |
@@ -211,6 +211,13 @@ class GrdReaderUnittest(unittest.TestCase): |
self.failUnless(hello.GetCliques()[0].GetId() == 'IDS_HELLO') |
def testPartInclusion(self): |
+ arbitrary_path_grd = u'''\ |
+ <grit-part> |
+ <message name="IDS_TEST5" desc="test5">test5</message> |
+ </grit-part>''' |
+ arbitrary_path_grd_file = os.path.join( |
+ util.TempDir({'arbitrary_path.grp': arbitrary_path_grd}).GetPath(), |
+ 'arbitrary_path.grp') |
top_grd = u'''\ |
<grit latest_public_release="2" current_release="3"> |
<release seq="3"> |
@@ -219,9 +226,10 @@ class GrdReaderUnittest(unittest.TestCase): |
test |
</message> |
<part file="sub.grp" /> |
+ <part file="%s" /> |
</messages> |
</release> |
- </grit>''' |
+ </grit>''' % arbitrary_path_grd_file |
sub_grd = u'''\ |
<grit-part> |
<message name="IDS_TEST2" desc="test2">test2</message> |
@@ -252,9 +260,14 @@ class GrdReaderUnittest(unittest.TestCase): |
test3 |
</message> |
</part> |
+ <part file="%s"> |
+ <message desc="test5" name="IDS_TEST5"> |
+ test5 |
+ </message> |
+ </part> |
</messages> |
</release> |
- </grit>''' |
+ </grit>''' % arbitrary_path_grd_file |
with util.TempDir({'sub.grp': sub_grd, |
'subsub.grp': subsub_grd}) as temp_dir: |
output = grd_reader.Parse(StringIO.StringIO(top_grd), temp_dir.GetPath()) |
@@ -272,6 +285,7 @@ class GrdReaderUnittest(unittest.TestCase): |
(exception.UnexpectedContent, u'<part file="x">fnord</part>'), |
(exception.UnexpectedChild, |
u'<part file="x"><output filename="x" type="y" /></part>'), |
+ (exception.FileNotFound, u'<part file="yet_created_x" />'), |
] |
for raises, data in part_failures: |
data = StringIO.StringIO(template % data) |