- add third_party src.
[platform/framework/web/crosswalk.git] / src / tools / grit / grit / format / data_pack_unittest.py
1 #!/usr/bin/env python
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
4 # found in the LICENSE file.
5
6 '''Unit tests for grit.format.data_pack'''
7
8
9 import os
10 import sys
11 if __name__ == '__main__':
12   sys.path.append(os.path.join(os.path.dirname(__file__), '../..'))
13
14 import unittest
15
16 from grit.format import data_pack
17
18
19 class FormatDataPackUnittest(unittest.TestCase):
20   def testWriteDataPack(self):
21     expected = (
22         '\x04\x00\x00\x00'                  # header(version
23         '\x04\x00\x00\x00'                  #        no. entries,
24         '\x01'                              #        encoding)
25         '\x01\x00\x27\x00\x00\x00'          # index entry 1
26         '\x04\x00\x27\x00\x00\x00'          # index entry 4
27         '\x06\x00\x33\x00\x00\x00'          # index entry 6
28         '\x0a\x00\x3f\x00\x00\x00'          # index entry 10
29         '\x00\x00\x3f\x00\x00\x00'          # extra entry for the size of last
30         'this is id 4this is id 6')         # data
31     input = { 1: "", 4: "this is id 4", 6: "this is id 6", 10: "" }
32     output = data_pack.WriteDataPackToString(input, data_pack.UTF8)
33     self.failUnless(output == expected)
34
35
36 if __name__ == '__main__':
37   unittest.main()