mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-10 17:52:36 +00:00
* Wraps all instances of invoking Fail() into the TEST_FAIL Macro (#73407) We shouldn't really be invoking the proc itself because then we don't pass along the failing line/file to our consumers, let's use the macro in all instances that really need it. I noticed people were invoking the `Fail()` proc directly rather than using `TEST_FAIL` instead, so they weren't getting those neat annotations on their failing code because we never passed along the failing line/file to actually apply those annotations. That's silly. We don't even return on `TEST_FAIL` either, so there's no reason to not do this (only upsides wahoo). * Wraps all instances of invoking Fail() into the TEST_FAIL Macro * Correct macro in opfor unit test --------- Co-authored-by: san7890 <the@san7890.com> Co-authored-by: Tastyfish <crazychris32@gmail.com>
22 lines
906 B
Plaintext
22 lines
906 B
Plaintext
#define DATUM_PATH_LEN 33
|
|
|
|
///Checks that all OPFOR items have an `item_type` associated with them
|
|
/datum/unit_test/opfor_items
|
|
|
|
/datum/unit_test/opfor_items/Run()
|
|
var/list/subtype_pre = subtypesof(/datum/opposing_force_equipment)
|
|
var/list/compiled_subtypes = list()
|
|
for(var/datum/opposing_force_equipment/opfor as anything in subtype_pre)
|
|
var/path_string = "[opfor]"
|
|
var/partially_cut = splicetext(path_string, 1, DATUM_PATH_LEN, "") // now looks like `parent` or `parent/opforitem`
|
|
var/result_cut = splicetext(partially_cut, 1, findtext(partially_cut, "/"), "") // now will just be /opforitem
|
|
if(!findtext(result_cut, "/"))
|
|
continue
|
|
compiled_subtypes += opfor
|
|
|
|
for(var/datum/opposing_force_equipment/opfor_item as anything in compiled_subtypes)
|
|
if(!initial(opfor_item.item_type))
|
|
TEST_FAIL("Opposing Force equipment datum [opfor_item] lacks an `item_type`.")
|
|
|
|
#undef DATUM_PATH_LEN
|