def test_VacuumEnvironment(): # Initialize Vacuum Environment v = VacuumEnvironment(6, 6) #Get an agent agent = ModelBasedVacuumAgent() agent.direction = Direction(Direction.R) v.add_thing(agent) v.add_thing(Dirt(), location=(2, 1)) # Check if things are added properly assert len([x for x in v.things if isinstance(x, Wall)]) == 20 assert len([x for x in v.things if isinstance(x, Dirt)]) == 1 #Let the action begin! assert v.percept(agent) == ("Clean", "None") v.execute_action(agent, "Forward") assert v.percept(agent) == ("Dirty", "None") v.execute_action(agent, "TurnLeft") v.execute_action(agent, "Forward") assert v.percept(agent) == ("Dirty", "Bump") v.execute_action(agent, "Suck") assert v.percept(agent) == ("Clean", "None") old_performance = agent.performance v.execute_action(agent, "NoOp") assert old_performance == agent.performance
def test_ModelBasedVacuumAgent(): # create an object of the ModelBasedVacuumAgent agent = ModelBasedVacuumAgent() # create an object of TrivialVacuumEnvironment environment = TrivialVacuumEnvironment() # add agent to the environment environment.add_thing(agent) # run the environment environment.run() # check final status of the environment assert environment.status == {(1, 0): 'Clean', (0, 0): 'Clean'}