def test_island(resourcepath): success, world_uid = micropsi.new_world("Misland", "Island", owner="tester") assert success world = runtime.worlds[world_uid] assert world.__class__.__name__ == 'Island' runtime.add_worldobject(world_uid, "Lightsource", (10, 10), uid='foobar', name='foobar', parameters={}) runtime.save_world(world_uid) runtime.revert_world(world_uid) world = runtime.worlds[world_uid] assert world.objects["foobar"].__class__.__name__ == 'Lightsource' assert world.objects["foobar"].position == [10, 10] assert world.data['objects']['foobar']['position'] == [10, 10] assert world.__class__.__name__ == 'Island' runtime.set_worldobject_properties(world_uid, "foobar", position=(5, 5)) assert world.objects["foobar"].position == (5, 5) assert world.data['objects']['foobar']['position'] == (5, 5) assert runtime.get_world_view(world_uid, -1)['objects']['foobar']['position'] == (5, 5) runtime.delete_world(world_uid)
def test_get_worldobjects(test_world): runtime.add_worldobject(test_world, "Default", (10, 10), uid='foobar', name='foobar', parameters={}) objects = runtime.get_world_objects(test_world) assert 'foobar' in objects runtime.save_world(test_world) runtime.revert_world(test_world) objects = runtime.get_world_objects(test_world) assert 'foobar' in objects
def test_add_worldobject(test_world): world = runtime.get_available_worlds()[test_world] runtime.add_worldobject(test_world, "Default", (10, 10), uid='foobar', name='foobar', parameters={}) assert "foobar" in world.data['objects'] assert "foobar" in world.objects runtime.save_world(test_world) runtime.revert_world(test_world) assert "foobar" in world.data['objects'] assert "foobar" in world.objects
def test_register_agent(test_world, test_nodenet): world = runtime.worlds[test_world] nodenet = runtime.get_nodenet(test_nodenet) assert nodenet.uid not in world.data['agents'] runtime.load_nodenet(test_nodenet) nodenet.world = world runtime.set_nodenet_properties(nodenet.uid, worldadapter='Braitenberg', world_uid=world.uid) assert nodenet.uid in world.data['agents'] assert nodenet.uid in world.agents runtime.save_world(test_world) runtime.revert_world(test_world) assert nodenet.uid in world.data['agents'] assert nodenet.uid in world.agents
def test_register_agent(test_world, test_nodenet): world = runtime.worlds[test_world] nodenet = runtime.get_nodenet(test_nodenet) assert nodenet.uid not in world.data['agents'] runtime.load_nodenet(test_nodenet) nodenet.world = test_world runtime.set_nodenet_properties(nodenet.uid, worldadapter='Braitenberg', world_uid=world.uid) assert nodenet.uid in world.data['agents'] assert nodenet.uid in world.agents runtime.save_world(test_world) runtime.revert_world(test_world) assert nodenet.uid in world.data['agents'] assert nodenet.uid in world.agents
def save_world(world_uid): return runtime.save_world(world_uid)
def save_world(world_uid): """ Persist the current world state""" return runtime.save_world(world_uid)