Bug 1437950 - Update python-fluent to 0.6.3. r?pike draft
authorZibi Braniecki <zbraniecki@mozilla.com>
Tue, 13 Feb 2018 09:45:48 -0800
changeset 754480 488f997b3ecbf2e8d51b616f84ee84274ec5671e
parent 754160 6d8f470b2579e7570f14e3db557264dc075dd654
push id98896
push userbmo:gandalf@aviary.pl
push dateTue, 13 Feb 2018 17:45:54 +0000
reviewerspike
bugs1437950
milestone60.0a1
Bug 1437950 - Update python-fluent to 0.6.3. r?pike MozReview-Commit-ID: IWSaQYAMyua
third_party/python/fluent/fluent/migrate/context.py
--- a/third_party/python/fluent/fluent/migrate/context.py
+++ b/third_party/python/fluent/fluent/migrate/context.py
@@ -249,30 +249,35 @@ class MergeContext(object):
         """Get an entity value from a localized legacy source.
 
         Used by the `Source` transform.
         """
         resource = self.localization_resources[path]
         return resource.get(key, None)
 
     def messages_equal(self, res1, res2):
-        """Compare messages of two FTL resources.
+        """Compare messages and terms of two FTL resources.
 
-        Uses FTL.BaseNode.equals to compare all messages in two FTL resources.
+        Uses FTL.BaseNode.equals to compare all messages/terms
+        in two FTL resources.
         If the order or number of messages differ, the result is also False.
         """
         def message_id(message):
             "Return the message's identifer name for sorting purposes."
             return message.id.name
 
         messages1 = sorted(
-            (entry for entry in res1.body if isinstance(entry, FTL.Message)),
+            (entry for entry in res1.body
+             if isinstance(entry, FTL.Message)
+                or isinstance(entry, FTL.Term)),
             key=message_id)
         messages2 = sorted(
-            (entry for entry in res2.body if isinstance(entry, FTL.Message)),
+            (entry for entry in res2.body
+             if isinstance(entry, FTL.Message)
+                or isinstance(entry, FTL.Term)),
             key=message_id)
         for msg1, msg2 in zip_longest(messages1, messages2):
             if msg1 is None or msg2 is None:
                 return False
             if not msg1.equals(msg2):
                 return False
         return True