def test_working_dir_missing(self, mock_isdir, mock_makedirs): """ Test that when the working directory does not currently exist, it is created """ # Setup working_dir = '/some/working/dir' mock_isdir.return_value = False # Test export_utils.export_errata_json(working_dir, []) mock_isdir.assert_called_once_with(working_dir) mock_makedirs.assert_called_once_with(working_dir)
def test_export_errata_json(self, mock_isdir, mock_makedirs, mock_open, mock_dump): """ Test that errata units are correctly exported as JSON documents """ # Setup unit_key = {'id': 'RHEA-8675309'} unit_metadata = {'key': 'value', '_to_remove': 'value2'} errata = AssociatedUnit(ids.TYPE_ID_ERRATA, unit_key, unit_metadata.copy(), None, None, None, None, None) unit_metadata.pop('_to_remove') expected_dict = {'unit_key': unit_key, 'unit_metadata': unit_metadata} expected_path = '/working/dir/RHEA-8675309.json' # Test export_utils.export_errata_json('/working/dir', [errata]) mock_isdir.assert_called_once_with('/working/dir') self.assertEqual(0, mock_makedirs.call_count) self.assertEqual(1, mock_open.call_count) self.assertEqual(1, mock_dump.call_count) mock_open.assert_called_once_with(expected_path, 'w') self.assertEqual(expected_dict, mock_dump.call_args[0][0])