#1714: conver file and folder lists to dicts + fixing and adding a few more tests

This commit is contained in:
Czar Echavez
2023-08-07 14:49:59 +01:00
parent b58a3a3e24
commit 554619e4b4
6 changed files with 128 additions and 40 deletions

View File

@@ -1,4 +1,5 @@
from primaite.simulator.file_system.file_system import FileSystem
from primaite.simulator.file_system.file_system_folder import FileSystemFolder
def test_create_folder_and_file():
@@ -7,10 +8,11 @@ def test_create_folder_and_file():
folder = file_system.create_folder(folder_name="test_folder")
assert len(file_system.get_folders()) is 1
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() == 10
file = file_system.create_file(file_name="test_file", file_size=10, folder_uuid=folder.uuid)
assert len(file_system.get_folder_by_id(folder.uuid).get_files()) is 1
assert file_system.get_file_by_id(file.uuid).get_file_name() is "test_file"
assert file_system.get_file_by_id(file.uuid).get_file_size() == 10
def test_create_file():
@@ -19,7 +21,7 @@ def test_create_file():
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
assert file_system.get_folder_by_name("root").get_file(file.uuid) is file
def test_delete_file():
@@ -28,11 +30,31 @@ def test_delete_file():
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
folder_id = list(file_system.get_folders().keys())[0]
folder = file_system.get_folder_by_id(folder_id)
assert folder.get_file(file.uuid) is file
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
assert len(file_system.get_folder_by_id(folder.uuid).get_files()) is 0
def test_delete_non_existent_file():
"""Tests deleting a non existent file."""
file_system = FileSystem()
file = file_system.create_file(file_name="test_file", file_size=10)
not_added_file = file_system.create_file(file_name="test_file", file_size=10)
assert len(file_system.get_folders()) is 1
folder_id = list(file_system.get_folders().keys())[0]
folder = file_system.get_folder_by_id(folder_id)
assert folder.get_file(file.uuid) is file
file_system.delete_file(file=not_added_file)
assert len(file_system.get_folders()) is 1
assert len(file_system.get_folder_by_id(folder.uuid).get_files()) is 1
def test_delete_folder():
@@ -44,6 +66,16 @@ def test_delete_folder():
assert len(file_system.get_folders()) is 0
def test_deleting_a_non_existent_folder():
file_system = FileSystem()
folder = file_system.create_folder(folder_name="test_folder")
not_added_folder = FileSystemFolder(item_name="fake_folder")
assert len(file_system.get_folders()) is 1
file_system.delete_folder(not_added_folder)
assert len(file_system.get_folders()) is 1
def test_move_file():
"""Tests the file move function."""
file_system = FileSystem()
@@ -89,9 +121,9 @@ def test_serialisation():
assert len(file_system.get_folders()) is 1
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_folder_by_id(folder.uuid) is folder
serialised_file_sys = file_system.model_dump_json()
deserialised_file_sys = FileSystem.model_validate_json(serialised_file_sys)
assert file_system == deserialised_file_sys
assert file_system.model_dump_json() == deserialised_file_sys.model_dump_json()

View File

@@ -20,4 +20,4 @@ def test_serialisation():
serialised_file = file.model_dump_json()
deserialised_file = FileSystemFile.model_validate_json(serialised_file)
assert file == deserialised_file
assert file.model_dump_json() == deserialised_file.model_dump_json()

View File

@@ -18,6 +18,22 @@ def test_adding_removing_file():
assert len(folder.get_files()) is 0
def test_remove_non_existent_file():
"""Test the removing of a file that does not exist."""
folder = FileSystemFolder(item_name="test")
file = FileSystemFile(item_name="test_file", item_size=10, file_type=FileSystemFileType.DOC)
not_added_file = FileSystemFile(item_name="fake_file", item_size=10, file_type=FileSystemFileType.DOC)
folder.add_file(file)
assert folder.get_folder_size() == 10
assert len(folder.get_files()) is 1
folder.remove_file(not_added_file)
assert folder.get_folder_size() == 10
assert len(folder.get_files()) is 1
def test_get_file_by_id():
"""Test to make sure that the correct file is returned."""
folder = FileSystemFolder(item_name="test")
@@ -56,4 +72,4 @@ def test_serialisation():
deserialised_folder = FileSystemFolder.model_validate_json(serialised_folder)
assert folder == deserialised_folder
assert folder.model_dump_json() == deserialised_folder.model_dump_json()

View File

@@ -42,8 +42,8 @@ class TestIsolatedSimComponent:
return {}
comp = TestComponent(name="computer", size=(5, 10))
dump = comp.model_dump()
assert dump["name"] is "computer"
dump = comp.model_dump_json()
assert comp == TestComponent.model_validate_json(dump)
def test_apply_action(self):
"""Validate that we can override apply_action behaviour and it updates the state of the component."""