#1714: update to use objects instead of uuids + tests

This commit is contained in:
Czar Echavez
2023-08-07 09:34:59 +01:00
parent 46c70ac084
commit 028211d288
8 changed files with 211 additions and 104 deletions

View File

@@ -4,18 +4,20 @@ from primaite.simulator.file_system.file_system import FileSystem
def test_create_folder_and_file():
"""Test creating a folder and a file."""
file_system = FileSystem()
folder = file_system.create_folder()
folder = file_system.create_folder(folder_name="test_folder")
assert len(file_system.get_folders()) is 1
file_system.create_file(file_size=10, folder_uuid=folder.uuid)
file_system.create_file(file_name="test_file", file_size=10, folder_uuid=folder.uuid)
assert len(file_system.get_folders()[0].get_files()) is 1
assert file_system.get_folders()[0].get_files()[0].get_file_name() is "test_file"
assert file_system.get_folders()[0].get_files()[0].get_file_size() is 10
def test_create_file():
"""Tests that creating a file without a folder creates a folder and sets that as the file's parent."""
file_system = FileSystem()
file = file_system.create_file(file_size=10)
file = file_system.create_file(file_name="test_file", file_size=10)
assert len(file_system.get_folders()) is 1
assert file_system.get_folders()[0].get_file(file.uuid) is file
@@ -24,38 +26,38 @@ def test_delete_file():
"""Tests that a file can be deleted."""
file_system = FileSystem()
file = file_system.create_file(file_size=10)
file = file_system.create_file(file_name="test_file", file_size=10)
assert len(file_system.get_folders()) is 1
assert file_system.get_folders()[0].get_file(file.uuid) is file
file_system.delete_file(file.uuid)
file_system.delete_file(file=file)
assert len(file_system.get_folders()) is 1
assert len(file_system.get_folders()[0].get_files()) is 0
def test_delete_folder():
file_system = FileSystem()
folder = file_system.create_folder()
folder = file_system.create_folder(folder_name="test_folder")
assert len(file_system.get_folders()) is 1
file_system.delete_folder(folder.uuid)
file_system.delete_folder(folder)
assert len(file_system.get_folders()) is 0
def test_move_file():
"""Tests the file move function."""
file_system = FileSystem()
src_folder = file_system.create_folder()
src_folder = file_system.create_folder(folder_name="test_folder_1")
assert len(file_system.get_folders()) is 1
target_folder = file_system.create_folder()
target_folder = file_system.create_folder(folder_name="test_folder_2")
assert len(file_system.get_folders()) is 2
file = file_system.create_file(file_size=10, folder_uuid=src_folder.uuid)
file = file_system.create_file(file_name="test_file", file_size=10, folder_uuid=src_folder.uuid)
assert len(file_system.get_folder_by_id(src_folder.uuid).get_files()) is 1
assert len(file_system.get_folder_by_id(target_folder.uuid).get_files()) is 0
file_system.move_file(src_folder.uuid, target_folder.uuid, file.uuid)
file_system.move_file(file=file, src_folder=src_folder, target_folder=target_folder)
assert len(file_system.get_folder_by_id(src_folder.uuid).get_files()) is 0
assert len(file_system.get_folder_by_id(target_folder.uuid).get_files()) is 1
@@ -64,17 +66,17 @@ def test_move_file():
def test_copy_file():
"""Tests the file copy function."""
file_system = FileSystem()
src_folder = file_system.create_folder()
src_folder = file_system.create_folder(folder_name="test_folder_1")
assert len(file_system.get_folders()) is 1
target_folder = file_system.create_folder()
target_folder = file_system.create_folder(folder_name="test_folder_2")
assert len(file_system.get_folders()) is 2
file = file_system.create_file(file_size=10, folder_uuid=src_folder.uuid)
file = file_system.create_file(file_name="test_file", file_size=10, folder_uuid=src_folder.uuid)
assert len(file_system.get_folder_by_id(src_folder.uuid).get_files()) is 1
assert len(file_system.get_folder_by_id(target_folder.uuid).get_files()) is 0
file_system.copy_file(src_folder.uuid, target_folder.uuid, file.uuid)
file_system.copy_file(file=file, src_folder=src_folder, target_folder=target_folder)
assert len(file_system.get_folder_by_id(src_folder.uuid).get_files()) is 1
assert len(file_system.get_folder_by_id(target_folder.uuid).get_files()) is 1
@@ -83,10 +85,10 @@ def test_copy_file():
def test_serialisation():
"""Test to check that the object serialisation works correctly."""
file_system = FileSystem()
folder = file_system.create_folder()
folder = file_system.create_folder(folder_name="test_folder")
assert len(file_system.get_folders()) is 1
file_system.create_file(file_size=10, folder_uuid=folder.uuid)
file_system.create_file(file_name="test_file", file_size=10, folder_uuid=folder.uuid)
assert len(file_system.get_folders()[0].get_files()) is 1
serialised_file_sys = file_system.model_dump_json()

