12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- # Copyright 2018 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
- import json
- import os
- import shutil
- import tempfile
- import unittest
- class CommandLineTest(unittest.TestCase):
- # pylint: disable=super-with-arguments
- def __init__(self, methodName, module):
- super(CommandLineTest, self).__init__(methodName)
- self._module = module
- # pylint: disable=super-with-arguments
- def setUp(self):
- self.temp_dir = tempfile.mkdtemp(prefix='common_merge_script_tests')
- def tearDown(self):
- shutil.rmtree(self.temp_dir)
- def test_accepts_task_output_dir(self):
- task_output_dir = os.path.join(self.temp_dir, 'task_output_dir')
- shard0_dir = os.path.join(task_output_dir, '0')
- os.makedirs(shard0_dir)
- summary_json = os.path.join(task_output_dir, 'summary.json')
- with open(summary_json, 'w') as summary_file:
- summary_contents = {
- u'shards': [
- {
- u'state': u'COMPLETED',
- },
- ],
- }
- json.dump(summary_contents, summary_file)
- shard0_json = os.path.join(shard0_dir, 'output.json')
- with open(shard0_json, 'w') as shard0_file:
- json.dump({}, shard0_file)
- output_json = os.path.join(self.temp_dir, 'merged.json')
- raw_args = [
- '--task-output-dir', task_output_dir,
- '--summary-json', summary_json,
- '--output-json', output_json,
- shard0_json,
- ]
- self.assertEqual(0, self._module.main(raw_args))
|