Skip to content

Update 27NOV24

Update 27NOV24 #1086

Status Failure
Total duration 12m 39s
Artifacts 22

ci_suite.yml

on: pull_request
Start Gate
0s
Start Gate
Collect data for other tasks
13s
Collect data for other tasks
Matrix: Integration Tests
Matrix: Alternate Tests
Compare Screenshot Tests
0s
Compare Screenshot Tests
Completion Gate
3s
Completion Gate
Fit to window
Zoom out
Zoom in

Annotations

111 errors and 1 warning
Runtime Station: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Alternate Tests (515, 1627, runtimestation) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
Runtime Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:02:18] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:18] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:18] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:18] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:02:18] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:02:18] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:18] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:02:18] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (runtimestation) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
Runtime Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:02:10] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:10] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:10] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:10] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:02:10] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:02:10] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:10] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Runtime Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:02:10] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MultiZ Debug: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (multiz_debug) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
MultiZ Debug: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:02:26] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MultiZ Debug: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:26] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MultiZ Debug: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:26] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MultiZ Debug: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:26] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MultiZ Debug: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:02:26] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MultiZ Debug: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:02:26] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MultiZ Debug: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:26] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MultiZ Debug: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:02:26] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Ice Box Station: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (icebox) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
Ice Box Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:02:42] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Ice Box Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:42] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Ice Box Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:42] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Ice Box Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:42] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Ice Box Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:02:42] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Ice Box Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:02:42] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Ice Box Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:42] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Ice Box Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:02:42] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Birdshot Station: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (birdshot) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0.1s
Birdshot Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:02:41] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Birdshot Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:41] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Birdshot Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:41] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Birdshot Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:41] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Birdshot Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:02:41] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Birdshot Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:02:41] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Birdshot Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:41] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Birdshot Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:02:41] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Tramstation: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (tramstation) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
Tramstation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:03:01] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Tramstation: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:03:01] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Tramstation: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:03:01] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Tramstation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:03:01] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Tramstation: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:03:01] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Tramstation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:03:01] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Tramstation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:03:01] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Tramstation: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:03:01] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MetaStation: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (metastation) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
MetaStation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:02:59] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MetaStation: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:59] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MetaStation: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:02:59] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MetaStation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:59] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MetaStation: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:02:59] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MetaStation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:02:59] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MetaStation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:02:59] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
MetaStation: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:02:59] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Wawastation: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (wawastation) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
Wawastation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:03:08] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Wawastation: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:03:08] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Wawastation: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:03:08] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Wawastation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:03:08] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Wawastation: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:03:08] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Wawastation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:03:08] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Wawastation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:03:08] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Wawastation: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:03:08] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Delta Station: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (deltastation) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
Delta Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:03:03] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Delta Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:03:03] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Delta Station: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:03:03] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Delta Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:03:03] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Delta Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:03:03] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Delta Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:03:03] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Delta Station: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:03:03] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Delta Station: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:03:03] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
NebulaStation: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (nebulastation) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
NebulaStation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:03:26] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
NebulaStation: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:03:26] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
NebulaStation: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:03:26] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
NebulaStation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:03:26] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
NebulaStation: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:03:26] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
NebulaStation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:03:26] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
NebulaStation: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:03:26] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
NebulaStation: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:03:26] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Gateway Test: /datum/unit_test/dropper_use: code/modules/unit_tests/dropper.dm#L15
Expected 0 to be equal to 5. Dropper should have taken 5 units of reagents from the beaker.
Integration Tests (gateway_test) / run_integration_tests
FAIL /datum/unit_test/dropper_use 0s
Gateway Test: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L169
[04:04:03] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,169: External organ /datum/bodypart_overlay/mutant/tail/mouse had fetch_sprite_datum called with a null accessory name! proc name: fetch sprite datum from name (/datum/bodypart_overlay/mutant/proc/fetch_sprite_datum_from_name) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): fetch sprite datum from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Gateway Test: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:04:03] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): set appearance from name(null) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): on mob insert(the mouse tail (/obj/item/organ/tail/mouse), John Doe (/mob/living/carbon/human/consistent)) the mouse tail (/obj/item/organ/tail/mouse): SendSignal("organ_implanted", /list (/list)) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): on mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): mob insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Gateway Test: /datum/unit_test/organ_sanity: code/modules/surgery/organs/external/tails.dm#L156
[04:04:03] Runtime in code/modules/surgery/organs/external/tails.dm,156: Cannot read null.icon_state proc name: get base icon state (/datum/bodypart_overlay/mutant/tail/get_base_icon_state) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get base icon state() /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): generate icon cache() the human chest (/obj/item/bodypart/chest): generate icon key() John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Gateway Test: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:04:03] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Gateway Test: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L643
[04:04:03] Runtime in modular_doppler/modular_customization/preferences/tail.dm,643: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Gateway Test: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/bodypart_overlay.dm#L30
[04:04:03] Runtime in code/datums/bodypart_overlays/bodypart_overlay.dm,30: Cannot read null.icon proc name: get overlay (/datum/bodypart_overlay/proc/get_overlay) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-6, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(1, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Gateway Test: /datum/unit_test/organ_sanity: code/datums/bodypart_overlays/mutant_bodypart_overlay.dm#L74
[04:04:03] Runtime in code/datums/bodypart_overlays/mutant_bodypart_overlay.dm,74: Trying to call get_image() on /datum/bodypart_overlay/mutant/tail/mouse while it didn't have a sprite_datum. This shouldn't happen, report it as soon as possible. proc name: get image (/datum/bodypart_overlay/mutant/get_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get image(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Gateway Test: /datum/unit_test/organ_sanity: modular_doppler/modular_customization/preferences/tail.dm#L649
[04:04:03] Runtime in modular_doppler/modular_customization/preferences/tail.dm,649: Cannot modify null.color. proc name: color image (/datum/bodypart_overlay/mutant/tail/color_image) src: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse) call stack: /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): color image(null, -5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(-5.99, the human chest (/obj/item/bodypart/chest)) /datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse): get overlay(2, the human chest (/obj/item/bodypart/chest)) the human chest (/obj/item/bodypart/chest): get limb icon(null) John Doe (/mob/living/carbon/human/consistent): update body parts(null) the human chest (/obj/item/bodypart/chest): add bodypart overlay(/datum/bodypart_overlay/mutant... (/datum/bodypart_overlay/mutant/tail/mouse), 1) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest), null) the mouse tail (/obj/item/organ/tail/mouse): on bodypart insert(the human chest (/obj/item/bodypart/chest)) the mouse tail (/obj/item/organ/tail/mouse): bodypart insert(the human chest (/obj/item/bodypart/chest), John Doe (/mob/living/carbon/human/consistent), 1) the mouse tail (/obj/item/organ/tail/mouse): Insert(John Doe (/mob/living/carbon/human/consistent), 1, 1) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): organ test insert(/obj/item/organ/tail/mouse (/obj/item/organ/tail/mouse)) /datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity): Run() RunUnitTest(/datum/unit_test/organ_sanity (/datum/unit_test/organ_sanity), /list (/list)) RunUnitTests() /datum/callback (/datum/callback): InvokeAsync()
Completion Gate
Process completed with exit code 1.
Run Linters
OD0000: Unimplemented proc & var warnings are currently suppressed (This is expected and can be ignored)

Artifacts

Produced during runtime
Name Size
test_artifacts_birdshot__ Expired
149 KB
test_artifacts_deltastation__ Expired
149 KB
test_artifacts_gateway_test__ Expired
149 KB
test_artifacts_icebox__ Expired
149 KB
test_artifacts_metastation__ Expired
149 KB
test_artifacts_multiz_debug__ Expired
149 KB
test_artifacts_nebulastation__ Expired
149 KB
test_artifacts_runtimestation_515_1627 Expired
149 KB
test_artifacts_runtimestation__ Expired
149 KB
test_artifacts_tramstation__ Expired
149 KB
test_artifacts_wawastation__ Expired
149 KB