View File

@@ -4,20 +4,20 @@ from primaite.simulator.file_system.file_system_file_type import FileSystemFileT
def test_file_type():
"""Tests tha the FileSystemFile type is set correctly."""
file = FileSystemFile(file_size=1.5, file_type=FileSystemFileType.TBD)
assert file.get_file_type() is FileSystemFileType.TBD
file = FileSystemFile(item_name="test", file_type=FileSystemFileType.DOC)
assert file.get_file_type() is FileSystemFileType.DOC
def test_get_file_size():
"""Tests that the file size is being returned properly."""
file = FileSystemFile(file_size=1.5, file_type=FileSystemFileType.TBD)
file = FileSystemFile(item_name="test", item_size=1.5)
assert file.get_file_size() is 1.5
def test_serialisation():
"""Test to check that the object serialisation works correctly."""
file = FileSystemFile(file_size=1.5, file_type=FileSystemFileType.TBD)
file = FileSystemFile(item_name="test", item_size=1.5, file_type=FileSystemFileType.DOC)
serialised_file = file.model_dump_json()
deserialised_file = FileSystemFile().model_validate_json(serialised_file)
deserialised_file = FileSystemFile(item_name="test").model_validate_json(serialised_file)
assert file == deserialised_file

View File

@@ -5,25 +5,25 @@ from primaite.simulator.file_system.file_system_folder import FileSystemFolder
def test_adding_removing_file():
"""Test the adding and removing of a file from a folder."""
folder = FileSystemFolder()
folder = FileSystemFolder(item_name="test")
file = FileSystemFile(file_size=10, file_type=FileSystemFileType.TBD)
file = FileSystemFile(item_name="test_file", item_size=10, file_type=FileSystemFileType.DOC)
folder.add_file(file)
assert folder.get_folder_size() is 10
assert len(folder.get_files()) is 1
folder.remove_file(file_id=file.uuid)
folder.remove_file(file)
assert folder.get_folder_size() is 0
assert len(folder.get_files()) is 0
def test_get_file_by_id():
"""Test to make sure that the correct file is returned."""
folder = FileSystemFolder()
folder = FileSystemFolder(item_name="test")
file = FileSystemFile(file_size=10, file_type=FileSystemFileType.TBD)
file2 = FileSystemFile(file_size=10, file_type=FileSystemFileType.TBD)
file = FileSystemFile(item_name="test_file", item_size=10, file_type=FileSystemFileType.DOC)
file2 = FileSystemFile(item_name="test_file_2", item_size=10, file_type=FileSystemFileType.DOC)
folder.add_file(file)
folder.add_file(file2)
@@ -35,7 +35,7 @@ def test_get_file_by_id():
def test_folder_quarantine_state():
"""Tests the changing of folder quarantine status."""
folder = FileSystemFolder()
folder = FileSystemFolder(item_name="test")
assert folder.quarantine_status() is False
@@ -48,12 +48,12 @@ def test_folder_quarantine_state():
def test_serialisation():
"""Test to check that the object serialisation works correctly."""
folder = FileSystemFolder()
file = FileSystemFile(file_size=10, file_type=FileSystemFileType.TBD)
folder = FileSystemFolder(item_name="test")
file = FileSystemFile(item_name="test_file", item_size=10, file_type=FileSystemFileType.DOC)
folder.add_file(file)
serialised_folder = folder.model_dump_json()
deserialised_folder = FileSystemFolder().model_validate_json(serialised_folder)
deserialised_folder = FileSystemFolder(item_name="test").model_validate_json(serialised_folder)
assert folder == deserialised_folder