From 55fb2abc7e9f181609b41f135579b3a03fb2b08e Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Wed, 28 Sep 2022 16:04:47 +0200 Subject: [PATCH] [MIRROR] Adds a unit test for dupe planes [MDB IGNORE] (#16489) * Adds a unit test for dupe planes (#70129) * Adds a unit test for dupe planes Co-authored-by: Time-Green Co-authored-by: Tastyfish --- code/modules/unit_tests/_unit_tests.dm | 1 + code/modules/unit_tests/plane_dupe_detector.dm | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 code/modules/unit_tests/plane_dupe_detector.dm diff --git a/code/modules/unit_tests/_unit_tests.dm b/code/modules/unit_tests/_unit_tests.dm index 4f0298c36cc..3572b413dfb 100644 --- a/code/modules/unit_tests/_unit_tests.dm +++ b/code/modules/unit_tests/_unit_tests.dm @@ -130,6 +130,7 @@ #include "outfit_sanity.dm" #include "paintings.dm" #include "pills.dm" +#include "plane_dupe_detector.dm" #include "plantgrowth_tests.dm" #include "preference_species.dm" #include "preferences.dm" diff --git a/code/modules/unit_tests/plane_dupe_detector.dm b/code/modules/unit_tests/plane_dupe_detector.dm new file mode 100644 index 00000000000..c5d8d54e44f --- /dev/null +++ b/code/modules/unit_tests/plane_dupe_detector.dm @@ -0,0 +1,12 @@ +///Checks if we don't have two planes on the same layer +/datum/unit_test/plane_dupe_detector + +/datum/unit_test/plane_dupe_detector/Run() + var/list/plane_integer_list = list() + for(var/atom/movable/screen/plane_master/plane_path as anything in subtypesof(/atom/movable/screen/plane_master)) + if(!initial(plane_path.plane)) + continue + if(plane_integer_list.Find("[initial(plane_path.plane)]")) + var/atom/movable/screen/plane_master/duplicate_plane_path = plane_integer_list["[initial(plane_path.plane)]"] + TEST_FAIL("PLANE CONFLICT DETECTED!! The [initial(plane_path.name)] and [initial(duplicate_plane_path.name)] both use plane [initial(plane_path.plane)].") + plane_integer_list["[initial(plane_path.plane)]"] = plane_path