json_data_generator_test.py 1023 B

1234567891011121314151617181920212223242526272829303132
  1. #!/usr/bin/env python3
  2. # Copyright 2022 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. import sys
  6. import os
  7. sys.path += [os.path.dirname(os.path.dirname(__file__))]
  8. from json_data_generator.generator import JSONDataGenerator
  9. import unittest
  10. class JSONDataGeneratorTest(unittest.TestCase):
  11. def assertEqualToFile(self, value, filename):
  12. with open(filename, 'r') as f:
  13. self.maxDiff = None
  14. self.assertEqual(value, f.read())
  15. def setUp(self):
  16. self.generator = JSONDataGenerator('test')
  17. self.generator.AddJSONFilesToModel(
  18. ['test/test_data1.json5', 'test/test_data2.json5'])
  19. def testFileGeneration(self):
  20. generated_content = self.generator.RenderTemplate(
  21. 'test/template.test.jinja', 'test/jinja_helper.py')
  22. self.assertEqualToFile(generated_content, 'test/expected.generated')
  23. if __name__ == '__main__':
  24. unittest.main()