mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-10 09:42:29 +00:00
* Splits placeontop proc (#79702) ## About The Pull Request I find the proc hard to read honestly. There's no reason we can't split this into two functions - the secondary functionality is used only once, in reader.dmm. ## Why It's Good For The Game Code improvement Glorious snake case ## Changelog N/A nothing player facing --------- Co-authored-by: san7890 <34697715+san7890@ users.noreply.github.com> * Splits placeontop proc * Update brass_spreader.dm --------- Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> Co-authored-by: san7890 <34697715+san7890@ users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
77 lines
3.6 KiB
Plaintext
77 lines
3.6 KiB
Plaintext
#define EXPECTED_FLOOR_TYPE /turf/open/floor/iron
|
|
// Do this instead of just ChangeTurf to guarantee that baseturfs is completely default on-init behavior
|
|
#define RESET_TO_EXPECTED(turf) \
|
|
turf.ChangeTurf(EXPECTED_FLOOR_TYPE);\
|
|
turf.assemble_baseturfs(initial(turf.baseturfs))
|
|
|
|
/// Validates that unmodified baseturfs tear down properly
|
|
/datum/unit_test/baseturfs_unmodified_scrape
|
|
|
|
/datum/unit_test/baseturfs_unmodified_scrape/Run()
|
|
// What this is specifically doesn't matter, just as long as the test is built for it
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, EXPECTED_FLOOR_TYPE, "run_loc_floor_bottom_left should be an iron floor")
|
|
|
|
RESET_TO_EXPECTED(run_loc_floor_bottom_left)
|
|
run_loc_floor_bottom_left.ScrapeAway()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, /turf/open/floor/plating, "Iron floors should scrape away to plating")
|
|
|
|
run_loc_floor_bottom_left.ScrapeAway()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, /turf/open/space, "Plating should scrape away to space")
|
|
|
|
run_loc_floor_bottom_left.ScrapeAway()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, /turf/open/space, "Space should scrape away to space")
|
|
|
|
/datum/unit_test/baseturfs_unmodified_scrape/Destroy()
|
|
RESET_TO_EXPECTED(run_loc_floor_bottom_left)
|
|
return ..()
|
|
|
|
/// Validates that specially placed baseturfs tear down properly
|
|
/datum/unit_test/baseturfs_placed_on_top
|
|
|
|
/datum/unit_test/baseturfs_placed_on_top/Run()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, EXPECTED_FLOOR_TYPE, "run_loc_floor_bottom_left should be an iron floor")
|
|
|
|
// Do this instead of just ChangeTurf to guarantee that baseturfs is completely default on-init behavior
|
|
RESET_TO_EXPECTED(run_loc_floor_bottom_left)
|
|
|
|
run_loc_floor_bottom_left.place_on_top(/turf/closed/wall/rock)
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, /turf/closed/wall/rock, "Rock wall should've been placed on top")
|
|
|
|
run_loc_floor_bottom_left.ScrapeAway()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, EXPECTED_FLOOR_TYPE, "Rock wall should've been scraped off, back into the expected type")
|
|
|
|
/datum/unit_test/baseturfs_placed_on_top/Destroy()
|
|
RESET_TO_EXPECTED(run_loc_floor_bottom_left)
|
|
return ..()
|
|
|
|
/// Validates that specially placed baseturfs BELOW tear down properly
|
|
/datum/unit_test/baseturfs_placed_on_bottom
|
|
|
|
/datum/unit_test/baseturfs_placed_on_bottom/Run()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, EXPECTED_FLOOR_TYPE, "run_loc_floor_bottom_left should be an iron floor")
|
|
|
|
// Do this instead of just ChangeTurf to guarantee that baseturfs is completely default on-init behavior
|
|
RESET_TO_EXPECTED(run_loc_floor_bottom_left)
|
|
|
|
run_loc_floor_bottom_left.place_on_bottom(/turf/closed/wall/rock)
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, EXPECTED_FLOOR_TYPE, "PlaceOnBottom shouldn't have changed turf")
|
|
|
|
run_loc_floor_bottom_left.ScrapeAway()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, /turf/open/floor/plating, "Iron floors should scrape away to plating")
|
|
|
|
run_loc_floor_bottom_left.ScrapeAway()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, /turf/open/space, "Plating should've scraped off to space")
|
|
|
|
run_loc_floor_bottom_left.ScrapeAway()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, /turf/closed/wall/rock, "Space should've scraped down to a rock wall")
|
|
|
|
run_loc_floor_bottom_left.ScrapeAway()
|
|
TEST_ASSERT_EQUAL(run_loc_floor_bottom_left.type, /turf/open/floor/plating, "Rock wall should've scraped down back to plating (because it's a wall)")
|
|
|
|
/datum/unit_test/baseturfs_placed_on_bottom/Destroy()
|
|
RESET_TO_EXPECTED(run_loc_floor_bottom_left)
|
|
return ..()
|
|
|
|
#undef RESET_TO_EXPECTED
|
|
#undef EXPECTED_FLOOR_TYPE
|