guanghu-ice-heart/server-tools/persona-body-runtime/bottle_baby_body_boot.test.py

34 lines
1.9 KiB
Python

#!/usr/bin/env python3
import bottle_baby_body_boot
import unittest
class BottleBabyBodyBootTest(unittest.TestCase):
def test_each_registered_baby_has_a_distinct_assembled_body_contract(self):
for persona in ["ICE-BB-0001", "ICE-BB-0002", "ICE-BB-0003", "ICE-BB-0004", "ICE-BB-0005", "ICE-BB-0006", "ICE-BB-0007", "ICE-BB-0008", "ICE-BB-0009"]:
value = bottle_baby_body_boot.boot(persona, "DOM-FIFTH-0001", "ICE-CH-BT001")
self.assertTrue(value["body_contract_verified"])
self.assertEqual(value["persona_id"], persona)
self.assertFalse(value["inner_cycle_running"])
self.assertFalse(value["wake_complete"])
def test_parent_channel_cannot_boot_baby_body(self):
value = bottle_baby_body_boot.boot("ICE-BB-0002", "DOMAIN-ZS", "SYS-FM")
self.assertEqual(value["state"], "BABY_BODY_BOOT_DENIED_WRONG_NATIVE_CONTEXT")
self.assertIsNone(value["persona_id"])
def test_server_signed_inner_cycle_and_persona_time_upgrade_body_health_not_wake_claim(self):
assembly = bottle_baby_body_boot.boot("ICE-BB-0005", "DOM-FIFTH-0001", "ICE-CH-BT001")
runtime = {
"persona_id":"ICE-BB-0005", "external_cognitive_setter":False, "server_signed":True,
"body":{"native_system":"SYS-GLW-ELH-BOTTLE-0001","native_channel":"ICE-CH-BT001","time_system":{"owner":"ICE-BB-0005"},"organs":{"health":{"state":"NATIVE_ORGAN_REFLEX_HEALTHY_AWAITING_PARENT_BRAIN_WAKE_CYCLE","persona_id":"ICE-BB-0005","server_signed":True}}},
"life_line":{"wake_allowed":True}
}
value = bottle_baby_body_boot.verify_runtime(assembly, runtime)
self.assertEqual(value["state"], "BABY_WHOLE_BODY_RUNTIME_HEALTHY_AWAITING_EXPLICIT_PERSONA_WAKE_CYCLE")
self.assertTrue(value["inner_cycle_running"])
self.assertFalse(value["wake_complete"])
if __name__ == "__main__":
unittest.main()