27 lines
785 B
Python
27 lines
785 B
Python
#!/usr/bin/env python3
|
|
# coding=utf-8
|
|
|
|
from pathlib import Path
|
|
from unittest.mock import MagicMock
|
|
|
|
import praw
|
|
import pytest
|
|
|
|
from bdfr.archiver import Archiver
|
|
|
|
|
|
@pytest.mark.online
|
|
@pytest.mark.reddit
|
|
@pytest.mark.parametrize(('test_submission_id', 'test_format'), (
|
|
('m3reby', 'xml'),
|
|
('m3reby', 'json'),
|
|
('m3reby', 'yaml'),
|
|
))
|
|
def test_write_submission_json(test_submission_id: str, tmp_path: Path, test_format: str, reddit_instance: praw.Reddit):
|
|
archiver_mock = MagicMock()
|
|
archiver_mock.args.format = test_format
|
|
test_path = Path(tmp_path, 'test')
|
|
test_submission = reddit_instance.submission(id=test_submission_id)
|
|
archiver_mock.file_name_formatter.format_path.return_value = test_path
|
|
Archiver.write_entry(archiver_mock, test_submission)
|