Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / tools / grit / grit / format / data_pack_unittest.py
index d210c99..f6e9edc 100644 (file)
@@ -28,10 +28,37 @@ class FormatDataPackUnittest(unittest.TestCase):
         '\x0a\x00\x3f\x00\x00\x00'          # index entry 10
         '\x00\x00\x3f\x00\x00\x00'          # extra entry for the size of last
         'this is id 4this is id 6')         # data
-    input = { 1: "", 4: "this is id 4", 6: "this is id 6", 10: "" }
+    input = {1: '', 4: 'this is id 4', 6: 'this is id 6', 10: ''}
     output = data_pack.WriteDataPackToString(input, data_pack.UTF8)
     self.failUnless(output == expected)
 
+  def testRePackUnittest(self):
+    expected_with_whitelist = {
+        1: 'Never gonna', 10: 'give you up', 20: 'Never gonna let',
+        30: 'you down', 40: 'Never', 50: 'gonna run around and',
+        60: 'desert you'}
+    expected_without_whitelist = {
+        1: 'Never gonna', 10: 'give you up', 20: 'Never gonna let', 65: 'Close',
+        30: 'you down', 40: 'Never', 50: 'gonna run around and', 4: 'click',
+        60: 'desert you', 6: 'chirr', 32: 'oops, try again', 70: 'Awww, snap!'}
+    inputs = [{1: 'Never gonna', 4: 'click', 6: 'chirr', 10: 'give you up'},
+              {20: 'Never gonna let', 30: 'you down', 32: 'oops, try again'},
+              {40: 'Never', 50: 'gonna run around and', 60: 'desert you'},
+              {65: 'Close', 70: 'Awww, snap!'}]
+    whitelist = [1, 10, 20, 30, 40, 50, 60]
+    inputs = [data_pack.DataPackContents(input, data_pack.UTF8) for input
+              in inputs]
+
+    # RePack using whitelist
+    output, _ = data_pack.RePackFromDataPackStrings(inputs, whitelist)
+    self.assertDictEqual(expected_with_whitelist, output,
+                         'Incorrect resource output')
+
+    # RePack a None whitelist
+    output, _ = data_pack.RePackFromDataPackStrings(inputs, None)
+    self.assertDictEqual(expected_without_whitelist, output,
+                         'Incorrect resource output')
+
 
 if __name__ == '__main__':
   unittest.main()