test_pbr_json.py 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. # Licensed under the Apache License, Version 2.0 (the "License"); you may
  2. # not use this file except in compliance with the License. You may obtain
  3. # a copy of the License at
  4. #
  5. # http://www.apache.org/licenses/LICENSE-2.0
  6. #
  7. # Unless required by applicable law or agreed to in writing, software
  8. # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  9. # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  10. # License for the specific language governing permissions and limitations
  11. # under the License.
  12. try:
  13. from unittest import mock
  14. except ImportError:
  15. import mock
  16. from pbr import pbr_json
  17. from pbr.tests import base
  18. class TestJsonContent(base.BaseTestCase):
  19. @mock.patch('pbr.git._run_git_functions', return_value=True)
  20. @mock.patch('pbr.git.get_git_short_sha', return_value="123456")
  21. @mock.patch('pbr.git.get_is_release', return_value=True)
  22. def test_content(self, mock_get_is, mock_get_git, mock_run):
  23. cmd = mock.Mock()
  24. pbr_json.write_pbr_json(cmd, "basename", "pbr.json")
  25. cmd.write_file.assert_called_once_with(
  26. 'pbr',
  27. 'pbr.json',
  28. '{"git_version": "123456", "is_release": true}'
  29. )