def test_save(self, _format, mocker): mocky = mocker.patch.object(BookmarksConverter, "_dispatcher") method = f"_save_to_{_format}" instance = BookmarksConverter("filepath") instance._export = _format instance._format = _format instance.save() mocky.assert_called_once_with(method)
def test_dispatcher(self, _format, method, mocker): lower_format = _format.lower() mocky = mocker.patch.object(BookmarksConverter, method) instance = BookmarksConverter("filepath") instance._export = lower_format instance._format = lower_format instance._dispatcher(method) mocky.assert_called_once()
def test_save_to_html(self, result_bookmark_files): result_file = result_bookmark_files["from_firefox_json.html"] instance = BookmarksConverter(result_file) with open(result_file, "r", encoding="utf-8") as file_: instance.bookmarks = file_.read() output_file = Path(result_file).with_name("output_file.html") instance.output_filepath = output_file # setting the _export and _format attributes manually. instance._export = "html" instance._format = "html" instance.save() assert cmp(result_file, output_file, shallow=False) output_file.unlink()
def test_dispatcher_error(self): instance = BookmarksConverter("filepath") instance._format = "wrong format" with pytest.raises(TypeError) as e: instance._dispatcher("method")