mirror of
https://github.com/Citadel-Station-13/Citadel-Station-13-RP.git
synced 2025-12-10 19:12:07 +00:00
* move phoronlock define * t * force rename * nuke unneeded things * don't do that * tgui sync? * changes * unit testing module * backend * tools update * aaah * go and stay go * path replace * move everything * toss out more stuff * remove * fine those can stay * dependencies.sh * ruin datum move + rename * level assets why did you guys put the turfs in my atmosphers folder grr * more moving * basemap, force stuff * fix that desync meme * move more stuff * move those too * repath * get rid of useless initializers * hacky patchy * reservations * alright * tgui * changelog example * checksum * md5 * errors * more * turf empty * stop * fix * bad kwarg * let's get those in again * alright * rid of that * huh * newlines * newlines * folder * mood * woops * readme * might as well trim now * let's go * fuck it tether isn't being used anyways lol * ok * empty files go * tether is demoted * sorry but this goes too * okay * make that work too * ok * wow. * whew * Fix * fixes * ok * sigh * fix * fix * aah. * rust_g logging * update rust g file * fix * funny * Fix * map issues * fix * initialize hints * solves some problems * those too * ok * pills * let's do that. * hit that too * runtime * add that too * alright * fix * fix * fix * Fix * add * fix * wildwest, what have they done to you... * do that too' git push * fixes * fixes * fixes * pack this tightly * let's not have empty files * sigh * fix * FUCK OFF * fix icon * rip old mapmerge * zz * woo yeah woo yeah * logging * fix * better logs * GRRRRRR * last commit?? * awful
32 lines
1.8 KiB
Plaintext
32 lines
1.8 KiB
Plaintext
/// Test that quick swap correctly swaps items and invalidates suit storage
|
|
/datum/unit_test/quick_swap_sanity/Run()
|
|
// Create a human with a medical winter coat and a health analyzer in suit storage
|
|
var/mob/living/carbon/human/human = allocate(/mob/living/carbon/human)
|
|
|
|
var/obj/item/coat = allocate(/obj/item/clothing/suit/hooded/wintercoat/medical)
|
|
TEST_ASSERT(human.equip_to_slot_if_possible(coat, ITEM_SLOT_OCLOTHING), "Couldn't equip winter coat")
|
|
|
|
var/obj/item/analyzer = allocate(/obj/item/healthanalyzer)
|
|
TEST_ASSERT(human.equip_to_slot_if_possible(analyzer, ITEM_SLOT_SUITSTORE), "Couldn't equip health analyzer")
|
|
|
|
// Then, have them quick swap between the coat and a space suit
|
|
var/obj/item/hardsuit = allocate(/obj/item/clothing/suit/space/hardsuit)
|
|
TEST_ASSERT(human.equip_to_appropriate_slot(hardsuit, swap = TRUE), "Couldn't quick swap to hardsuit")
|
|
|
|
// Check if the human has the hardsuit on
|
|
TEST_ASSERT_EQUAL(human.wear_suit, hardsuit, "Human didn't equip the hardsuit")
|
|
|
|
// Make sure the health analyzer was dropped as part of the swap
|
|
// Since health analyzers are an invalid suit storage item
|
|
TEST_ASSERT_EQUAL(human.s_store, null, "Human didn't drop the health analyzer")
|
|
|
|
// Give the human an emergency oxygen tank
|
|
// This is valid suit storage for both the winter coat AND the hardsuit
|
|
var/obj/item/tank = allocate(/obj/item/tank/internals/emergency_oxygen)
|
|
TEST_ASSERT(human.equip_to_slot_if_possible(tank, ITEM_SLOT_SUITSTORE), "Couldn't equip emergency oxygen tank")
|
|
|
|
// Now, quick swap back to the coat
|
|
// Since the tank is a valid suit storage item, it should not be dropped
|
|
TEST_ASSERT(human.equip_to_appropriate_slot(coat, swap = TRUE), "Couldn't quick swap to coat")
|
|
TEST_ASSERT_EQUAL(human.s_store, tank, "Human dropped the oxygen tank, when it was a valid item to keep in suit storage")
|