Test - Arena

Für folgende Testfälle wurden Roboter geschrieben und die Reaktion der Arena getestet:
Die Roboter sind größtenteils Modifikationen des LessStupid Roboters, welcher ohne MindMap handelt, also seine Bewegungsrichtung zufällig wählt.

Für getCommand():

AbstractRobotAction:
  • ExchangeAction
    • NullExchanger: gibt als Karte die er austauschen möchte, NULL zurück.
      Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen.
    • WrongCardExchanger: versucht eine Karte abzugeben, die er nicht hat.
      Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen.
    • WrongFieldExchanger: ruft ExchangeAction auf, wenn auf dem vor ihm liegenden Feld keine Karte liegt.
      Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen.
  • MoveAction
    • AlwaysMover: gibt unabhängig vom Feld vor ihm MoveAction zurück.
      Reaktion der Arena: Wenn der Roboter gegen andere Roboter, Wände oder Karten läuft, wird ihm Energie abgezogen.
  • PickUpAction
    • AlwaysPickUp: versucht immer Karten aufzunehmen.
      Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen, wenn vor ihm keine Karte liegt.
    • TooManyPickUp: nimmt auch mehr als fünf Karten auf.
      Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen, wenn er versucht mehr als fünf Karten aufzunehmen.
  • PutAction
    • NullPutter: gibt als abzulegende Karte Null an.
      Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen.
    • WrongCardPutter: versucht eine Karte abzulegen, die er nicht hat.
      Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen.
    • WrongFieldPutter: versucht eine Karte auf ein belegtes Feld zu legen.
      Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen.
  • RotateAction
    • Wurde zwischenzeitlich auch mit negativen Zahlen getestet, was im Interface abgefangen wird.
Weiterhin wurde mit dem Move12s Roboter getestet, wie die Arena auf zu spät übermittelte Rückgaben auf getCommand() reagiert. In diesen Fällen wird der Roboter zur Disqualifikation vorgeschlagen.

Für exchangePoposal():
  • CardExPropNull: Roboter gibt als Rückgabewert immer NULL an.
    Reaktion der Arena: Es findet kein Kartentausch statt.
  • WrongCardReturner: Roboter gibt eine Karte zurück, die er nicht besitzt.
    Reaktion der Arena: Roboter wird zur Disqualifikation vorgeschlagen.
Weiterhin wurde mit den Robotern Exok_ExProp12s, Exok12s und TooLateProposal getestet, wie die Arena auf zu späte Rückgaben der Anfragen exchangeProposal und/oder exchangeOk reagiert. Dabei hat die Arena Roboter, die das 10 Sekunden Zeitlimit überschritten, zur Disqualifkation vorgeschlagen.