def test_send_message_from_domain_client_to_vm() -> None: # Register a 🍰 with a 📱 # Register a 📱 with a 🏰 # Send ✉️ from 🏰 ➡️ 🍰 bob_vm = sy.VirtualMachine(name="Bob") bob_vm_client = bob_vm.get_client() bob_vm.root_verify_key = bob_vm_client.verify_key # inject 📡🔑 as 📍🗝 bob_phone = sy.Device(name="Bob's iPhone") bob_phone_client = bob_phone.get_client() bob_phone.root_verify_key = bob_phone_client.verify_key # inject 📡🔑 as 📍🗝 bob_phone_client.register(client=bob_vm_client) assert bob_vm.device is not None assert bob_vm_client.device is not None bob_domain = sy.Domain(name="Bob's Domain") bob_domain_client = bob_domain.get_client() bob_domain.root_verify_key = bob_domain_client.verify_key # inject 📡🔑 as 📍🗝 # switch keys bob_vm.root_verify_key = bob_domain_client.verify_key # inject 📡🔑 as 📍🗝 bob_domain_client.register(client=bob_phone_client) assert bob_phone.domain is not None assert bob_phone_client.domain is not None bob_domain_client.send_immediate_msg_without_reply(msg=sy.ReprMessage( address=bob_vm.address))
async def test_client_from_metadata() -> None: domain = sy.Domain(name="duet") client_metadata = domain.get_metadata_for_client() spec_location, name, id = sy.DomainClient.deserialize_client_metadata_from_node( metadata=client_metadata.serialize()) assert domain.domain == spec_location assert name == "duet" assert id == domain.id