Merge pull request #212 from Excello-Recherche-Education/unit-test-log-resource

Unit test LogResource
This commit is contained in:
Adrien Ufferte
2026-02-03 10:56:36 +01:00
committed by GitHub
3 changed files with 28 additions and 1 deletions
@@ -1,7 +1,7 @@
class_name LogResource
extends Resource
@export var logs: Dictionary = {} # int: Dictionary {String: Dictionary}
@export var logs: Dictionary[int, Dictionary] = {} # First key is lesson number, second key is time
func add_log(lesson_nb: int, new_log: Dictionary, time: String) -> void:
+26
View File
@@ -0,0 +1,26 @@
extends GutTest
func test_add_log_creates_bucket_and_stores_entry() -> void:
var resource: LogResource = LogResource.new()
var payload: Dictionary = {"score": 10}
resource.add_log(1, payload, "2024-01-01T00:00:00")
assert_true(resource.logs.has(1))
assert_true(resource.logs[1].has("2024-01-01T00:00:00"))
assert_eq_deep(resource.logs[1]["2024-01-01T00:00:00"] as Dictionary, payload)
func test_add_log_duplicate_time_creates_incremented_key() -> void:
var resource: LogResource = LogResource.new()
resource.add_log(2, {"value": 1}, "2024-02-02T12:00:00")
resource.add_log(2, {"value": 2}, "2024-02-02T12:00:00")
resource.add_log(2, {"value": 3}, "2024-02-02T12:00:00")
var lesson_logs: Dictionary = resource.logs[2]
assert_true(lesson_logs.has("2024-02-02T12:00:00"))
assert_true(lesson_logs.has("2024-02-02T12:00:00_2"))
assert_true(lesson_logs.has("2024-02-02T12:00:00_3"))
assert_eq_deep(lesson_logs["2024-02-02T12:00:00"] as Dictionary, {"value": 1})
assert_eq_deep(lesson_logs["2024-02-02T12:00:00_2"] as Dictionary, {"value": 2})
assert_eq_deep(lesson_logs["2024-02-02T12:00:00_3"] as Dictionary, {"value": 3})
assert_engine_error(2, "2 warnings are expected here, 1 for each log duplicate")
@@ -0,0 +1 @@
uid://dn66mnnx7s61c