feat: ファイル書き込み処理の基底クラスのテストを追加
This commit is contained in:
parent
a876178549
commit
eb82f45c8b
@ -2,7 +2,35 @@ import os
|
|||||||
import textwrap
|
import textwrap
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
from src.writer.file_writer import CsvWriter, JsonWriter
|
from src.writer.file_writer import CsvWriter, FileWriter, JsonWriter
|
||||||
|
|
||||||
|
|
||||||
|
class ConcreteFileWriter(FileWriter):
|
||||||
|
def write(self) -> str:
|
||||||
|
return super().write()
|
||||||
|
|
||||||
|
|
||||||
|
class ConcreteFileWriterAbstractMethodNotImplemented(FileWriter):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
class TestFileWriter:
|
||||||
|
|
||||||
|
def test_concrete_file_writer_instance_create(self):
|
||||||
|
concrete_file_writer = ConcreteFileWriter('', '')
|
||||||
|
assert isinstance(concrete_file_writer, FileWriter)
|
||||||
|
|
||||||
|
def test_concrete_file_writer_call_write_method(self):
|
||||||
|
concrete_file_writer = ConcreteFileWriter('', '')
|
||||||
|
concrete_file_writer.write()
|
||||||
|
|
||||||
|
def test_raise_abstract_class_do_not_create_instance(self):
|
||||||
|
with pytest.raises(TypeError):
|
||||||
|
FileWriter('', '')
|
||||||
|
|
||||||
|
def test_raise_concrete_file_writer_not_implemented_abstract_method(self):
|
||||||
|
with pytest.raises(TypeError):
|
||||||
|
ConcreteFileWriterAbstractMethodNotImplemented('', '')
|
||||||
|
|
||||||
|
|
||||||
class TestJsonFileWriter:
|
class TestJsonFileWriter:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user